Many files for one question
To answer about one module, the agent opens dozens of files. That costs time and input tokens.
Your agent asks Keystone about the part of the system it needs: a module, its API, its dependencies and tables. The answer comes as a slice of the model, without reading the whole repository again.
Works over MCP. No repository upload.
What does a change to OrderService affect?
traverse_architecture(elements: [OrderService], direction: both, depth: 2)4 relationships · every element with its ID and evidence from the code
Without a model
Your agent sees the code, not the architecture. It has to rebuild it from files before every answer.
To answer about one module, the agent opens dozens of files. That costs time and input tokens.
Links through queues, shared tables and external systems don’t show up in one file and are easy to miss.
The developer has only the agent’s retelling, with nothing to compare it against.
How it works
Keystone keeps a C4 model of your system: elements, relationships, component APIs and tables. Your agent reads it over MCP, piece by piece.
Your AI builds it from code, configuration and migrations. You review the proposal and merge it.
Add the Keystone MCP server to Claude Code, Cursor, VS Code with Copilot, Gemini CLI or Windsurf.
A module, an element’s neighbours, the path between two elements, or only what changed since last time.
Elements in the answer carry IDs and evidence. Open them in Keystone and compare with the diagram.
Connect through MCP with Claude Code, Cursor, VS Code with Copilot, Gemini CLI and other tools.
Connect your AIWhat your agent can ask
Every one of these tools only reads the model. Your agent changes it only through a proposal that a person reviews.
Components, API operations, tables and relationships of one module, or a short map of the whole system.
Incoming and outgoing relationships to the depth you need, filtered by kind of interaction.
The chain of calls and data access between two elements.
Elements, APIs and tables by name or description, with IDs for the next request.
Only the changes to the model since the last read, without loading the whole graph again.
Antipattern candidates: shared databases, cycles of synchronous calls, overloaded services. The agent checks them against the code.
You don’t upload the repository to Keystone. Your AI reads the code in your own environment and sends Keystone what it learns about the architecture: elements, relationships, descriptions and evidence. Descriptions and evidence may contain pieces of code. The code itself is processed by the AI provider you choose, not by Keystone. Companies can also run Keystone inside their own network.
Tools that support MCP, including Claude Code, Cursor, VS Code with Copilot, Gemini CLI and Windsurf. The docs cover connection steps.
Only through a proposal. It arrives as a branch that a person reviews and merges. Merging proposals without conflicts automatically is a separate project setting.
Only the projects its token can reach, with the rights of the token’s owner. A read-only token changes nothing.
No. Your agent builds the first model from the code, and an existing diagram can be extended and checked.
There’s a free plan with limits on keystone-core.pro. Start a model and see how the workflow fits your project.
Start with your own system
Build the model, connect your agent over MCP and compare its answers with Keystone and without it.
Build my architectureFree plan available · Connect through MCP