本项目是一个收集了使用 @mcplug/server 框架和 MCP SDK 构建的公共 MCP 服务器模块的仓库。每个子目录通常包含一个独立的服务器实现,旨在为 LLM 客户端提供特定的工具、资源或 Prompt。
项目简介
该仓库汇集了各种 MCP 服务器实例,它们符合 Model Context Protocol (MCP) 标准,能够与兼容的 LLM 客户端进行交互。通过部署这些服务器,LLM 应用可以访问额外的功能,如进行网络搜索、生成图像、获取网页内容、转录 YouTube 视频等,从而极大地扩展其能力边界。
主要功能点
此仓库中的服务器模块提供了丰富的功能,具体取决于您选择运行哪个模块。常见的功能类型包括:
- 外部工具调用 (Tools): 允许 LLMs 执行预定义的操作,通常是通过调用第三方服务的 API 来获取动态数据(例如搜索结果、天气信息)或执行动作(例如生成图片)。
- 上下文资源访问 (Resources): 向 LLMs 提供结构化或非结构化的信息片段,这些信息可以用于增强对话的上下文理解或作为知识库使用。
- Prompt 模板定义 (Prompts): 定义了特定的文本生成或交互模式,帮助 LLMs 在特定任务中遵循指导或结构化输出。
- 标准化通信: 所有服务器都通过 JSON-RPC 协议与 MCP 客户端通信,确保了互操作性。
- 会话管理: 支持管理与不同客户端的会话状态。
安装步骤
本项目是一个包含多个服务器实现的集合。您需要克隆整个仓库,然后根据需要构建并运行其中的某个特定服务器模块。
- 克隆仓库: 打开终端或命令提示符,运行以下命令:
git clone https://github.com/mcplug-ai/servers.git - 进入仓库目录:
cd servers - 安装依赖: 项目使用 Node.js 和 npm/yarn/pnpm 进行管理。请确保您已安装 Node.js。然后安装项目依赖:
npm install # 或 yarn install 或 pnpm install - 配置环境变量: 许多服务器模块需要 API 密钥来调用外部服务(如 Firecrawl、OpenAI 等)。进入您想运行的服务器模块的目录(例如 'cd firecrawl-unofficial'),查找其 README 或代码以了解所需的环境变量。通常,您需要在该模块目录下创建一个 '.env' 文件并填入相应的密钥。
- 构建服务器模块: 进入您想运行的服务器模块的目录(例如 'cd firecrawl-unofficial'),然后运行构建命令。具体的命令可能因模块而异,但常见的是:
这会在模块目录下生成一个 'dist' 或 'build' 目录,其中包含可执行的 JavaScript 文件。npm run build
服务器配置 (为 MCP 客户端准备)
MCP 客户端需要配置服务器的启动信息才能与之连接和通信。配置通常是一个 JSON 对象。以下是一个典型的配置结构示例及其解释:
{ "name": "您的服务器友好名称", "command": "node", "args": [ "./path/to/您构建的服务器模块/dist/index.js" // 如果服务器需要其他启动参数,也会在这里列出 ], "env": { // 在此处设置服务器模块运行时所需的环境变量,例如API密钥 "FIRECRAWL_API_KEY": "从服务提供商处获取的API密钥", "OPENAI_API_KEY": "从服务提供商处获取的API密钥" // ... 其他所需的环境变量 }, "transport": "stdio" }
- 'name': 给您的客户端配置一个便于识别的名称,例如 "Firecrawl MCP 服务器" 或 "YouTube 转录服务器"。
- 'command': 启动服务器模块的可执行程序命令。对于基于 Node.js 的模块,通常是 '"node"'。
- 'args': 一个字符串数组,包含传递给 'command' 的参数。第一个参数通常是您在安装步骤中构建生成的服务器模块主文件的相对或绝对路径(例如 './firecrawl-unofficial/dist/index.js')。
- 'env': 一个可选的 JSON 对象,用于设置服务器模块运行时的环境变量。这是传递 API 密钥等敏感信息给服务器的安全方式。请根据您运行的具体模块填写相应的环境变量名和值。
- 'transport': 服务器与客户端通信所使用的协议。'"stdio"' (标准输入输出) 是一种常见的、用于在同一机器上或通过管道连接客户端和服务器的方式。
请根据您选择运行的服务器模块及其实际构建输出路径和所需的环境变量,替换上述配置中的占位符。然后将这个 JSON 配置添加到您的 MCP 客户端的服务器列表中。
基本使用方法
一旦 MCP 服务器模块被正确配置并在您的 MCP 客户端中可用,LLM 将能够自动发现该服务器提供的功能。在与 LLM 交互时,如果用户的请求需要调用该服务器提供的特定工具、访问资源或使用特定的 Prompt,LLM 客户端将通过 MCP 协议向服务器发送请求。服务器处理请求并返回结果,LLM 客户端再将结果整合到与用户的对话中。
具体如何触发工具调用、访问资源或使用 Prompt,取决于您的 LLM 客户端的设计和 LLM 本身的提示工程。通常,您只需要像与普通助手对话一样向 LLM 提出需求(例如“帮我搜索一下关于 [某个主题] 的最新信息”或“给我生成一张 [描述] 的图片”),LLM 会根据其能力决定是否调用已连接 MCP 服务器上的相应工具。
请参考您的 MCP 客户端文档,了解如何启用和管理 MCP 服务器连接。
信息
分类
网页与API