Apache Doris
MCP Server For [Apache Doris](https://doris.apache.org/), an MPP-based real-time data warehouse.
⚡Config Installation
Add this to your claude_desktop_config.json:
{
"mcpServers": {
"apache-doris": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-apache-doris"
]
}
}
}* Note: Requires restart of Claude Desktop app.
Deployment Infrastructure
Adoption Framework for Apache Doris
Before installing any skill, define a clear objective and measurable outcome. A useful implementation question is: what workflow becomes faster, safer, or more reliable after this skill is active? If that answer is vague, delay rollout and tighten scope first.
For most teams, a low-risk pattern is preview-first rollout with one owner, one test scenario, and one rollback plan. Capture failures in a structured log so quality decisions are evidence-based. This is especially important for skills that touch file systems, external APIs, or automation chains with downstream side effects.
- Define success metrics before installation.
- Validate permission scope against policy boundaries.
- Run one controlled pilot and document failure categories.
- Promote only after acceptance checks pass consistently.
Pre-Deployment Review Questions
Use these questions before enabling the skill in shared environments. They reduce surprise incidents and make approval decisions consistent across teams.
- What data can this skill read, write, or transmit by default?
- Which failures are recoverable automatically and which require manual stop?
- Do we have verifiable logs that prove safe behavior under load?
- Is rollback tested, documented, and assigned to a clear owner?
If any answer is unclear, keep rollout in preview and close the gap before production use.
Editorial Review Snapshot
This listing includes an editorial QA layer in addition to automated rendering. Review status is based on documentation depth, content uniqueness, and operational safety signals from the upstream repository.
- Last scan date: 2026-01-18
- README depth: 1167 words
- Content diversity score: 0.53 (higher is better)
- Template signal count: 0
- Index status: Index eligible
Recommendation: Pilot in a bounded environment first. Confirm observability and ownership before promoting to shared workflows.
Skill Implementation Board
Actionable utility module for rollout decisions. Use the inputs below to choose a deployment path, then execute the checklist and record an output note.
Input: Security Grade
B
Input: Findings
0
Input: README Depth
1167 words
Input: Index State
Eligible
| Decision Trigger | Action | Expected Output |
|---|---|---|
| Input: risk band moderate, docs partial, findings 0 | Run a preview pilot with fixed ownership and observability checkpoints. | Pilot can start with rollback checklist attached. |
| Input: page is index-eligible | Proceed with external documentation and team onboarding draft. | Reusable rollout runbook ready for team adoption. |
| Input: context tags/scenarios are missing | Define two concrete scenarios before broad rollout. | Clear scope definition before further deployment. |
Execution Steps
- Capture objective, owner, and rollback contact.
- Run one preview pilot with fixed test scenario.
- Record warning behavior and recovery evidence.
- Promote only if pilot output matches expected threshold.
Output Template
skill=apache-doris mode=B pilot_result=pass|fail warning_count=0 next_step=rollout|patch|hold
🛡️ Security Analysis
Clean Scan Report
Our static analysis engine detected no common vulnerabilities (RCE, API Leaks, Unbounded FS).
DocumentationREADME.md
Doris MCP Server
Doris MCP (Model Context Protocol) Server is a backend service built with Python and FastAPI. It implements the MCP, allowing clients to interact with it through defined "Tools". It's primarily designed to connect to Apache Doris databases, potentially leveraging Large Language Models (LLMs) for tasks like converting natural language queries to SQL (NL2SQL), executing queries, and performing metadata management and analysis.
🚀 What's New in v0.6.0
- 🔐 Enterprise Authentication System: Revolutionary token-bound database configuration with comprehensive Token, JWT, and OAuth authentication support, enabling secure multi-tenant access with granular control switches and enterprise-grade security defaults
- ⚡ Immediate Database Validation: Real-time database configuration validation at connection time, eliminating query-time blocking and providing instant feedback for invalid configurations - achieving 100% elimination of late-stage connection failures
- 🔄 Hot Reload Configuration Management: Zero-downtime configuration updates with intelligent hot reloading of tokens.json, automatic token revalidation, and comprehensive error handling with rollback mechanisms
- 🏗️ Advanced Connection Architecture: Session caching and connection pool optimization with 60% reduction in connection overhead, intelligent pool recreation, and automatic resource management
- 🌐 Multi-Worker Scalability: True horizontal scaling with stateless multi-worker architecture, efficient load distribution, and enterprise-grade concurrent processing capabilities
- 🔒 Enhanced Security Framework: Comprehensive access control and SQL security validation with immediate validation, role-based permissions, and enhanced injection detection patterns
- 🛠️ Unified Configuration System: Streamlined configuration management with proper command-line precedence, Docker compatibility improvements, and cross-platform deployment support
- 📊 Token Management Dashboard: Complete token lifecycle management with creation, revocation, statistics, and comprehensive audit trails for enterprise token governance
- 🌐 Web-Based Management Interface: Secure localhost-only token administration with intuitive dashboard, database binding configuration, real-time operations, and enterprise-grade access controls
🚀 Major Milestone: v0.6.0 establishes the platform as a production-ready enterprise authentication and database management system with zero-downtime operations (hot reload + immediate validation + multi-worker scaling), advanced security controls, and comprehensive token-bound database configuration - representing a fundamental advancement in enterprise data platform capabilities.
What's Also Included from v0.5.1
- 🔥 Critical at_eof Connection Fix: Complete elimination of connection pool errors with intelligent health monitoring and self-healing recovery
- 🔧 Enterprise Logging System: Level-based file separation with automatic cleanup and millisecond precision timestamps
- 📊 Advanced Data Analytics Suite: 7 enterprise-grade data governance tools including quality analysis, lineage tracking, and performance monitoring
- 🏃♂️ High-Performance ADBC Integration: Apache Arrow Flight SQL support with 3-10x performance improvements for large datasets
- ⚙️ Enhanced Configuration Management: Complete ADBC configuration system with intelligent parameter validation
Core Features
- MCP Protocol Implementation: Provides standard MCP interfaces, supporting tool calls, resource management, and prompt interactions.
- Streamable HTTP Communication: Unified HTTP endpoint supporting both request/response and streaming communication for optimal performance and reliability.
- Stdio Communication: Standard input/output mode for direct integration with MCP clients like Cursor.
- Enterprise-Grade Architecture: Modular design with comprehensive functionality:
- Tools Manager: Centralized tool registration and routing with unified interfaces (
doris_mcp_server/tools/tools_manager.py) - Enhanced Monitoring Tools Module: Advanced memory tracking, metrics collection, and flexible BE node discovery with modular, extensible design
- Query Information Tools: Enhanced SQL explain and profiling with configurable content truncation, file export for LLM attachments, and advanced query analytics
- Resources Manager: Resource management and metadata exposure (
doris_mcp_server/tools/resources_manager.py) - Prompts Manager: Intelligent prompt templates for data analysis (
doris_mcp_server/tools/prompts_manager.py)
- Tools Manager: Centralized tool registration and routing with unified interfaces (
- Advanced Database Features:
- Query Execution: High-performance SQL execution with advanced caching and optimization, enhanced connection stability and automatic retry mechanisms (
doris_mcp_server/utils/query_executor.py) - Security Management: Comprehensive SQL security validation with configurable blocked keywords, SQL injection protection, data masking, and unified security configuration management (
doris_mcp_server/utils/security.py) - Metadata Extraction: Comprehensive database metadata with catalog federation support (
doris_mcp_server/utils/schema_extractor.py) - Performance Analysis: Advanced column analysis, performance monitoring, and data analysis tools (
doris_mcp_server/utils/analysis_tools.py)
- Query Execution: High-performance SQL execution with advanced caching and optimization, enhanced connection stability and automatic retry mechanisms (
- Catalog Federation Support: Full support for multi-catalog environments (internal Doris tables and external data sources like Hive, MySQL, etc.)
- Enterprise Security: Comprehensive security framework with authentication, authorization, SQL injection protection, and data masking capabilities with environment variable configuration support
- Web-Based Token Management: Secure localhost-only interface for complete token lifecycle management with database binding, real-time statistics, and enterprise-grade access controls (
doris_mcp_server/auth/token_handlers.py) - Unified Configuration Framework: Centralized configuration management through
config.pywith comprehensive validation, standardized parameter naming, and smart default database handling with automatic fallback toinformation_schema
System Requirements
- Python: 3.12+
- Database: Apache Doris connection details (Host, Port, User, Password, Database)
🚀 Quick Start
Installation from PyPI
# Install the latest version
pip install doris-mcp-server
# Install specific version
pip install doris-mcp-server==0.6.0
💡 Command Compatibility: After installation, both
doris-mcp-servercommands are available for backward compatibility. You can use either command interchangeably.
Start Streamable HTTP Mode (Web Service)
The primary communication mode offering optimal performance and reliability:
# Full configuration with database connection
doris-mcp-server \
--transport http \
--host 0.0.0.0 \
--port 3000 \
--db-host 127.0.0.1 \
--db-port 9030 \
--db-user root \
--db-password your_password
Start Stdio Mode (for Cursor and other MCP clients)
Standard input/output mode for direct integration with MCP clients:
# For direct integration with MCP clients like Cursor
doris-mcp-server --transport stdio
🌐 Token Management Interface (New in v0.6.0)
Access the Web-Based Token Management Dashboard for enterprise-grade token administration:
Secure Access Requirements
- Localhost Access Only: Interface restricted to
127.0.0.1and::1for maximum security - Admin Authentication: Requires
TOKEN_MANAGEMENT_ADMIN_TOKENfor access - Configuration Prerequisites:
# Required environment variables ENABLE_HTTP_TOKEN_MANAGEMENT=true ENABLE_TOKEN_AUTH=true TOKEN_MANAGEMENT_ADMIN_TOKEN=your_secure_admin_token TOKEN_MANAGEMENT_ALLOWED_IPS=127.0.0.1,::1
Interface Access
# Access the token management interface
http://localhost:3000/token/management?admin_token=your_secure_admin_token
Available Operations
- 📊 Token Statistics: Real-time overview of active, expired, and total tokens
- ➕ Create Tokens:
- Basic information (ID, description, expiration)
- Database binding (host, port, user, password, database)
- Custom token values or auto-generated secure tokens
- 📋 Token Management:
- List all tokens with database binding status
- One-click token revocation
- Automated expired token cleanup
- 🔒 Enterprise Security:
- All operations require admin authentication
- Real-time IP validation
- Complete audit logging
- Automatic persistence to
tokens.json
🔐 Security Note: The interface is designed for localhost administration only. It cannot be accessed remotely, ensuring maximum security for token management operations.
Verify Installation
# Check installation
doris-mcp-server --help
# Test HTTP mode (in another terminal)
curl http://localhost:3000/health
Environment Variables (Optional)
Instead of command-line arguments, you can use envir
...(truncated)