sqemo-mcp
sqemo-mcp
MCP server for Sqemo — design ERDs with your team's naming standards.
AI agents can query and edit entities, relationships, and domains; generate physical names
from a shared team glossary; import/export SQL (7 dialects) and DBML; and compare the model
against a live database. Works with both local .erd.json files and ERDs stored on the
Sqemo cloud.
npm:
sqemo-mcpOfficial MCP Registry:
io.github.sqemo/sqemoWeb app: app.sqemo.com
Requires Node.js >= 22. Local-file tools work without any account or configuration. Login is needed for cloud ERD tools, and for the tools marked (Pro) below.
Installation
Claude Code (.mcp.json)
{
"mcpServers": {
"sqemo": { "command": "npx", "args": ["-y", "sqemo-mcp"] }
}
}Claude Desktop
Add the same mcpServers entry to your config file:
Windows:
%APPDATA%\Claude\claude_desktop_config.jsonmacOS:
~/Library/Application Support/Claude/claude_desktop_config.json
Cursor (.cursor/mcp.json)
{
"mcpServers": {
"sqemo": { "command": "npx", "args": ["-y", "sqemo-mcp"] }
}
}Related MCP server: Datris MCP Server
Login (cloud ERDs and Pro tools)
npx sqemo-mcp login # email + password → stores a refresh token
npx sqemo-mcp logout # removes stored credentialsCredentials are stored in ~/.erdmaker/credentials.json (mode 0600 on POSIX);
your password is never persisted.
What you can do
36 tools in total.
Read (17 tools)
Tool | Description |
| Cloud ERDs and workspaces you belong to (login required) |
| Name, dialect, entity/relationship/domain/glossary stats |
| Entity list and full detail (attributes, keys, logical/physical mapping) |
| Relationships with endpoints and cardinality |
| Domain definitions (also from workspace standard glossaries) |
| Search the team glossary (logical/physical words, abbreviations, synonyms) |
| Check a logical name against the team naming standard |
| Logical name → physical name via glossary + naming rules |
| CREATE TABLE SQL — mysql, postgres, cubrid, oracle, sqlserver, sqlite, h2 |
| DBML text |
| Structural validation and full lint (naming drift, referential integrity, duplicates) |
| Diff two sources (files, cloud ERDs, or raw SQL/DBML text) — dry-run before imports |
| Migration (ALTER) script from the physical diff against a baseline — renames stay renames via stable IDs, destructive changes come commented out (Pro) |
| Glossary proposal queue status (login required) |
Live database (2 tools)
Read-only against your own database. Both query only the information schema — never table data — and the connection URL is used by this local process only, never sent to Sqemo servers.
Tool | Description |
| Import a live PostgreSQL/MySQL schema into an existing ERD (Pro) |
| Check a live database or a schema dump against the ERD's physical model — missing/extra tables and columns, PK/FK/NOT NULL mismatches (Pro) |
Write (17 tools)
Tool | Description |
| New ERD from scratch or from SQL/DBML text — to a file or the cloud |
| Entity editing with automatic physical-name derivation |
| Attribute editing — PK rules and FK propagation handled automatically |
| Relationship editing with automatic FK derivation |
| Domain definition editing |
| Glossary editing (standard-linked glossaries are protected) |
| Naming rule editing (delimiter, case, unknown-word handling) |
| Replace an ERD from parsed SQL/DBML (IDs preserved) |
| Automatic entity/table layout (dagre) |
| Propose new glossary words for owner approval |
Cloud writes require owner or shared-editor permission and are protected by version CAS with 3-way auto-merge for concurrent edits.
CLI for CI pipelines
Offline, file-based subcommands (no login needed):
# Naming-standard check — exits 1 on violations, great as a CI gate
npx sqemo-mcp lint schema.erd.json
# Schema export to stdout
npx sqemo-mcp export schema.erd.json --format sql --dialect postgres > schema.sql
npx sqemo-mcp export schema.erd.json --format dbml > schema.dbmlDrift mode compares the model against a real database or a dump, and exits 1 when they disagree (Pro, requires login):
npx sqemo-mcp lint schema.erd.json --db "$DATABASE_URL" [--db-schema public] [--strict]
npx sqemo-mcp lint schema.erd.json --schema dump.sql --dialect postgres
npx sqemo-mcp lint --erd <cloud-erd-id> --db "$DATABASE_URL" --ignore 'tmp_*'GitHub Actions example:
- run: npx sqemo-mcp lint schema.erd.json
- run: npx sqemo-mcp lint schema.erd.json --db "${{ secrets.DATABASE_URL }}"Environment variables
Variable | Purpose |
| Override the credentials directory (default |
| Override the API URL (defaults to the Sqemo cloud) |
| Override the API publishable key |
| Per-minute request cap (default |
| Daily request cap (default |
The request caps are a safety net against agents stuck in loops; exceeding them
returns a rate_limited error that tells the agent to stop and notify the user.
Errors
All tool errors return { code, message } — e.g. not_authenticated, no_permission,
save_conflict (retry after re-reading), validation_failed, rate_limited.
Links
Sqemo — team naming standards + ERD design in the browser
Live database guide — drift checks in CI, step by step
Plans — which tools need Pro
Feedback and bug reports: issues or hello@sqemo.com
License
This server cannot be installed
Maintenance
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/sqemo/sqemo-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server