mcpField
S
Schemity

Schemity

VerifiedFeaturedLocal
schemity.comDatabases0Updated 5d ago

About Schemity

Schemity is a local database-design app with an MCP server for engineers and agents working with database schemas and migrations. It analyzes migration impact without running SQL and stages diagram edits for human review; agents never receive database credentials or write to a database.

Key features

  1. 01Read schemas without exposing row data
  2. 02Analyze migration files before execution
  3. 03Assess data loss, locks, and dependent objects
  4. 04Stage diagram edits for review and undo
  5. 05Lint schemas and inspect dependencies
  6. 06Preview pending changes in Schemity

Use cases

  1. 01Check a migration file before running it
  2. 02Understand a table's relations and dependencies
  3. 03Review proposed schema changes safely
  4. 04Organize tables and diagram relationships

MCP support

The MCP server is built into the Schemity desktop app and connects to MCP hosts through stdio or local Streamable HTTP. It exposes schema inspection, migration analysis, and staged diagram-editing tools; it does not run agent-written SQL.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

Schemity MCP Server

A local database MCP server built into Schemity, database design software for software engineers. Your AI agent reads the schema of your live PostgreSQL, MySQL, MariaDB, SQL Server, SQLite, or Snowflake database, sees what a migration would do before it runs, and stages diagram edits you review. The agent never gets database credentials, and nothing it does writes to a database.

The server ships inside the Schemity desktop app, which is closed source. This repository holds its documentation, the tool list it exposes (tools.json), and ready-to-paste host configs (examples/). Bug reports and feature requests go to schemity-feedback.

Why a governed path

Most database MCP servers hand the agent a connection string and run whatever SQL it writes. Schemity works the other way round: the agent works through the diagram you have open, which Schemity read from your database.

  • Reads never change anything.
  • Edits are staged in the open diagram as unsaved changes, recorded in undo history under the agent's name, for you to review and undo before you save.
  • Nothing touches a database until you run the migration yourself.
  • No vendor cloud in the middle. The HTTP server listens on 127.0.0.1 only and requires a bearer token kept in your OS keychain; stdio hosts talk to the app over a local socket. Your schema goes only where your agent host already sends your code, and with a local model it stays on your machine.

Tools

18 tools, as of Schemity 2.13.2. None of them runs SQL the agent writes, and none returns a row. Full input schemas are in tools.json.

list_diagrams

The diagrams open in Schemity right now, with the active tab marked. Read-only.

find_diagrams

Every saved diagram, open or not, matched by name, database, or workspace, best match first. Read-only.

open_diagram

Open a saved diagram in a new tab, or bring it to the front. Opening one with a database may ask for your OS keychain password.

open_schemity

Start Schemity, or bring it to the front.

get_schema

Tables, columns, keys, checks, and indexes of a diagram or one context view, plus your naming convention and the template new tables start with. No row data. Read-only.

get_dependencies

Relations into and out of one table, with the columns on both sides. Read-only.

get_context_views

Context views, the dependencies between them, cycles, and which dependencies are not declared as foreign keys. Read-only.

get_data_dictionary

The documented schema as Markdown, descriptions included. Read-only.

lint

Schema findings: conventions, missing indexes, type mismatches. Read-only.

get_pending_changes

The diagram's unsaved edits, as the undo history that produced them. Read-only.

analyze_impact

What the pending migration would cost: lost data, statements that fail on existing rows, table rewrites, locks on large tables, dependent views and functions. SQL only on request, never run. Read-only.

analyze_migration_file

The same analysis for a migration file, hand-written or generated by Prisma, Alembic, or Flyway. Parsed, never run. Read-only.

count_rows

An exact count behind a finding, as a SELECT COUNT with a 60-second timeout, only when you ask for it.

show_preview

Draw pending edits, a migration file, or a set of tables in Schemity for you to look at, with the findings; nothing is saved.

propose_changes

