Deterministic SQL compiler for AI agents. Your agent stops guessing SQL.
Most database access work still happens through a UI a human drives. Boyce MCP server moves it into the conversation instead. Deterministic SQL compiler for AI agents. Your agent stops guessing SQL.
Named for Raymond F. Boyce, co-inventor of SQL (1974) and co-author of Boyce-Codd Normal Form (BCNF).
The server publishes 8 tools. What each one is for:
ingest_source — Parse a SemanticSnapshot from dbt manifest, dbt project, LookML, DDL, SQLite, Django, SQLAlchemy, Prisma, CSV, or Parquetingest_definition — Store a certified business definition — injected automatically at query timeget_schema — Return full schema context + StructuredFilter format docs. Used by MCP hosts so the host LLM can construct queries without a Boyce API keyask_boyce — Full NL → SQL pipeline: query planner (LiteLLM) → deterministic kernel → NULL trap check → EXPLAIN pre-flightvalidate_sql — Validate hand-written SQL — EXPLAIN pre-flight, Redshift lint, NULL risk — without executingquery_database — Execute a read-only SELECT against the live database. Write operations rejected at two independent layersprofile_data — Null %, distinct count, min/max for any column — surface data quality issues before they affect query resultscheck_health — Operational health check — DB connectivity, snapshot freshness, actionable fix commands. Call when queries fail unexpectedlyThe server ships on PyPI as boyce, so your MCP client can launch it on demand — there is no separate build step. Add the server block to your client's configuration, restart it, and the tools register themselves.
Configuration is passed through the environment: BOYCE_DB_URL, BOYCE_PROVIDER, BOYCE_MODEL, ANTHROPIC_API_KEY, OPENAI_API_KEY, BOYCE_HTTP_TOKEN. Treat anything key-shaped as a real credential — scope it to the minimum the server needs, and rotate it if it ever lands in a shared config.
This sits in the database access group, where several servers overlap in what they claim to do but differ sharply once you actually set them up. Boyce's toolset — ingest_source, ingest_definition, get_schema and 5 more — is a fair guide to whether it matches your workflow. It is maintained by boyce-io; worth a glance at recent repository activity before you build anything load-bearing on it.
We check each listing at SyncDev against the project's documentation before it goes live — if something here drifts out of date, it is a bug worth reporting.
| Tool | What it does |
|---|---|
| ingest_source | Parse a SemanticSnapshot from dbt manifest, dbt project, LookML, DDL, SQLite, Django, SQLAlchemy, Prisma, CSV, or Parquet. |
| ingest_definition | Store a certified business definition — injected automatically at query time. |
| get_schema | Return full schema context + StructuredFilter format docs. Used by MCP hosts so the host LLM can construct queries without a Boyce API key. |
| ask_boyce | Full NL → SQL pipeline: query planner (LiteLLM) → deterministic kernel → NULL trap check → EXPLAIN pre-flight. |
| validate_sql | Validate hand-written SQL — EXPLAIN pre-flight, Redshift lint, NULL risk — without executing. |
| query_database | Execute a read-only SELECT against the live database. Write operations rejected at two independent layers. |
| profile_data | Null %, distinct count, min/max for any column — surface data quality issues before they affect query results. |
| check_health | Operational health check — DB connectivity, snapshot freshness, actionable fix commands. Call when queries fail unexpectedly. |
{
"mcpServers": {
"boyce": {
"command": "uvx",
"args": ["boyce"],
"env": {
"BOYCE_DB_URL": "your-value",
"BOYCE_PROVIDER": "your-value",
"BOYCE_MODEL": "your-value",
"ANTHROPIC_API_KEY": "your-value",
"OPENAI_API_KEY": "your-value",
"BOYCE_HTTP_TOKEN": "your-value"
}
}
}
}Add to claude_desktop_config.json, then restart Claude Desktop.
| Variable | Description | Required |
|---|---|---|
| BOYCE_DB_URL | Endpoint or connection string the server talks to. | Yes |
| BOYCE_PROVIDER | Configuration value read at startup. | Optional |
| BOYCE_MODEL | Configuration value read at startup. | Optional |
| ANTHROPIC_API_KEY | Credential the server authenticates with. | Yes |
| OPENAI_API_KEY | Credential the server authenticates with. | Yes |
| BOYCE_HTTP_TOKEN | Credential the server authenticates with. | Yes |
Read-only SQL access to Postgres — let your assistant inspect schemas and answer questions from real data.
Manage your whole Supabase project in conversation — database, auth, storage, Edge Functions and branches.
Query, modify and analyse local SQLite databases in conversation — the fastest way to chat with a data file.
Metabase ships its own MCP endpoint — search your BI content, build and run queries, and save questions and dashboards without leaving the chat.
Official MongoDB server covering data, schemas and Atlas management — from find queries to spinning up clusters.
Serverless Postgres with database branching — point your assistant at Neon and let it work on disposable copies.