About SQLBot MCP Proxy
SQLBot MCP Proxy exposes SQLBot data discovery, Text-to-SQL queries, and report generation to MCP clients. It is for teams with a running SQLBot service and API keys, and supports stdio or HTTP transport.
Key features
- 01List data sources and tables
- 02Describe table fields
- 03Ask natural-language data questions
- 04Generate reports and charts
- 05Use local SVG report fallback
Use cases
- 01Browse SQLBot data sources before querying
- 02Ask questions about data in natural language
- 03Generate analysis reports and charts
MCP support
It acts as an MCP server proxy for SQLBot, exposing data discovery, metadata, querying, and report-generation tools. It supports stdio and JSON-RPC over HTTP.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
docker run -i --rm -e SQLBOT_MCP_PROXY_BASE_URL -e SQLBOT_MCP_PROXY_ACCESS_KEY -e SQLBOT_MCP_PROXY_SECRET_KEY -e SQLBOT_MCP_PROXY_DOCKER_CONTAINER ghcr.io/wenrou21/sqlbot-mcp-proxy:0.1.0SQLBOT_MCP_PROXY_BASE_URLBase URL of the SQLBot service, for example http://127.0.0.1:8000.SQLBOT_MCP_PROXY_ACCESS_KEYSecretSQLBot API access key. If omitted, the proxy can try FEISHU_ASK_ACCESS_KEY or read from the configured Docker container.SQLBOT_MCP_PROXY_SECRET_KEYSecretSQLBot API secret key. If omitted, the proxy can try FEISHU_ASK_SECRET_KEY or read from the configured Docker container.SQLBOT_MCP_PROXY_DOCKER_CONTAINEROptional Docker container name used when reading FEISHU_ASK_ACCESS_KEY and FEISHU_ASK_SECRET_KEY from a running SQLBot container.Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.
ghcr.io/wenrou21/sqlbot-mcp-proxy:0.1.0stdioTools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMESQLBot MCP Proxy
MCP server proxy for SQLBot. It exposes SQLBot datasource discovery, table metadata, natural-language Text-to-SQL questions, and local fallback report generation as MCP tools.
Requirements
- Docker
- A running SQLBot service
- SQLBot API keys
Recommended Codex Config
Users do not need to download this repository manually. Add this single MCP server to Codex config and replace the SQLBot URL and keys:
[mcp_servers.sqlbot]
command = "docker"
args = [
"run",
"--rm",
"-i",
"-e",
"SQLBOT_MCP_PROXY_BASE_URL",
"-e",
"SQLBOT_MCP_PROXY_ACCESS_KEY",
"-e",
"SQLBOT_MCP_PROXY_SECRET_KEY",
"ghcr.io/wenrou21/sqlbot-mcp-proxy:0.1.0"
]
enabled = true
startup_timeout_sec = 120
[mcp_servers.sqlbot.env]
SQLBOT_MCP_PROXY_BASE_URL = "http://183.196.108.32:18088"
SQLBOT_MCP_PROXY_ACCESS_KEY = "<YOUR_SQLBOT_ACCESS_KEY>"
SQLBOT_MCP_PROXY_SECRET_KEY = "<YOUR_SQLBOT_SECRET_KEY>"
Then restart Codex completely.
If SQLBot is reachable through another public or LAN address, replace SQLBOT_MCP_PROXY_BASE_URL with that address, for example https://sqlbot.example.com or http://192.168.1.10:18088.
Prompt Template
Please configure SQLBot MCP for Codex.
MCP image:
ghcr.io/wenrou21/sqlbot-mcp-proxy:0.1.0
My SQLBot URL:
http://183.196.108.32:18088
My SQLBot access key:
<YOUR_SQLBOT_ACCESS_KEY>
My SQLBot secret key:
<YOUR_SQLBOT_SECRET_KEY>
Add this MCP to Codex config:
- MCP name: sqlbot
- command: docker
- args: ["run", "--rm", "-i", "-e", "SQLBOT_MCP_PROXY_BASE_URL", "-e", "SQLBOT_MCP_PROXY_ACCESS_KEY", "-e", "SQLBOT_MCP_PROXY_SECRET_KEY", "ghcr.io/wenrou21/sqlbot-mcp-proxy:0.1.0"]
- startup_timeout_sec: 120
- SQLBOT_MCP_PROXY_BASE_URL: use the SQLBot URL above
- SQLBOT_MCP_PROXY_ACCESS_KEY: use the access key above
- SQLBOT_MCP_PROXY_SECRET_KEY: use the secret key above
After configuration, remind me to fully restart Codex.
After restart:
- Check available datasources with sqlbot_list_datasources.
- Use sqlbot_list_tables and sqlbot_describe_table before asking data questions.
- Use sqlbot_ask_data for Text-to-SQL questions.
- Use sqlbot_generate_report when I ask for an analysis report or chart.
Quick Docker Test
You can test the image outside Codex:
docker run --rm -i \
-e SQLBOT_MCP_PROXY_BASE_URL=http://183.196.108.32:18088 \
-e SQLBOT_MCP_PROXY_ACCESS_KEY=your-access-key \
-e SQLBOT_MCP_PROXY_SECRET_KEY=your-secret-key \
ghcr.io/wenrou21/sqlbot-mcp-proxy:0.1.0
Tools
sqlbot_list_datasources: list SQLBot datasources visible to the configured API keysqlbot_list_tables: list checked SQLBot metadata tables for a datasourcesqlbot_describe_table: describe checked fields for a SQLBot metadata tablesqlbot_ask_data: ask SQLBot a natural-language data questionsqlbot_generate_report: generate an analysis report and chart, with a local SVG fallback
Environment Variables
| Name | Default | Description |
|---|---|---|
SQLBOT_MCP_PROXY_BASE_URL | http://183.196.108.32:18088 | SQLBot service base URL |
SQLBOT_MCP_PROXY_ACCESS_KEY | empty | SQLBot API access key |
SQLBOT_MCP_PROXY_SECRET_KEY | empty | SQLBot API secret key |
FEISHU_ASK_ACCESS_KEY | empty | Fallback access key name |
FEISHU_ASK_SECRET_KEY | empty | Fallback secret key name |
SQLBOT_MCP_PROXY_DOCKER_CONTAINER | sqlbot | Container used for fallback key lookup |
SQLBOT_MCP_PROXY_HTTP_HOST | 127.0.0.1 | HTTP mode host |
SQLBOT_MCP_PROXY_HTTP_PORT | 8787 | HTTP mode port |
SQLBOT_MCP_PROXY_HTTP_PATH | /mcp | HTTP mode JSON-RPC path |
SQLBOT_MCP_PROXY_HTTP_TIMEOUT_MS | 120000 | SQLBot HTTP request timeout |
SQLBOT_MCP_PROXY_REPORT_OUTPUT_DIR | outputs | Directory for generated fallback SVG reports |
Advanced HTTP Mode
Most MCP clients should use stdio. For clients that can send JSON-RPC over HTTP, start:
docker run --rm -p 8787:8787 \
-e SQLBOT_MCP_PROXY_BASE_URL=http://183.196.108.32:18088 \
-e SQLBOT_MCP_PROXY_ACCESS_KEY=your-access-key \
-e SQLBOT_MCP_PROXY_SECRET_KEY=your-secret-key \
-e SQLBOT_MCP_PROXY_HTTP_HOST=0.0.0.0 \
ghcr.io/wenrou21/sqlbot-mcp-proxy:0.1.0 --http
Health check:
curl http://127.0.0.1:8787/health
Publish
- Confirm package metadata in
package.json. - Publish an OCI image:
docker build -t ghcr.io/wenrou21/sqlbot-mcp-proxy:0.1.0 .
docker push ghcr.io/wenrou21/sqlbot-mcp-proxy:0.1.0
- Publish MCP Registry metadata:
mcp-publisher login github
mcp-publisher publish
The mcpName in package.json must exactly match name in server.json.
Comments
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.