Deterministic local cross-service API-chain discovery for AI coding agents.
Ariadne MCP Server (io.github.whyy9527/ariadne)
Ariadne is a deterministic local cross-service API-chain discovery server for AI coding agents. It targets code navigation and code intelligence across microservices, including static analysis and call-graph generation. The project is associated with GraphQL (Apollo), Kafka, and tools/languages such as Spring Boot and TypeScript, exposed via an MCP server interface.
🛠️ Key Features
Deterministic local cross-service API-chain discovery
Cross-service code navigation and code intelligence
Includes concepts such as call-graph and static-analysis
Uses/mentions GraphQL (Apollo-GraphQL) and Kafka
Topics include MCP server, code-navigation, microservices, call-graph, and apollo-graphql
🚀 Use Cases
Discover API chains across microservice boundaries
Support AI coding agents with better service-to-service context
Assist static analysis workflows using call-graph style data
⚡ Developer Benefits
Deterministic discovery for local workflows
Focus on cross-service understanding for developer tooling
Compatible with MCP server consumption patterns
⚠️ Limitations
Available details are limited to the provided excerpt; no additional runtime behavior or tool list is included here.
Ariadne's thread — a way out of the microservice maze.
Cross-service API dependency graph for Spring Boot + TypeScript
microservice stacks. MCP stdio server for AI coding assistants
(Claude Code, Cursor, Windsurf), with a CLI twin. Local SQLite + TF-IDF.
Zero ML dependencies.
Ariadne demo — scan Spring PetClinic microservices and ask "owner"
70-second deterministic terminal walkthrough. Reproduce it from
docs/demo.tape.
What it does
Indexes the contract layer — GraphQL mutations, REST endpoints, Kafka
topics, frontend queries. Nothing else. That's why results fit an AI
context window.
Ask Claude "where does createOrder live across the stack?" and
query_chains returns:
The response is intentionally bounded for an AI context window. See the
reproducible public-stack benchmark for measured retrieval,
serialized token, and timing results against rg and grep.
Current public-stack benchmark (48 reviewed queries across Spring REST,
GraphQL/TypeScript, Kafka, and FastAPI):
Clones spring-petclinic-microservices into
~/.cache/ariadne-mcp/demo, scans it, and prints the top cluster for
owner — a real cross-service call chain. No config file, no workspace
setup.
Did Ariadne find the chain you expected? Share one minute of
structured feedback. Ariadne sends no usage data automatically;
the form opens only when you choose to submit it.
Scanners are inferred from each repo's top-level files
(pom.xml / build.gradle / package.json / SDL). See
docs/CONFIG.md for the detection table and override
syntax.
Reproducible public samples
Each sample pins an upstream commit, scans real service source, runs one query,
and verifies manually reviewed node IDs:
The command evaluates top-k hit rate and MRR using a stable internal candidate
depth, and exits non-zero when a configured threshold fails. Add
--feedback-db .ariadne/feedback.db to include local feedback reranking in the
eval.