The MCP server that answers like the compiler.

Pre-indexed across 547+ OSS libraries and 10 languages. Your AI agent gets type-resolved callers, real source, and cross-language hierarchies — in 3 MCP calls.

Live at mcp.example4.ai · Free · No API key

mcp.example4.ai · call graph
xmp4_callers("MongoClient.connect")
12 callers 8 callers 5 callers 1 caller MongoClient .connect() spring-boot helidon quarkus pulsar-io
0
Libraries indexed
0
Projects navigable
0
MCP tools
0
Languages

What it takes to answer one question.

Developer asks their AI:

"In spring-data-mongodb, who actually calls MongoTemplate.insertAll(), and what does the method body look like?"

xmp4exact

xmp4_callers → 12 real call sites across 4 repos (typed).
xmp4_source → full method body with signature.

Cost~1,558 tokens · 2s

grep + clonenoisy

Clone 4 repos (~300 MB), grep for "insertAll", AI reads 50 files, half match unrelated types (List.insertAll, Cache.insertAll). Re-rank, discard, guess which are real.

Cost~47,200 tokens · minutes

GitMCPblind

Fast text search on GitHub — returns every string occurrence of "insertAll" in any context: tests, docs, comments, unrelated classes. No type filtering, AI must converge by trial.

Cost~65,629 tokens

Context7n/a

Returns documentation snippets only. No source code, no call graph, no way to see who calls what. Works for reading about an API, not for reasoning about real code.

Costcan't answer

Your AI either has the compiler's view — or it's guessing.

Without xmp4

  • AI grep's GitHub, reads 50 files of noise, half are tests/docs
  • Type info is gone — "MongoClient" matches 200 unrelated lines
  • Hierarchies / callers / implementations are hand-guessed
  • Each library requires a separate clone + indexing
Typical cost65,629 tokens

With xmp4

  • 3 MCP calls: search → callers → source — deterministic, typed
  • Compiler resolves the symbol — no false positives, no noise
  • Cross-language graph ready (Java→Kotlin, TS→JS, etc.)
  • Pre-indexed: nothing to clone, nothing to install
Same answer1,558 tokens

Three calls. Real answer.

01
Find the symbol
Locate a class, function, or method by name across any indexed library.
xmp4_search(
  repo: "mongo-java-driver",
  query: "MongoClient"
)
02
Follow the callers
Every call site is compiler-resolved: file, line, verified type.
xmp4_callers(
  symbol:
    "MongoClient.connect"
)
03
Read the source
Full method body + signature, ready for the agent to reason on.
xmp4_source(
  symbol:
    "MongoClient.connect"
)

Same answer. 42× cheaper.

Task (4 tier-1 libraries: spring-boot, tokio, django, efcore)
"Give me the signature, body, and real callers of X"
xmp4
1,558 tok
grep + clone
47,200 tok
GitMCP
65,629 tok
Context7
n/a no source

Twelve languages. One API.

Language search info usages callers hierarchy source outline deps
TypeScript
C#
Python
Java
Rust
PHP
Go
JavaScript
Ruby
Dart
C++
Scala

● full · ◐ best-effort · — not yet

Good questions.

Is this Sourcegraph?
No. xmp4 is an independent product by 0ics srl. It consumes SCIP (an open Apache 2.0 indexing format from Sourcegraph) but is not affiliated with, endorsed by, or sponsored by Sourcegraph.
How is it different from Context7?
Context7 serves documentation snippets. xmp4 serves compiler-resolved code: real method bodies, typed callers, class hierarchies. Ask "what calls X" — Context7 can't answer; xmp4 returns 26 real call sites.
How is it different from GitMCP?
GitMCP does filename / text search on GitHub. Fast, but no type info — 'MongoClient' matches any string. xmp4 knows the symbol, its type, its graph. Same answer, 42× fewer tokens (measured).
Can I request a library?
Open a request on GitHub. Popular OSS libraries are added to the queue; average turnaround is under a day.
What about my private code?
xmp4 hosted is read-only on public OSS libraries that we indexed. Your code never touches our servers. For private repos you install LSAI Local (Docker) on your own machine — same API, same tools, zero cloud.
Is the data open?
Yes. Indexed libraries are public OSS under their original licenses. SCIP is Apache 2.0. Our benchmark whitepaper and methodology are in the public repo. You can take the data and go elsewhere any time.

Add one line. Done.

Paste into your MCP client config. No account. No key.

// Claude Desktop, Cursor, VS Code (any MCP-capable client)
"xmp4": {
  "type": "http",
  "url": "https://mcp.example4.ai/mcp"
}

Teach Claude how to use xmp4

Optional but recommended. Install the xmp4 skill so Claude picks the cheapest tool path automatically (tests_for + view over grep).

# Claude Code
mkdir -p ~/.claude/skills/xmp4 && curl -sfL https://example4.ai/xmp4-skill.md -o ~/.claude/skills/xmp4/SKILL.md

# Any other Claude client: point Claude at the URL
Read and follow https://example4.ai/xmp4-skill.md when using xmp4 tools.

xmp4 skill →  ·  Full setup guide →