M

MCP全功能测试服务器

@s2005/mcp-everything
0 Stars 88 次浏览 s2005 更新于 2026-08-23

一个实现MCP协议所有功能的测试服务器,包括提示、工具、资源和采样,旨在测试MCP客户端而非实际应用。

MCP 服务配置

复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用

{
  "mcpServers": {
    "everything": {
      "args": [
        "-y",
        "mcp-everything"
      ],
      "command": "npx"
    }
  }
}

服务介绍

MCP Everything

注意: 该项目是从 https://github.com/modelcontextprotocol/servers/tree/main/src/everything 中提取出来的,以创建一个独立的实现。

这个MCP服务器试图展示MCP协议的所有功能。它并不是为了成为一个有用的服务器,而是为MCP客户端构建者提供一个测试服务器。它实现了提示、工具、资源、采样等功能,以展示MCP的能力。

安装

本地安装

# Clone the repository
git clone https://github.com/modelcontextprotocol/mcp-everything.git
cd mcp-everything

# Install dependencies
npm install

# Build the project
npm run build

# Start the server
npm start

全局安装

# Install globally from npm
npm install -g mcp-everything

# Run the server
mcp-everything

Docker

# Build the Docker image
docker build -t mcp-everything .

# Run the container
docker run -it mcp-everything

与Claude桌面版一起使用

在你的claude_desktop_config.json中添加:

{
  "mcpServers": {
    "everything": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-everything"
      ]
    }
  }
}

组件

工具

  1. echo

    • 简单工具,用于回显输入的消息
    • 输入:
      • message (字符串): 要回显的消息
    • 返回: 包含回显消息的文本内容
  2. add

    • 将两个数字相加
    • 输入:
      • a (数字): 第一个数字
      • b (数字): 第二个数字
    • 返回: 相加结果的文本
  3. longRunningOperation

    • 演示长时间操作的进度通知
    • 输入:
      • duration (数字, 默认: 10): 持续时间(秒)
      • steps (数字, 默认: 5): 进度步骤数
    • 返回: 包含持续时间和步骤数的完成消息
    • 在执行过程中发送进度通知
  4. sampleLLM

    • 使用MCP采样功能演示LLM采样能力
    • 输入:
      • prompt (字符串): 发送给LLM的提示
      • maxTokens (数字, 默认: 100): 生成的最大令牌数
    • 返回: 生成的LLM响应
  5. getTinyImage

    • 返回一个小的测试图像
    • 不需要输入
    • 返回: Base64编码的PNG图像数据
  6. printEnv

    • 打印所有环境变量
    • 有助于调试MCP服务器配置
    • 不需要输入
    • 返回: 所有环境变量的JSON字符串
  7. annotatedMessage

    • 演示如何使用注解来提供关于内容的元数据
    • 输入:
      • messageType (枚举: "error" | "success" | "debug"): 消息类型,用于演示不同的注解模式
      • includeImage (布尔值, 默认: false): 是否包含示例图像
    • 返回: 带有不同注解的内容

资源

服务器提供了100个测试资源,分为两种格式:

  • 偶数编号的资源:

    • 纯文本格式
    • URI模式: test://static/resource/{even_number}
    • 内容: 简单的文本描述
  • 奇数编号的资源:

    • 二进制Blob格式
    • URI模式: test://static/resource/{odd_number}
    • 内容: Base64编码的二进制数据

资源特性:

  • 支持分页(每页10个项目)
  • 允许订阅资源更新
  • 演示资源模板
  • 每5秒自动更新已订阅的资源

提示

请继续提供更多的内容或具体信息以便进一步翻译。

  1. simple_prompt

    • 基本提示,无参数
    • 返回:单次消息交换
  2. complex_prompt

    • 高级提示,演示参数处理
    • 必需参数:
      • temperature (数字): 温度设置
    • 可选参数:
      • style (字符串): 输出样式偏好
    • 返回:包含图片的多轮对话

日志记录

服务器每15秒发送一次随机级别的日志消息,以演示MCP的日志功能。