数据库分析MCP服务器
使用FastMCP构建的实用数据库分析MCP服务器,通过模型上下文协议(MCP)提供SQLite数据库操作。非常适合使用Claude等人工智能助手的数据分析工作流程。
此服务器提供什么
🛠️ 工具 (互动操作)
connect_db-连接到SQLite数据库文件execute_query-执行带有安全检查的SQL查询list_tables-列出数据库中的所有表
📊 资源 (只读数据访问)
schema://tables/{table_name}-获取表列信息和结构data://tables/{table_name}-获取示例表数据以供预览
🔐 安全功能
- 通过危险操作阻塞防止SQL注入
- 用于安全架构探索的只读资源访问
- 使用描述性消息进行全面的错误处理
设置和安装
- 克隆存储库:
git clone https://github.com/khuyentran1401/database-analytics-mcp.git
cd database-analytics-mcp- 安装UV(推荐):
# Install UV if you haven't already
curl -LsSf https://astral.sh/uv/install.sh | sh- 安装依赖项:
# UV automatically manages dependencies from pyproject.toml
uv sync- 测试服务器:
uv run example_usage.py- 添加到克劳德代码
# Quick setup
claude mcp add database-analytics -- uv run database_mcp_server.py验证安装:
# Check if the server is registered
claude mcp list其他MCP客户端
对于支持标准协议的任何MCP客户端:
servers:
- name: database-analytics
transport:
type: stdio
command: uv
args: ["run", "database_mcp_server.py"]示例工作流
用Claude代码进行数据探索
- 连接到数据库
Connect to my SQLite database at ./sample_database.db- 探索架构
What tables are available in this database?- 检查表结构
Show me the schema for the users table- 预览数据
Show me some sample data from the users table- 运行分析查询
Calculate total sales by product category- 导出结果
Export the query "SELECT product_name, SUM(quantity) as total_sold FROM orders GROUP BY product_name" to CSV file called sales_report.csv- 获取表统计信息
Show me statistics for the users table常见用例
- 数据库架构发现:快速了解数据库结构
- 数据质量检查:验证数据完整性的样本数据
- 随即分析:安全运行自定义SQL查询
- 报告生成:执行复杂的分析查询
- 数据探索:使用分页浏览表和关系
- 数据导出:将查询结果导出到CSV以供外部分析
- 性能监控:跟踪查询执行时间
可用工具和资源
工具(交互式操作)
| 工具 | 参数 | 说明 |
|---|---|---|
connect_db | database_path: str | 连接到SQLite数据库文件 |
execute_query | sql: str | 执行带有安全检查和计时的SQL查询 |
list_tables | 无 | 列出连接数据库中的所有表 |
export_to_csv | sql: str, filename: str | 将查询结果导出到CSV文件 |
资源(只读访问)
| 资源URI | 描述 |
|---|---|
schema://tables/{table_name} | 获取列信息、类型、约束、外键 |
data://tables/{table_name} | 获取具有分页、统计(限制、偏移)的示例行 |
stats://tables/{table_name} | 获取全面的表统计和列分析 |
