ErdDocs / docs
ERD MCP server
The ErdDocs MCP server lets an AI coding agent open an ER diagram of your database. Ask Claude Code, Cursor, Codex or VS Code to show the schema, and the agent passes the schema text to one tool, open_er_diagram. It gets back a link to an interactive diagram and a data dictionary on erddocs.com. It reads SQL dumps, Prisma, ORM models and Laravel migrations. There is no account and no API key, and the schema is not stored: it travels inside the link.
Server URL
https://erddocs.com/mcp
Streamable HTTP, no authentication. Any client that can add a remote MCP server by URL can use it.
Add it to your agent
Claude Code
One command. Add --scope user to have it in every project.
claude mcp add --transport http erddocs https://erddocs.com/mcp
Cursor
In .cursor/mcp.json for one project, or ~/.cursor/mcp.json for all of them.
{
"mcpServers": {
"erddocs": { "url": "https://erddocs.com/mcp" }
}
}Codex
One command, or the same server in ~/.codex/config.toml.
codex mcp add erddocs --url https://erddocs.com/mcp # or in ~/.codex/config.toml [mcp_servers.erddocs] url = "https://erddocs.com/mcp"
VS Code
In .vscode/mcp.json, for GitHub Copilot in agent mode.
{
"servers": {
"erddocs": { "type": "http", "url": "https://erddocs.com/mcp" }
}
}Claude and Claude Desktop
As a custom connector: Customize, then Connectors, then Add custom connector. Paste the URL and choose No sign-in. On the Free plan, one custom connector is allowed.
https://erddocs.com/mcp
Then ask for a diagram
“Show me an ER diagram of this project’s database.” The agent finds the schema, whether that is schema.prisma, models.py, the migrations folder or a dump, and calls the tool:
open_er_diagram({
schema: "model User {\n id Int @id\n posts Post[]\n}\n..."
})ER diagram ready (Prisma, about 2 tables): https://erddocs.com/#sql=v1.H4sIAAAAAAAAA…&src=mcp
The link opens the diagram with every table laid out and every relation drawn. Relations without a declared foreign key are found by column name and drawn dashed. One click away is the data dictionary, every table, column, type, default and relation as a printable document.
FAQ
What does the agent send, and what is kept?
The agent sends the schema text to erddocs.com/mcp. The server compresses it into a link and answers. It does not parse the schema, write it anywhere or log it. The only thing counted is that a call happened, the format it was in and roughly how many tables it had. When your user opens the link, the schema is parsed in their browser, the same way a pasted one is.
Which schemas does it read?
Everything the site reads: SQL, Prisma, DBML, Mermaid, PlantUML, Django, SQLAlchemy, Sequelize, TypeORM and Laravel. The format is detected automatically. For SQL, the structure is enough, so pg_dump --schema-only or mysqldump --no-data is what to give it.
What happens with a large schema?
A link holds a schema of a few dozen tables before it gets too long for chats and address bars to carry. Northwind’s 13 tables take 1,400 characters; a 68-table schema with comments on every column needs 38,000, past the 32,000 a link can safely be. For a bigger schema the tool says so and points the user to erddocs.com, where the file is pasted or dropped in and parsed in the browser. Nothing is cut off silently.
Does it need an account or a key?
No. The link it returns opens the same tool as erddocs.com, with the same free limit of 25 tables in full and the data dictionary under a one-time license.
How is this different from the Agent Link?
It makes the same link. The Agent Link is the format an agent can build itself in three lines of code. The MCP server is for agents that should not have to know the format: they call one tool and get the link back.
Machine-readable summary of the whole site: /llms.txt