Apache Doris MCP Server
Apache Doris's official read-only MCP server: catalogs, queries, cluster diagnostics, search and lineage
- 354 ★ on the repository
- Last commit
- Apache-2.0
Extended access
Why this level
- Reads analytical database data, possibly production
- Keeps the database password in the environment
Install
- Works in
Manual install
pip install doris-mcp-server==1.0.0Then set DORIS_HOST, DORIS_PORT, DORIS_USER, DORIS_PASSWORD.
Access and checks
How we reviewExtended accessThe tool runs code or makes network calls and only reads external data.
- Reads analytical database data, possibly production
- Keeps the database password in the environment
This is third-party code. Review the repository files before installing.
What it does
The server exposes the Apache Doris analytical database to the agent in read-only mode. Tools are grouped into eight domains: catalogs and tables, queries with plans and profiles, cluster health, ingestion and materialized views, text and vector search, data quality and lineage, lakehouse external catalogs and a semantic layer. The agent first asks a domain for its authorized child tools and schemas, then calls the one it needs. Doris RBAC decides object access, and the server bounds result size, timeouts and SQL shape.
Who it is for. For analysts and data engineers working with Apache Doris.
Good fit when
- You need to explore Doris schema and data with no risk of changes
- You need to analyze a slow query via plan and profile
- You need to check cluster health, ingestion or data freshness
Not a fit when
- You need to modify data or schema: the server is read-only
- You use another database or Doris older than 2.0
Example request
Show today's slowest queries and explain why the first one is slowMCP
- Transport
- stdio, http
- Authentication
- not required
Environment variables
DORIS_HOSTrequired- Doris FE host
DORIS_PORT- FE MySQL port, usually 9030
DORIS_USERrequired- Doris user
DORIS_PASSWORDrequired, secret- Doris user password
DORIS_DATABASE- Default database
Limitations
Requires Python 3.12, Apache Doris 2.0 or newer and network access to the FE MySQL port. The package is marked beta. Clients on MCP versions before 2026-07-28 need a separate legacy adapter. Non-loopback HTTP requires authentication setup.
How to disable. Remove the server entry from your MCP client config and run pip uninstall doris-mcp-server.
FAQ
What if my client does not handle domains?
Set MCP_TOOL_EXPOSURE_MODE=flat before startup to expose all child tools as a flat list.
Can the agent change anything in the database?
No, the built-in 1.0 catalog is read-only, and the admin domain is reserved and not registered.
Discussion
No questions or reviews yet.
Related
MCP serversRedis's official MCP server: strings, hashes, streams, JSON and vector search from your agent
Official Apache IoTDB MCP server: SQL over time series in tree and table models, with CSV and Excel export
Official MongoDB MCP server: queries and aggregations, index management, Atlas clusters and local deployments
MCP server that gives an agent access to MySQL: schema inspection and queries, read-only by default, writes behind flags
A lightweight database workspace with an MCP server: the agent reads the schema, runs queries and explores data in PostgreSQL, MySQL and more
A desktop SQL workspace with a built-in MCP server: the agent reads the schema and runs queries in the same client you already use
README in short
The README describes the 1.0 architecture with eight domains and progressive tool disclosure. Quick start covers PyPI install, Doris connection variables and running over HTTP or stdio. It lists security and reliability boundaries including auth, RBAC and result limits. Detailed English and Chinese docs live in docs. Apache 2.0 licensed.