关于 MCP SSE Sample
演示 SSE 实现的 MCP 服务端示例,供了解 MCP 的开发者参考。项目包含工具、进度通知、采样、注释和日志等示例。
主要功能
- 01回显与加法工具
- 02长操作进度通知
- 03MCP 采样示例
- 04测试图像与环境变量输出
- 05带注释的消息和定时日志
适用场景
- 01参考 MCP SSE 服务端示例
- 02测试工具调用与进度更新
- 03查看采样和注释行为
MCP 相关
这是一个侧重 SSE 的 MCP 服务端示例,提供回显、加法、进度通知、采样、图像、环境变量输出和注释等示例工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
MCP SSE 示例
这是一个使用 SSE 的 MCP 服务示例。 这是一个展示 MCP 协议 SSE 实现的示例项目。
原始代码如下:
组件
工具
-
echo- 用于回显输入消息的简单工具
- 输入:
message(字符串):要回显的消息
- 返回:包含回显消息的文本内容
-
add- 将两个数字相加
- 输入:
a(数字):第一个数字b(数字):第二个数字
- 返回:加法运算的文本结果
-
longRunningOperation- 演示长时间操作的进度通知
- 输入:
duration(数字,默认值:10):持续时间(秒)steps(数字,默认值:5):进度步骤数
- 返回:包含持续时间和步骤数的完成消息
- 执行期间会发送进度通知
-
sampleLLM- 演示如何使用 MCP sampling 功能进行大模型采样
- 输入:
prompt(字符串):要发送给大模型的提示词maxTokens(数字,默认值:100):要生成的最大令牌数
- 返回:生成的大模型响应
-
getTinyImage- 返回一张小型测试图片
- 无需输入
- 返回:Base64 编码的 PNG 图片数据
-
printEnv- 输出所有环境变量
- 有助于调试 MCP 服务配置
- 无需输入
- 返回:包含所有环境变量的 JSON 字符串
-
annotatedMessage- 演示如何使用注释为内容提供元数据
- 输入:
messageType(枚举:"error" | "success" | "debug"):消息类型,用于演示不同的注释模式includeImage(布尔值,默认值:false):是否包含示例图片
- 返回:包含不同注释的内容:
- 错误消息:高优先级(1.0),面向用户和助手
- 成功消息:中优先级(0.7),面向用户
- 调试消息:低优先级(0.3),面向助手
- 可选图片:中优先级(0.5),面向用户
- 注释示例:
{ "priority": 1.0, "audience": ["user", "assistant"] }
日志
服务每 15 秒发送一次随机级别的日志消息,例如:
{
"method": "notifications/message",
"params": {
"level": "info",
"data": "Info-level message"
}
}
使用方法
本地运行
# インストール
npm install
# ビルド
npm run build
# 実行(STDIOモード)
npm run start
# 実行(SSEモード)
npm run start:sse
在 Claude Desktop 中使用
请在 claude_desktop_config.json 中添加以下内容:
{
"mcpServers": {
"sse-sample": {
"command": "npx",
"args": [
"-y",
"mcp_sse_sample"
]
}
}
}
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。