项目简介
本项目是一个基于 FastMCP 框架构建的 Model Context Protocol (MCP) 服务器,旨在帮助大型语言模型 (LLM) 通过标准化的协议连接并操作 DolphinDB 数据库。它将常见的 DolphinDB 操作封装为可由 LLM 调用的工具 (Tools)。
主要功能点
该服务器提供了以下主要工具,供 LLM 客户端调用:
- 查看数据库 (list_dbs): 列出 DolphinDB 服务器上所有可用的分布式文件系统数据库 (DFS databases)。
- 查看表 (list_tbs): 列出指定 DolphinDB 分布式数据库下的所有数据表。
- 查询表磁盘占用 (query_table_diskusage): 查看指定 DolphinDB 表的磁盘空间占用情况。
- 执行 DolphinDB 脚本 (query_dolphindb): 在 DolphinDB 服务器上执行任意指定的 DolphinDB 脚本,并返回结果。
安装步骤
-
安装依赖: 强烈建议使用 'uv' 包管理器安装项目依赖,包括 FastMCP、DolphinDB Python API 和 dotenv。
uv pip install fastmcp dolphindb dotenv -
配置 DolphinDB 连接信息: 复制示例配置文件 '.env.example' 为 '.env',并根据您的 DolphinDB 服务器信息修改 '.env' 文件中的连接参数(主机、端口、用户名、密码)。
cp .env.example .env -
安装服务器至 MCP 客户端环境: 使用 'fastmcp' 命令安装服务器脚本。这通常会将服务器注册到 MCP 客户端环境中,使其可以被发现和启动。假设服务器脚本文件名为 'server.py'。
fastmcp install server.py
服务器配置(供MCP客户端使用)
MCP 客户端(如支持 MCP 协议的 LLM 应用)需要知道如何启动这个 DolphinDB MCP 服务器。通常,您需要在客户端的 MCP 服务器配置中指定以下信息:
- 服务器名称 (name): 可以是任意易于识别的名称,例如 "DolphinDB 服务器"。
- 启动命令 (command): 用于启动服务器进程的命令。对于使用 'fastmcp install' 安装的服务器,通常的启动命令是 'fastmcp run <服务器ID>',其中 '<服务器ID>' 是服务器的注册名称,在本例中是 'dolphindb-mcp-server'(根据代码 'FastMCP("dolphindb-mcp-server")' 得知)。完整的命令通常表示为一个字符串列表:'["fastmcp", "run", "dolphindb-mcp-server"]'。
- 启动参数 (args): 传递给启动命令的额外参数列表。根据代码,服务器在内部硬编码了使用 SSE 协议监听 '127.0.0.1:8888',因此客户端启动时通常不需要额外参数,参数列表为空:'[]'。
在配置前,请确保您已经完成了上面的安装和 '.env' 文件配置步骤。
基本使用方法
服务器启动后,通过支持 MCP 协议的 LLM 客户端,LLM 即可调用该服务器提供的工具。例如,LLM 可以:
- 请求执行 'list_dbs' 工具,获取 DolphinDB 中的数据库列表,从而了解可用的数据源。
- 请求执行 'query_dolphindb' 工具,并提供 DolphinDB 脚本作为参数,从而在数据库中执行复杂的查询或操作。
LLM 会根据其理解和用户需求,自动选择并调用合适的工具,并通过工具的返回值获取 DolphinDB 的数据或操作结果,用于回答用户问题或执行进一步任务。
信息
分类
数据库与文件