项目简介
本项目是一个基于 Python 的 MCP (Model Context Protocol) 服务端,旨在通过标准化的 MCP 接口,允许兼容的 LLM (大型语言模型) 客户端连接并与 IBM TM1 实例进行交互。它将 TM1 的数据访问和功能操作封装为可由 LLM 调用的工具。
主要功能点
- TM1 数据访问: 提供工具,使 LLM 能够获取 TM1 多维数据库中的数据和元数据,例如获取维度、成员、方体信息等。
- TM1 功能操作: 提供工具,允许 LLM 调用 TM1 的特定功能,如执行 MDX 查询、获取单元格值等。
- 可扩展的工具集: 允许用户轻松添加自定义 Python 工具,以封装更多与 TM1 交互的功能。
- MCP 协议支持: 实现标准的 MCP 协议,确保与任何兼容的 LLM 客户端进行可靠通信。
安装步骤
- 克隆本 GitHub 仓库到本地目录。
- 确保已安装 Python 3.12+ 和 'uv' 工具。
- 在项目根目录下,使用 'uv' 安装所有依赖库。通常命令为 'uv sync' 或 'uv pip install .' (具体取决于 'uv' 版本和项目配置)。
服务器配置 (供 MCP 客户端使用)
此 MCP 服务端需要由 MCP 客户端(如某些桌面 LLM 应用)启动和管理。客户端需要在其配置中指定如何启动此服务。以下是为客户端配置此 MCP 服务端所需的关键信息,您需要将其添加到您的 LLM 客户端的 MCP 服务器配置文件中(通常是 JSON 格式):
- 服务器名称 (Server Name): 您可以指定一个名称,例如 'tm1'。
- 启动命令 (Command): 启动服务器的可执行文件路径,通常是 'uv'。
- 启动参数 (Args): 启动 'uv' 并运行 'main.py' 的参数列表。这些参数通常包括:
- '--directory':指定本项目的绝对路径,例如 '/ABSOLUTE/PATH/TO/TM1MCP'(请将此路径替换为实际路径)。
- 'run':'uv' 的运行命令。
- 'main.py':本项目的入口文件。
例如,在 JSON 配置文件中,这部分配置可能类似:
{ "mcpServers": { "tm1": { // 您为服务器指定的名称 "command": "uv", // 启动命令 "args": [ "--directory", "/您的/项目/绝对/路径/tm1mcp", // 替换为您的实际路径 "run", "main.py" ] } } }
请参考您的具体 LLM 客户端文档,了解如何编辑其 MCP 服务器配置。
基本使用方法
- 确保您的 IBM TM1 实例正在运行,并且网络配置 (在项目的 'config.py' 中设置) 正确无误。
- 根据上一节的说明,在您的 LLM 客户端中配置此 MCP 服务端。
- 启动您的 LLM 客户端。客户端将根据配置信息尝试启动此 MCP 服务端。
- 一旦客户端成功连接到 MCP 服务端,您的 LLM 就可以通过 MCP 协议发现并调用本项目提供的各种 TM1 工具来访问数据或执行操作。
信息
分类
商业系统