首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
首页
学习
活动
专区
圈层
工具
MCP广场
MCP广场 >详情页
servers2025-05-2697分享
github
旨在展示MCP协议的所有功能。它并不旨在成为一个实用的服务器,而是为MCP客户端的开发者提供的测试服务器。该服务器实现了提示、工具、资源、采样等功能,以展示MCP的能力。
By modelcontextprotocol
2025-05-2697
github
详情内容

全功能MCP服务器

这个MCP服务器旨在全面测试MCP协议的所有功能特性。它并非设计为实用型服务器,而是作为MCP客户端开发者的测试平台。该服务器实现了提示功能、工具调用、资源管理、采样操作等多种功能,以展示MCP协议的完整能力。

组件构成

工具集

  1. echo

    • 简单的回显工具,将输入消息原样返回
    • 输入参数:
      • message(字符串):需要回显的消息内容
    • 返回值:包含回显消息的文本内容
  2. add

    • 实现两个数字相加的计算功能
    • 输入参数:
      • a(数字):第一个加数
      • b(数字):第二个加数
    • 返回值:加法运算结果的文本表示
  3. longRunningOperation

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

    • 演示使用MCP采样功能进行大语言模型(LLM)采样的能力
    • 输入参数:
      • prompt(字符串):发送给LLM的提示文本
      • maxTokens(数字,默认值:100):生成的最大token数
    • 返回值:LLM生成的响应内容
  5. getTinyImage

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

    • 打印所有环境变量
    • 主要用于调试MCP服务器配置
    • 无需输入参数
    • 返回值:包含所有环境变量的JSON字符串
  7. annotatedMessage

    • 演示如何使用注释为内容提供元数据
    • 输入参数:
      • messageType(枚举:"error" | "success" | "debug"):消息类型,用于演示不同的注释模式
      • includeImage(布尔值,默认值:false):是否包含示例图像
    • 返回值:带有不同注释的内容:
      • 错误消息:高优先级(1.0),对用户和助手均可见
      • 成功消息:中等优先级(0.7),面向用户
      • 调试消息:低优先级(0.3),面向助手
      • 可选图像:中等优先级(0.5),面向用户
    • 示例注释:
      {
        "priority": 1.0,
        "audience": ["user", "assistant"]
      }
      
  8. getResourceReference

    • 返回可供MCP客户端使用的资源引用
    • 输入参数:
      • resourceId(数字,1-100):要引用的资源ID
    • 返回值:包含以下内容的资源引用:
      • 文本介绍
      • 嵌入式资源(类型为"resource")
      • 使用资源URI的文本说明

资源管理

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

  • 偶数编号资源:

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

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

资源特性:

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

提示功能

  1. simple_prompt

    • 不带参数的基本提示
    • 返回值:单轮消息交互
  2. complex_prompt

    • 展示参数处理的高级提示
    • 必需参数:
      • temperature(数字):温度设置
    • 可选参数:
      • style(字符串):输出风格偏好
    • 返回值:包含图像的多轮对话
  3. resource_prompt

    • 演示如何在提示中嵌入资源引用
    • 必需参数:
      • resourceId(数字):要嵌入的资源ID(1-100)
    • 返回值:包含嵌入式资源引用的多轮对话
    • 展示如何直接在提示消息中包含资源

日志功能

服务器每15秒发送随机级别的日志消息,例如:

{
  "method": "notifications/message",
  "params": {
	"level": "info",
	"data": "信息级别消息"
  }
}

与Claude Desktop配合使用(使用stdio传输协议

将以下内容添加到您的claude_desktop_config.json文件中:

{
  "mcpServers": {
    "everything": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-everything"
      ]
    }
  }
}

与VS Code配合使用

要快速安装,请使用下面的任一一键安装按钮...

使用NPX在VS Code中安装 使用NPX在VS Code Insider版中安装

使用Docker在VS Code中安装 使用Docker在VS Code Insider版中安装

如需手动安装,请将以下JSON块添加到VS Code的用户设置(JSON)文件中。您可以通过按下Ctrl + Shift + P并输入Preferences: Open User Settings (JSON)来执行此操作。

或者,您可以将其添加到工作区中的.vscode/mcp.json文件中。这将允许您与他人共享此配置。

注意:在.vscode/mcp.json文件中不需要mcp键。

NPX

{
  "mcp": {
    "servers": {
      "everything": {
        "command": "npx",
        "args": ["-y", "@modelcontextprotocol/server-everything"]
      }
    }
  }
}

使用HTTP+SSE传输协议从源代码运行(自2025-03-26起已弃用)

cd src/everything
npm install
npm run start:sse

使用可流式传输的HTTP传输协议从源代码运行

cd src/everything
npm install
npm run start:streamableHttp

作为已安装包运行

安装

npm install -g @modelcontextprotocol/server-everything@latest

运行默认(stdio)服务器

npx @modelcontextprotocol/server-everything

或显式指定stdio

npx @modelcontextprotocol/server-everything stdio

运行SSE服务器

npx @modelcontextprotocol/server-everything sse

运行可流式传输的HTTP服务器

npx @modelcontextprotocol/server-everything streamableHttp
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档