DuckDB MCP 服务器
模型上下文协议 (MCP) 服务器实现,使 Claude 等 AI 助手能够与 DuckDB 交互,从而实现强大的数据分析功能。
🌟 什么是 DuckDB MCP 服务器?
DuckDB MCP 服务器通过模型上下文协议 (MCP)将 AI 助手连接到高性能分析型数据库DuckDB 。这使得 AI 模型能够:
直接从各种来源(如 CSV、Parquet、JSON 等)查询数据。
无需复杂设置即可访问云存储(S3 等)中的数据
使用 SQL 执行复杂的数据分析
通过适当的背景和理解来生成数据洞察
Related MCP server: MCP Database Server
🚀 主要特点
SQL 查询工具:使用 DuckDB 强大的语法执行任何 SQL 查询
多个数据源:直接从以下位置查询:
本地文件(CSV、Parquet、JSON 等)
S3 存储桶和云存储
SQLite 数据库
DuckDB 支持的所有其他数据源
自动连接管理:自动数据库文件创建和连接处理
智能凭证处理:无缝 AWS/S3 凭证管理
文档资源:内置 DuckDB SQL 和 AI 助手数据导入参考
📋 要求
Python 3.10+
与 MCP 兼容的客户端(Claude Desktop、Cursor、带有 Copilot 的 VS Code 等)
💻安装
使用 pip
pip install duckdb-mcp-server从源头
git clone https://github.com/yourusername/duckdb-mcp-server.git
cd duckdb-mcp-server
pip install -e .🔧 配置
命令行选项
duckdb-mcp-server --db-path path/to/database.db [options]必需参数:
--db-path- DuckDB 数据库文件的路径(如果不存在则创建)
可选参数:
--readonly- 以只读模式运行(如果数据库不存在将会出错)--s3-region- AWS S3 区域(默认:使用 AWS_DEFAULT_REGION 环境变量)--s3-profile- S3 凭证的 AWS 配置文件(默认:使用 AWS_PROFILE 或“默认”)--creds-from-env- 使用来自环境变量的 AWS 凭证
🔌 使用 Claude Desktop 进行设置
从claude.ai/download安装 Claude Desktop
编辑Claude Desktop的配置文件:
macOS :
~/Library/Application Support/Claude/claude_desktop_config.json
Windows :%APPDATA%/Claude/claude_desktop_config.json添加 DuckDB MCP 服务器配置:
{
"mcpServers": {
"duckdb": {
"command": "duckdb-mcp-server",
"args": [
"--db-path",
"~/claude-duckdb/data.db"
]
}
}
}📊 使用示例
配置完成后,您可以让您的 AI 助手使用 DuckDB 分析数据:
"Load the sales.csv file and show me the top 5 products by revenue"AI将生成并执行适当的SQL:
-- Load and query the CSV data
SELECT
product_name,
SUM(quantity * price) AS revenue
FROM read_csv('sales.csv')
GROUP BY product_name
ORDER BY revenue DESC
LIMIT 5;使用 S3 数据
直接从 S3 存储桶查询数据:
"Analyze the daily user signups from our analytics data in S3"AI将生成适当的SQL来查询S3:
SELECT
date_trunc('day', signup_timestamp) AS day,
COUNT(*) AS num_signups
FROM read_parquet('s3://my-analytics-bucket/signups/*.parquet')
GROUP BY day
ORDER BY day DESC;🌩️ 云存储身份验证
DuckDB MCP 服务器按以下顺序处理 AWS 身份验证:
显式凭证(如果启用了
--creds-from-env)命名配置文件凭证(通过
--s3-profile)默认凭证链(环境、共享凭证文件等)
🛠️ 开发
# Clone the repository
git clone https://github.com/yourusername/duckdb-mcp-server.git
cd duckdb-mcp-server
# Set up a virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install in development mode
pip install -e ".[dev]"
# Run tests
pytest📜 许可证
该项目根据 MIT 许可证获得许可 - 有关详细信息,请参阅LICENSE文件。
🙏 贡献
欢迎贡献代码!欢迎提交 Pull 请求。
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.