SQL Benchmarks Lab MCP server
Query pre-computed SQL engine benchmarks. Runs standalone, no server setup required.
2 stars11 downloads/wk
Reviews
Write oneNobody has reviewed SQL Benchmarks Lab yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
SQL Benchmarks Lab tools (10, 1 write)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
analyze_experimentAnalyze a completed experiment. Choose the right intent for your question.
get_experiment_statusCheck the status of a submitted experiment. Status values: "queued", "running", "complete", "not_found".
get_templateReturn the raw YAML content of a template by name.
list_categoriesList the category taxonomy to narrow down test suites. Small payload — call this FIRST to narrow the suite search.
list_enginesList all available database engines (postgres, duckdb, actian) and the benchmark test suites each engine has SQL for.
list_resultsList completed benchmark experiments.
list_suitesList benchmark test suites for a specific category. Suites include: analytical_wall, group_by, joins, null_logic, null_sentinel, recursion, selectivity, tpch, acid_test.
list_templatesList curated experiment templates. Each is a valid, human-authored config you can get_template(name) and adapt.
recommend_engineGet an engine recommendation based on pre-computed benchmark data. Returns the fastest engine for the given workload with confidence level and reasoning.
submit_experimentwrite actionSubmit a new benchmark experiment. The experiment will run asynchronously. Use get_experiment_status() to poll for completion, then get_result() to retrieve data.
Public scan report
scanner v0.1.9 · 2026-09-23 · same rubric, same numbers if you re-run it
- Code scan680 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitylocal package, no credentials required12/15
- Maintenancelast push 5 days ago15/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
What the publisher says
From the SQL Benchmarks Lab repository's README, as published. We do not edit it. Read it on GitHub
SQL Benchmarking Laboratory
A deterministic, orchestrated harness for verifying database performance at scale.
Developed by Ramona C. Truta
The Mission: "Ground Truth" as Code
This platform is a specialized laboratory for testing SQL performance hypotheses. It transforms query tuning from intuition into a reproducible science.
The core of the system is a Deterministic Orchestration Harness that guarantees that if the logic or the environment changes, the benchmark result changes. If they do not, the result is addressable and cached.
Scope: the focus to date is synthetic and canonical (TPC-H) data, which is the right instrument for mechanism experiments — where controlled, reproducible data isolates the variable under test. Real-data support exists but is experimental; see the FAQ for the synthetic-vs-real rationale, the container model, and the roadmap (AI-security testbed, real-data trust chain).
Key Features & Innovations
1. Context-Aware Semantic Hashing (The Experiment ID)
The Heart of the system is the Experiment ID, an 8-character hash that governs the entire lifecycle. This hash is a SHA-256 fingerprint generated from:
- The Config: Every dimension in your YAML (rows, skew, parameters).
- The SQL Logic: The actual content of the benchmarked scripts.
- The Code: All measurement-relevant Python — orchestration (assets/), engine clients (resources/), and data generators (plugins/).
Semantic Normalization: The hashing engine distinguishes between a logic change and a formatting change.
- SQL: Comments, whitespace, and case are normalized before hashing.
- Python: Orchestration scripts are parsed into an Abstract Syntax Tree (AST) to strip docstrings and formatting variations, ensuring the Experiment ID only changes when execution logic changes.
2. Multi-Layer Cold-Cache Isolation
To ensure IO-bound performance is not masked by memory buffers, we implement a dual-layer cold start mechanism:
- Out-of-Process (Postgres): Mandatory Docker Container Restarts before every query to clear engine-level shared buffers.
- Global OS Flush (mmap): A specialized thrashoscache primitive that maps and dirties a file larger than physical RAM. This forces the OS to evict Page Cache entries, ensuring cold read performance for both containerized and in-process (DuckDB) engines.
3. Agentic AI Integration
The platform is built for the future of Autonomous Engineering. The Experiment ID allows AI agents to treat the laboratory as a Deterministic Performance API.
- See AGENTS.md for the full Agentic Benchmarking Protocol.
4. Declarative Matrix Orchestration
Benchmarks are defined as N-dimensional matrices in YAML. The platform expands these into a Cartesian product of Independent Dagster Partitions. This allows for parallel dispatch and granular retries.
Usage & Technical Setup
Prerequisites
- uv: the project's Python environment & dependency manager (fast, modern). setup.sh uses it, and it can install Python 3.11 for you.
- Python 3.11+: core runtime (uv provisions it if missing).
- Docker: for the containerized engines (Postgres, TypeDB), which the harness manages itself — not required for the DuckDB-only quickstart.
Installation & Setup
From PyPI — the lab is installable, which gives you the tooling and the sqlbench CLI:
pip install sqlbenchdagFrom source — clone the repo to also get the published capsules (sql_benchmarks/experiments/results/) and the full harness. The laboratory includes a comprehensive setup script that manages virtual environments, dependencies, and directory initialization.
# 1. Automate Setup
chmod +x setup.sh && ./setup.sh
# 2. Activate Laboratory
source venv/bin/activateShortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Install directly
claude mcp add sqlbenchdag -- uvx sqlbenchdag
SQL Benchmarks Lab: common questions
- Is SQL Benchmarks Lab MCP server safe?
- Yes, by our scan: it is graded A (92/100). Read the SQL Benchmarks Lab safety report
- How do I install SQL Benchmarks Lab?
- It runs on your machine. Copy the Claude Code, Claude Desktop or Cursor config from the install section.
- Does SQL Benchmarks Lab need an API key?
- No secret keys are declared. It reads 2 settings from the environment.
- Is SQL Benchmarks Lab maintained?
- The last commit was 6 days ago (2026-09-18). The latest release is v0.1.2.
- What can I use instead of SQL Benchmarks Lab?
- Servers from other publishers that do the same job: StackQL MCP Server, DBHub MCP server and GeoLens MCP server. Compare all SQL Benchmarks Lab alternatives.
Alternatives to SQL Benchmarks Lab
Same job from other publishers: the closest match first, then the best rated.
- StackQL MCP ServerSQL-native query and provisioning engine for cloud infrastructure, served over MCP.not reviewedEstablishedA
- DBHubToken-efficient database MCP server for PostgreSQL, MySQL, MariaDB, SQL Server, Oracle, SQLitenot reviewedWidely usedA
- GeoLensRead-only access to a self-hosted GeoLens spatial catalog: datasets, features, maps, sandboxed SQL.not reviewedEstablishedB
- LINQ to DBInspect database schemas and execute SQL queries across multiple database providers with LINQ to DB.not reviewedEstablishedA
Magic CloudGenerate secured CRUD APIs over your database, run SQL, manage files, tasks and a headless browsernot reviewedEstablishedA