项目简介
AI Snippets MCP 服务器旨在通过标准化的 Model Context Protocol (MCP) 接口,让大型语言模型 (LLM) 客户端能够访问和管理一个精心组织的代码片段集合。这个服务器将每个代码片段及其相关的摘要和文档作为“资源”进行托管,并通过定义好的“工具”来响应客户端的请求,例如查询片段、获取代码或了解更多细节。它为 LLM 应用提供了一个结构化、可扩展的方式来利用预先编写的代码和知识。
主要功能点
- 获取片段摘要: 允许 LLM 客户端根据一个简短的查询,获取所有相关代码片段的名称及其详细摘要。摘要内容包括片段的功能、所用技术和语言,帮助 LLM 快速理解片段用途。
- 获取 Python 代码片段: 客户端可以根据准确的片段名称,直接获取该片段的完整 Python 源代码。这使得 LLM 能够直接访问并使用服务器托管的代码。
- 获取更多片段信息: 提供一个可选工具,根据片段名称返回其摘要和完整的 README 文档。这有助于 LLM 深入了解片段的背景、用途和详细说明。
安装步骤
该服务器推荐使用自动化脚本进行安装和管理,简化了部署过程:
- 准备环境: 确保您的系统已安装 'podman' 或 'docker' 等兼容 OCI 的容器运行时。
- 获取仓库: 克隆 'ai-snippets' 仓库到您的本地计算机。
- 运行安装脚本: 在克隆的仓库根目录下,运行 'install.sh' 脚本。该脚本会将 'ai-snippet-mcp' 管理器安装到您的系统 PATH 中。
- 推荐方式(随机端口):
此命令将把服务器安装到 '/usr/local/bin',并在启动时自动选择一个可用的随机端口。./install.sh /usr/local/bin - 可选方式(固定端口):
此命令将服务器安装到 '/usr/local/bin',并强制服务器在 '8080' 端口启动。./install.sh /usr/local/bin 8080
- 推荐方式(随机端口):
安装成功后,您将拥有一个 'ai-snippet-mcp' 命令,它负责自动管理服务器容器的生命周期(如从 Git 拉取最新代码、按需重建容器、启动容器等)。
服务器配置
此 MCP 服务器设计为自动生成其自身的连接配置信息。您可以通过运行安装脚本创建的 'ai-snippet-mcp' 命令来获取这些配置。当您运行 'ai-snippet-mcp' 时,它会输出一个 JSON 格式的字符串,该字符串包含了 MCP 客户端连接服务器所需的所有详细信息。
例如,当您运行 'ai-snippet-mcp' 时,可能会看到类似以下结构的输出(端口号会动态变化):
{ "name": "AI Snippet Server", "command": ["podman", "run", "--rm", "-p", "12345:8000", "ai-snippet-mcp:latest"], "args": [], "config": { "port": "12345", "host": "127.0.0.1", "transport": "streamable-http" } }
- 'name': 服务器的显示名称,方便 LLM 客户端识别。
- 'command': 启动 MCP 服务器进程的完整命令行指令。通常是一个容器运行命令,例如 'podman run ...'。MCP 客户端会使用此命令来启动或管理服务器实例。
- 'args': 传递给 'command' 命令的额外参数列表。
- 'config': 包含更详细的连接参数:
- 'port': 服务器实际监听的端口号。请注意,这是一个动态分配的端口,每次启动可能会不同。
- 'host': 服务器监听的主机地址,通常是 '127.0.0.1' 表示仅在本地计算机上可用。
- 'transport': 服务器使用的通信协议类型,这里是 'streamable-http',表明它通过 HTTP 进行基于流的通信。
MCP 客户端(如 Claude Code)能够解析这种 JSON 配置,并据此自动与服务器建立连接。您无需手动解析或配置这些信息,只需将 'ai-snippet-mcp' 的输出作为配置源传递给您的 MCP 客户端即可。
基本使用方法
- 启动服务器并获取配置: 打开您的终端,运行 'ai-snippet-mcp' 命令。这会自动启动服务器容器并将其 MCP 配置输出到标准输出。
- 连接 LLM 客户端: 将上一步骤获得的 JSON 配置传递给您的 MCP 兼容 LLM 客户端。例如,如果您使用 Claude Code,可以这样操作:
这条命令会执行 'ai-snippet-mcp',将其输出作为配置传递给 'claude' 客户端,从而建立连接。claude --mcp-config "$(ai-snippet-mcp)" - 与服务器交互: 一旦连接建立,您的 LLM 客户端就可以通过调用 MCP 服务器暴露的工具(如 'get_snippet_summaries'、'get_python_code_snippet'、'tell_me_more')来查询、检索和使用服务器上托管的代码片段。LLM 可以利用这些功能来获取所需代码、理解其用途或进一步生成基于这些代码的解决方案。
信息
分类
开发者工具