Releases: meob/mcp-blueprint
Release list
v0.6.0 — Simplified Engine Model
Breaking Changes
- Removed tool-level
enginesfield andsqlmap (multi-engine) fromToolMetadata.sqlis now always a plain string path; engine filtering happens exclusively at pack level. enginesis now required inpack.yaml(at least one engine must be declared). Packs withoutpack.yamlare skipped.- Removed
applies_to()andsql_for()methods (replaced by directsqlattribute access). - Removed
engineparameter fromload_tool_from_file()andload_tools_from_dir().
Added
- GitHub Pages website (
website/index.html): blue-themed landing page with sections for problem statement, quickstart, architecture, packs, enterprise features, benchmark results, and arXiv paper link. - GitHub Actions workflow (
.github/workflows/pages.yml) for automatic deployment fromwebsite/directory on push tomain.
Documentation
- Updated
docs/pack_development.md,docs/faq.md,template/README.md,ARCH.md,DECISIONS.mdto reflect the simplified model.
Full benchmark
Verticalized packs score 0.939 pooled mean accuracy vs 0.666 for raw SQL and 0.605 for generic tool packs. Cost per correct answer improves 2–12×.
v0.5.0
0.5.0 - 2026-08-16
Added
packs/smoke, a zero-dependency deployment check pack that runs on an
in-memory SQLite database (no server, no driver, no seed data):
smoke_ping,smoke_get_server_status,smoke_fortuneand
smoke_horoscope.config/smoke.yamlruns it through the pack allowlist,
tests/test_pack_smoke.pyexercises every tool and stays green in CI, and
docs/smoke.mddocuments the deployment checks and a failure guide.
Changed
- Unit tests now run on Python 3.12 and 3.14 in CI; Python 3.14 is advertised
in package metadata.
v0.4.0
[0.4.0] - 2026-08-11
Changed
- Breaking: upgraded the MCP Python SDK from v1 to v2 (
mcp>=2,<3). The
FastMCP integration is now the v2MCPServer:AuditedFastMCPbecame
AuditedMCPServer, transport parameters (host,port) moved off the
server constructor torun_streamable_http_async(), and protocol field
access is snake_case. The v2 server speaks both the 2025-era and 2026-07-28
revisions, so existing clients keep working. - Pydantic floor raised to
>=2.12to match the SDK v2 dependency.
v0.2.1
v0.2.1 — patch release (fixes only)
- Sizes in bytes: the DBA packs now report raw byte counts in a single
size_bytescolumn across all six engines; the engine-specific human-readablesize/size_mbstrings (pg_size_pretty(),FORMAT(),ROUND(...) || ' MB',formatReadableSize()) were removed (decision D14). - CI repaired and green on all jobs: bumped
actions/checkout@v5andastral-sh/setup-uv@v7(Node 24, dropping the Node.js 20 deprecation warning), fixed the folded unit-test command, and auto-created the log directory so integration jobs pass on a fresh checkout. get_connectionstest is now environment-independent (no longer assumes a client session exists).
Changelog: CHANGELOG.md
mcp-blueprint v0.2.0
Overview
mcp-blueprint turns a database into a set of domain-oriented MCP tools. A
server is described entirely by packs — YAML tool metadata plus SQL files —
with no Python code required. This first release ships the complete
framework: six database engines, a fail-closed security model, observability,
Docker stacks and a full documentation suite.
Framework
- Pack-driven design: a pack is just
pack.yaml+ one YAML per tool + one SQL
file per query; tools are discovered automatically. - Security: every tool is read-only by default, enforced at load time and
at runtime (fail-closed, singleSELECT/WITH...SELECT); writes are
opt-in viawrites: true. Jinja2 templates allow{% if %}control flow
but reject{{ }}interpolation — values reach the database only as bound
placeholders. - Transports: stdio and Streamable HTTP.
- Per-server pack allowlist (
server.packs) and engine-based pack
filtering (engines:inpack.yaml), with engine aliases
(postgres,mssql,sql_server). - Pack
instructionsare surfaced in every tool description and in the server
instructions, so a pack can guide the agent's tool usage. - Result caching (
cache.ttl), result formatting (format.rename,
format.hidden), row caps (server.max_rows). - KPI status convention (
kpi_name, current_value, unit, suggested_threshold, status) for diagnostic dashboards. - Observability: structured logging, audit log, per-call
trace_id,
sensitive-value redaction, optional Prometheus metrics endpoint. - Multi-engine tool sharing via
sqlmaps keyed by engine.
Engines and packs
Six reference DBA packs expose the same 13 tools across engines:
pg-dba— PostgreSQL 14+mysql-dba— MySQL 8+oracle-dba— Oracle 12c+clickhouse-dba— ClickHouse 23+sqlserver-dba— SQL Server 2016+mariadb-dba— MariaDB 10.4+
Plus the sakila domain pack (film recommendations and rental checks) as the
reference example for building domain packs.
Docker
docker-compose.yaml— PostgreSQL + thepg-dbaserver over Streamable HTTP.docker-compose.databases.yaml— one container per optional engine (Oracle,
ClickHouse, SQL Server, MariaDB) with least-privilege monitoring accounts.
Documentation
- Installation, quick start, Docker and pack-development guides.
- New: custom-server tutorial (fork vs dependency
model, upgrade strategy), best practices and a
FAQ. - New:
examples/customers— a complete CRM example
pack with schema, seed data and a KPI dashboard.
Getting started
git clone https://github.com/meob/mcp-blueprint.git
cd mcp-blueprint
uv sync --all-extras --dev
uv run blueprint list-tools --config config
uv run blueprint serve --config config --transport stdio204 tests pass (7 integration tests skipped when a local database is
unreachable).