Create, change, and delete tables, columns, relations, constraints, indexes, legends, and context views. Staged as unsaved edits you review; deleting anything you made asks you first.

group_entities

Group tables into legends by domain, from your source code or your description. Staged as unsaved edits you review.

route_relations

Route relation lines around the tables so they cross less. Staged as unsaved edits you review.

check_relation_lines

Relation lines that overlap or cross, and how many bends they take. Read-only.

Example prompts

Ask in plain words. Your agent host gives the model every tool with its description, and the model calls Schemity's when the request fits one. Saying "in Schemity", "the diagram" or a diagram's name makes that clear; in a code repository, "add a status column" alone may send the agent to your model files instead.

  • "Which diagrams do I have open in Schemity?"
  • "Open my Coffee Shop diagram."
  • "Explain the schema in the current diagram. What are the main domains?"
  • "What depends on the orders table?"
  • "Arrange the current diagram: group the tables by domain, using this codebase to decide the groups."
  • "Untangle the relation lines in the Billing diagram."
  • "Show me the changes in the Coffee Shop diagram."
  • "What would my unsaved changes cost if I migrate?"
  • "Check migrations/0042_add_status.sql against the shop database before I run it."
  • "Add a loyalty_points table to the diagram, linked to customers."

Databases

PostgreSQL, Supabase, MySQL, MariaDB, SQL Server, and SQLite, directly or through an SSH tunnel, and Snowflake.

Setup

  1. Install Schemity on macOS, Windows, or Linux.
  2. Open the diagram you want the agent to see, or let the agent find and open a saved one with find_diagrams and open_diagram.
  3. Open the MCP panel from the plug icon in the control bar, or with Cmd+Shift+A (macOS) / Ctrl+Shift+A (Windows, Linux). It shows the server status, a connection test, and a snippet for each host with the right path for your platform.

The examples below use the macOS path. On Windows and Linux, copy the snippet from the MCP panel instead.

stdio: Claude Code, Claude Desktop, Codex, OpenCode

The host starts the Schemity binary with --mcp, so it can also launch Schemity when the app is closed.

Claude Code

claude mcp add --scope user schemity -- "/Applications/Schemity.app/Contents/MacOS/schemity" --mcp

Claude Desktop - claude_desktop_config.json, then restart Claude Desktop

{
  "mcpServers": {
    "schemity": {
      "command": "/Applications/Schemity.app/Contents/MacOS/schemity",
      "args": ["--mcp"]
    }
  }
}

Codex - ~/.codex/config.toml

[mcp_servers.schemity]
command = "/Applications/Schemity.app/Contents/MacOS/schemity"
args = ["--mcp"]

OpenCode - opencode.json

{
  "mcp": {
    "schemity": {
      "type": "local",
      "command": ["/Applications/Schemity.app/Contents/MacOS/schemity", "--mcp"]
    }
  }
}
Streamable HTTP: Cursor and other HTTP clients

Keep Schemity open; an HTTP host cannot start it. The port defaults to 7332 and can be changed in the panel.

Cursor - ~/.cursor/mcp.json

{
  "mcpServers": {
    "schemity": {
      "url": "http://127.0.0.1:7332/mcp",
      "headers": { "Authorization": "Bearer <token from the MCP panel>" }
    }
  }
}

Troubleshooting

  • "Schemity is not running" - only a stdio host can start the app. On an HTTP host such as Cursor, open Schemity yourself and retry.
  • 401 Unauthorized - the token was regenerated in the panel; copy the current one into the host's config.
  • Port in use - pick another port in the panel and click Restart.
  • A tool says a diagram is "not open" - ask the agent to open it with open_diagram, or open it in the Schemity window yourself.

Requirements and pricing

The MCP server is a desktop feature. It runs during the 2-week free trial (every feature unlocked, no credit card) and with a license, a one-time purchase of $129. It is not part of Schemity Lite, the free browser version.

Links

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.