使用说明
项目简介
Polars API 文档搜索 MCP 服务器是一个基于 Model Context Protocol (MCP) 构建的应用后端,它利用 Python 的反射机制自动发现 Polars 库的 API 组件(类、函数、子模块),并提供工具供 LLM 客户端查询 Polars API 的签名和描述信息。该服务器旨在为 LLM 应用提供便捷的 Polars 库 API 文档检索能力,帮助开发者更高效地使用 Polars 库。
主要功能点
- 自动发现 Polars API 组件: 能够自动检测 Polars 库中的公共类、函数和子模块,无需手动维护文档数据库。
- API 文档搜索: 支持通过组件名称或关键词搜索 Polars API 文档,返回结构化的 JSON 数据,包含 API 签名和描述。
- 精确 API 查找: 可以根据 API 引用 (如 "DataFrame.filter") 精确查找特定 API 的信息。
- 模糊查询: 支持关键词模糊搜索 API 文档,方便用户根据功能描述查找相关 API。
- API 验证: 可以验证给定的 Polars API 引用是否有效。
安装步骤
- 环境准备: 确保已安装 Python 3.11 或更高版本。
- 安装依赖: 建议使用 'uv' 或 'pip' 等工具安装项目依赖,虽然仓库中没有明确的 requirements.txt 文件,但根据代码内容,你需要确保安装了 'polars' 和 'mcp' 库。可以使用以下命令安装:
或者,如果你已经安装了 'uv',可以使用仓库 README 中提供的命令,它会隐式处理依赖安装。uv pip install polars mcp-server # 使用 uv # 或 pip install polars mcp-server # 使用 pip
服务器配置
为了让 MCP 客户端(例如 Claude)连接到此 MCP 服务器,你需要配置客户端的 'mcpServers' 字段。以下是根据仓库 'README.md' 提供的配置信息,并添加了详细的参数注释:
{ "mcpServers": { "polarsapifinder": { // 服务器名称,客户端用于标识和调用 "command": "uv", // 启动服务器的命令,这里使用 uv (或 python,如果你的环境中 python 指向 Python 3.11+) "args": [ // 启动命令的参数列表 "--directory", // 指定工作目录 "/PATH/TO/polars-docs-mcp", // 请替换为 'polarsdocsfinder.py' 文件所在的实际目录的绝对路径 "run", // uv 的子命令,表示运行 Python 脚本 "polarsdocsfinder.py" // 要运行的 Python 脚本文件名 ] } } }
注意: 请将 '/PATH/TO/polars-docs-mcp' 替换为你实际存放 'polarsdocsfinder.py' 文件的目录的绝对路径。
基本使用方法
-
启动 MCP 服务器: 在终端中,导航到 'polarsdocsfinder.py' 文件所在的目录,并根据你的环境运行以下命令启动服务器 (与客户端配置中的 'command' 和 'args' 保持一致):
uv run polarsdocsfinder.py # 或者,如果你的环境中 python 指向 Python 3.11+ 且安装了 mcp-server 和 polars python polarsdocsfinder.py服务器启动后,它将监听来自 MCP 客户端的 JSON-RPC 请求。
-
配置 MCP 客户端: 在你的 MCP 客户端(例如 Claude)中,根据上面提供的 '服务器配置' 信息配置 'mcpServers'。
-
通过客户端调用工具: 在 MCP 客户端中,你可以通过以下工具名称和参数来调用 Polars API 文档搜索服务器的功能:
- 'list_polars_components()': 列出所有可用的 Polars API 组件。无需参数。
- 'search_polars_docs(api_refs: list[str] | None, query: str | None, max_results: int = 1000)': 搜索 Polars API 文档。
- 'api_refs': 可选参数,API 引用列表,例如 '["DataFrame"]' 或 '["Expr.add"]'。
- 'query': 可选参数,关键词查询字符串,例如 '"join"'。
- 'max_results': 可选参数,最大返回结果数量,默认为 1000。
- 'verify_polars_api(api_ref: str)': 验证 Polars API 引用是否有效。
- 'api_ref': 要验证的 API 引用字符串,例如 '"DataFrame.filter"'。
LLM 可以根据这些工具的描述和参数,生成合适的 JSON-RPC 请求来调用服务器的功能,从而检索 Polars API 文档信息。
示例: 在支持 MCP 协议的 LLM 应用中,你可以指示 LLM 使用 'search_polars_docs' 工具,并提供关键词 "读取 CSV 文件" 或 API 引用 "pl.read_csv",来查询 Polars 库中读取 CSV 文件的相关 API 文档。
信息
分类
开发者工具