这是一个针对 GreptimeDB 的模型上下文协议(MCP)服务器实现。
该服务器提供了一种安全且结构化的方式来让AI助手探索和分析数据库。它允许它们通过一个受控接口列出表、读取数据并执行SQL查询,确保负责任地访问数据库。
这是一个仍在开发中的实验性项目。尚未特别处理数据安全和隐私问题,请谨慎使用。
list_resources 列出表read_resource 读取表数据list_tools 列出工具call_tool 执行SQLlist_prompts 列出提示get_prompt 根据名称获取提示pip install greptimedb-mcp-server
设置以下环境变量:
GREPTIMEDB_HOST=localhost # 数据库主机
GREPTIMEDB_PORT=4002 # 可选:数据库MySQL端口(未指定时默认为4002)
GREPTIMEDB_USER=root
GREPTIMEDB_PASSWORD=
GREPTIMEDB_DATABASE=public
GREPTIMEDB_TIMEZONE=UTC
或通过命令行参数:
--host 数据库主机,默认为 localhost--port 数据库端口,必须是MySQL协议端口,默认为 4002--user 数据库用户名,默认为空--password 数据库密码,默认为空--database 数据库名称,默认为 public--timezone 会话时区,默认为空(使用服务器默认时区)在 Claude Desktop 的配置文件中配置 MCP 服务器:
位置:~/Library/Application Support/Claude/claude_desktop_config.json
位置:%APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"greptimedb": {
"command": "uv",
"args": [
"--directory",
"/path/to/greptimedb-mcp-server",
"run",
"-m",
"greptimedb_mcp_server.server"
],
"env": {
"GREPTIMEDB_HOST": "localhost",
"GREPTIMEDB_PORT": "4002",
"GREPTIMEDB_USER": "root",
_ "GREPTIMEDB_PASSWORD": "",
"GREPTIMEDB_DATABASE": "public",
"GREPTIMEDB_TIMEZONE": ""
}
}
}
}
MIT 许可证 - 详情见 LICENSE.md 文件。
uv 包管理器的 Python# 克隆仓库
git clone https://github.com/GreptimeTeam/greptimedb-mcp-server.git
cd greptimedb-mcp-server
# 创建虚拟环境
uv venv
source venv/bin/activate # 或者在 Windows 上使用 `venv\Scripts\activate`
# 安装开发依赖项
uv sync
# 运行测试
pytest
使用 MCP Inspector 进行调试:
npx @modelcontextprotocol/inspector uv \
--directory \
/path/to/greptimedb-mcp-server \
run \
-m \
greptimedb_mcp_server.server
本库的实现受到了以下两个仓库的启发,并整合了它们的代码,对此我们表示感谢:
谢谢!