Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Map API endpoints, outbound HTTP calls, and cross-repo service topology in indexed source code. Use when the user asks about API endpoints, HTTP routes, fetch/client calls, REST surface, service dependencies, cross-repo dependencies, or API topology. Do not use Grep, Glob, rg, find, or manual file search for routes or HTTP calls; Memtrace maps endpoints and call edges from the indexed AST graph.
.claude/skills/syncable-dev-memtrace-api-topology/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-10 | ✗→✓ | ▲ Improved | -3% | 0% |
| case-04 | ✗→✓ | ▲ Improved | -38% | 0% |
| case-05 | ✗→✓ | ▲ Improved | 10% | 0% |
| case-06 | ✗→✓ | ▲ Improved | -50% | 0% |
| case-07 | ✗→✓ | ▲ Improved | -61% | 0% |
Map HTTP API surface — endpoints, outbound calls, cross-repo topology.
| Tool | Required | Key optional | |------|----------|--------------| | find_api_endpoints | repo_id | method, path_contains, limit, branch | | find_api_calls | repo_id | method, path_contains, limit, branch | | get_api_topology | — | repo_id, min_confidence, include_external |
Full parameter spec for every Memtrace tool: references/mcp-parameters.md (bundled at the memtrace-skills plugin root).
json{ "repo_id": "memdb" } { "repo_id": "memdb", "method": "GET", "path_contains": "/users" } { "min_confidence": 0.7 }
Use handler symbol name — not symbol ID:
json{ "repo_id": "memdb", "symbol": "handleGetUsers" }
| Result | Carries | |--------|---------| | Endpoint entry (find_api_endpoints) | HTTP method, route path, handler symbol name (feed to get_symbol_context as symbol) | | Call entry (find_api_calls) | HTTP method, target path, calling symbol | | Topology edge (get_api_topology) | caller repo → handler repo, confidence 0.0–1.0 (edges below min_confidence dropped) |
| Mistake | Reality | |---------|---------| | get_symbol_context(symbol_id=...) | Use symbol (name) + repo_id | | Cross-repo links with one repo indexed | Index all services; use link_repositories if needed |
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→fail | 4,719 | 4,852 | +3% | 1 | 1 | 0% | 519 | 709 | +37% | 0 | 0 | — |
case-10 | fail→pass | 4,723 | 2,380 | -50% | 1 | 1 | 0% | 754 | 735 | -3% | 0 | 0 | — |
case-02 | fail→fail | 15,256 | 4,036 | -74% | 1 | 1 | 0% | 2,290 | 759 | -67% | 0 | 0 | — |
case-03 | fail→fail | 3,862 | 4,977 | +29% | 1 | 1 | 0% | 177 | 686 | +288% | 0 | 0 | — |
case-04 | fail→pass | 8,967 | 2,900 | -68% | 1 | 1 | 0% | 1,333 | 830 | -38% | 0 | 0 | — |
case-05 | fail→pass | 5,318 | 3,791 | -29% | 1 | 1 | 0% | 816 | 899 | +10% | 0 | 0 | — |
case-06 | fail→pass | 15,735 | 7,769 | -51% | 1 | 1 | 0% | 2,182 | 1,101 | -50% | 0 | 0 | — |
case-07 | fail→pass | 14,379 | 2,919 | -80% | 1 | 1 | 0% | 2,446 | 949 | -61% | 0 | 0 | — |
case-08 | fail→fail | 11,760 | 3,254 | -72% | 1 | 1 | 0% | 1,693 | 756 | -55% | 0 | 0 | — |
case-09 | fail→pass | 11,768 | 2,726 | -77% | 1 | 1 | 0% | 1,877 | 889 | -53% | 0 | 0 | — |
case-11 | fail→pass | 11,084 | 2,707 | -76% | 1 | 1 | 0% | 1,858 | 865 | -53% | 0 | 0 | — |
case-12 | fail→pass | 12,795 | 2,813 | -78% | 1 | 1 | 0% | 2,212 | 875 | -60% | 0 | 0 | — |
case-13 | fail→pass | 14,808 | 3,861 | -74% | 1 | 1 | 0% | 2,457 | 1,090 | -56% | 0 | 0 | — |
case-14 | fail→pass | 15,129 | 2,535 | -83% | 1 | 1 | 0% | 2,436 | 818 | -66% | 0 | 0 | — |
case-15 | fail→pass | 11,177 | 2,248 | -80% | 1 | 1 | 0% | 2,004 | 799 | -60% | 0 | 0 | — |
case-16 | fail→pass | 14,524 | 3,957 | -73% | 1 | 1 | 0% | 2,563 | 1,039 | -59% | 0 | 0 | — |
case-17 | fail→pass | 14,609 | 7,710 | -47% | 1 | 1 | 0% | 2,333 | 1,723 | -26% | 0 | 0 | — |
case-18 | fail→pass | 7,192 | 2,688 | -63% | 1 | 1 | 0% | 1,190 | 778 | -35% | 0 | 0 | — |
case-19 | fail→pass | 6,870 | 3,840 | -44% | 1 | 1 | 0% | 1,298 | 900 | -31% | 0 | 0 | — |
case-20 | pass→pass | 11,520 | 9,228 | -20% | 1 | 1 | 0% | 2,074 | 2,009 | -3% | 0 | 0 | — |
case-21 | pass→pass | 13,821 | 11,078 | -20% | 1 | 1 | 0% | 2,372 | 2,480 | +5% | 0 | 0 | — |
case-22 | pass→pass | 10,649 | 5,813 | -45% | 1 | 1 | 0% | 2,016 | 1,467 | -27% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted, and 19 counted toward the lift figure. The other 3 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of +68 percentage points is the difference between those two pass rates over the 19 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.