mcp Timeplus 连接器
与Timeplus集成,Timeplus是一个用于流数据(如Apache Kafka/Pulsar)的数据库。
MCP 服务配置
复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用
{
"mcpServers": {
"mcp-clickhouse": {
"args": [
"run",
"--with",
"mcp-clickhouse",
"--python",
"3.13",
"mcp-clickhouse"
],
"command": "uv",
"env": {
"CLICKHOUSE_DATABASE": "\u003coptional-database\u003e",
"CLICKHOUSE_HOST": "\u003cclickhouse-host\u003e",
"CLICKHOUSE_PASSWORD": "\u003cclickhouse-password\u003e",
"CLICKHOUSE_USER": "\u003cclickhouse-user\u003e"
}
}
}
}
可用工具 (6 个)
该服务在 MCP 协议中暴露的工具,AI 可按需调用
list_databases
该工具无需必填参数,直接调用即可
list_tables 2 个参数
该工具无需必填参数,直接调用即可
run_sql 1 个参数 需填 1 项
必填参数:query
list_kafka_topics
该工具无需必填参数,直接调用即可
explore_kafka_topic 2 个参数 需填 1 项
必填参数:topic
create_kafka_stream 1 个参数 需填 1 项
必填参数:topic
服务介绍
Timeplus MCP 服务器
用于 Timeplus 的 MCP 服务器。
功能
提示词
generate_sql为 LLM 提供更多关于如何通过 SQL 查询 Timeplus 的知识
工具
-
run_sql- 在您的 Timeplus 集群上执行 SQL 查询。
- 输入:
sql(字符串): 要执行的 SQL 查询。 - 默认情况下,所有 Timeplus 查询都使用
readonly = 1运行以确保安全。如果您想运行 DDL 或 DML 查询,可以将环境变量TIMEPLUS_READ_ONLY设置为false。
-
list_databases- 列出您 Timeplus 集群上的所有数据库。
-
list_tables- 列出数据库中的所有表。
- 输入:
database(字符串): 数据库的名称。
-
list_kafka_topics- 列出 Kafka 集群中的所有主题。
-
explore_kafka_topic- 显示 Kafka 主题中的一些消息
- 输入:
topic(字符串): 主题的名称。message_count(整数): 要显示的消息数量,默认为 1。
-
create_kafka_stream- 在 Timeplus 中设置流式 ETL 以本地保存 Kafka 消息
- 输入:
topic(字符串): 主题的名称。
-
connect_to_apache_iceberg- 连接到基于 Apache Iceberg 的数据库。目前这仅可通过 Timeplus Enterprise 使用,并计划很快在 Timeplus Proton 上提供。
- 输入:
iceberg_db(字符串): Iceberg 数据库的名称。aws_account_id(整数): AWS 账户 ID(12 位数字)。s3_bucket(字符串): S3 存储桶名称。aws_region(字符串): AWS 区域,默认为 "us-west-2"。is_s3_table_bucket(布尔值): S3 存储桶是否是 S3 表存储桶,默认为 False。
配置
首先,确保已安装 uv 可执行文件。如果未安装,您可以按照此处的说明进行安装。
-
打开位于以下位置的 Claude Desktop 配置文件:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%/Claude/claude_desktop_config.json
- macOS:
-
添加如下内容:
{
"mcpServers": {
"mcp-timeplus": {
"command": "uvx",
"args": ["mcp-timeplus"],
"env": {
"TIMEPLUS_HOST": "<timeplus-host>",
"TIMEPLUS_PORT": "<timeplus-port>",
"TIMEPLUS_USER": "<timeplus-user>",
"TIMEPLUS_PASSWORD": "<timeplus-password>",
"TIMEPLUS_SECURE": "false",
"TIMEPLUS_VERIFY": "true",
"TIMEPLUS_CONNECT_TIMEOUT": "30",
"TIMEPLUS_SEND_RECEIVE_TIMEOUT": "30",
"TIMEPLUS_READ_ONLY": "false",
"TIMEPLUS_KAFKA_CONFIG": "{\"bootstrap.servers\":\"a.aivencloud.com:28864\", \"sasl.mechanism\":\"SCRAM-SHA-256\",\"sasl.username\":\"avnadmin\", \"sasl.password\":\"thePassword\",\"security.protocol\":\"SASL_SSL\",\"enable.ssl.certificate.verification\":\"false\"}"
}
}
}
}
更新环境变量以指向您自己的 Timeplus 服务。
- 重启 Claude Desktop 以应用更改。
您还可以尝试使用其他 MCP 客户端来测试此 MCP 服务器,例如 5ire。
开发
-
在
test-services目录下运行docker compose up -d启动一个 Timeplus Proton 服务器。您也可以通过curl https://install.timeplus.com/oss | sh下载它,然后使用./proton server启动。 -
在仓库根目录下的
.env文件中添加以下变量。
TIMEPLUS_HOST=localhost
TIMEPLUS_PORT=8123
TIMEPLUS_USER=default
TIMEPLUS_PASSWORD=
TIMEPLUS_SECURE=false
TIMEPLUS_VERIFY=true
TIMEPLUS_CONNECT_TIMEOUT=30
TIMEPLUS_SEND_RECEIVE_TIMEOUT=30
TIMEPLUS_READ_ONLY=false
TIMEPLUS_KAFKA_CONFIG={"bootstrap.servers":"a.aivencloud.com:28864", "sasl.mechanism":"SCRAM-SHA-256","sasl.username":"avnadmin", "sasl.password":"thePassword","security.protocol":"SASL_SSL","enable.ssl.certificate.verification":"false"}
-
运行
uv sync以安装依赖项。然后执行source .venv/bin/activate。 -
为了方便测试,你可以运行
mcp dev mcp_timeplus/mcp_server.py来启动 MCP 服务器。点击“连接”按钮将 UI 与 MCP 服务器连接,然后切换到“工具”选项卡来运行可用的工具。 -
要构建 Docker 镜像,请运行
docker build -t mcp_timeplus .。
环境变量
以下环境变量用于配置 Timeplus 连接:
必需变量
TIMEPLUS_HOST: 你的 Timeplus 服务器的主机名TIMEPLUS_USER: 用于认证的用户名TIMEPLUS_PASSWORD: 用于认证的密码
可选变量
TIMEPLUS_PORT: 你的 Timeplus 服务器的端口号- 默认值:如果启用了 HTTPS,则为
8443;如果没有启用,则为8123 - 通常不需要设置,除非使用非标准端口
- 默认值:如果启用了 HTTPS,则为
TIMEPLUS_SECURE: 启用/禁用 HTTPS 连接- 默认值:
"false" - 设置为
"true"以启用安全连接
- 默认值:
TIMEPLUS_VERIFY: 启用/禁用 SSL 证书验证- 默认值:
"true" - 设置为
"false"以禁用证书验证(不推荐在生产环境中使用)
- 默认值:
TIMEPLUS_CONNECT_TIMEOUT: 连接超时时间(秒)- 默认值:
"30" - 如果遇到连接超时问题,可以增加此值
- 默认值:
TIMEPLUS_SEND_RECEIVE_TIMEOUT: 发送/接收超时时间(秒)- 默认值:
"300" - 对于长时间运行的查询,可以增加此值
- 默认值:
TIMEPLUS_DATABASE: 使用的默认数据库- 默认值:无(使用服务器默认值)
- 设置此项以自动连接到特定数据库
TIMEPLUS_READ_ONLY: 启用/禁用只读模式- 默认值:
"true" - 设置为
"false"以启用 DDL/DML
- 默认值:
TIMEPLUS_KAFKA_CONFIG: Kafka 配置的 JSON 字符串。请参考 librdkafka 配置 或以上示例作为参考。