使用说明
Timeplus MCP服务器
Timeplus的MCP服务器。
特性
鼓励
generate_sql为LLM提供更多关于如何通过SQL查询Timeplus的知识
工具
-
run_sql- 在Timeplus集群上执行SQL查询。
- 输入:
sql(string):要执行的SQL查询。 - 默认情况下,所有Timeplus查询都使用
readonly = 1以确保它们的安全。如果要运行DDL或DML查询,可以设置环境变量TIMEPLUS_READ_ONLY向false.
-
list_databases- 列出Timeplus集群上的所有数据库。
-
list_tables- 列出数据库中的所有表。
- 输入:
database(string):数据库的名称。
-
list_kafka_topics- 列出Kafka集群中的所有主题
-
explore_kafka_topic- 显示Kafka主题中的一些消息
- 输入:
topic(string):主题的名称。message_count(int):要显示的消息数,默认为1。
-
create_kafka_stream- 在Timeplus中设置流式ETL以在本地保存Kafka消息
- 输入:
topic(string):主题的名称。
-
connect_to_apache_iceberg- 连接到基于Apache Iceberg的数据库。目前,这只能通过Timeplus Enterprise获得,计划很快将其提供给Timeplus Proton。
- 输入:
iceberg_db(string):冰山数据库的名称。aws_account_id(int):AWS帐户ID(12位数字)。s3_bucket(string):S3存储桶名称。aws_region(string):AWS区域,默认为“us-west-2”。is_s3_table_bucket(bool):S3 bucket是否为S3表bucket,默认为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服务器的端口号- 违约:
8443如果启用了HTTPS,8123如果禁用 - 通常不需要设置,除非使用非标准端口
- 违约:
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配置 或者以上述示例为参考。
