.NET 中的 MCP Sleep(或可理解为“在 .NET 中实现类似 Sleep 的 MCP 功能”,但直接翻译“MCP Sleep in .NET”为“在 .NET 中的 MCP Sleep”可能不够通顺,具体翻译需根据上下文调整,这里提供一个较为流畅的表达方式)
此存储库展示了两个用C#编写的等效模型上下文协议(MCP)服务器。一个将所有内容保存在一个单独的文件中,而另一个则打包为可安装的.NET全局工具。请根据您的环境选择适合的部署方式。
图示:没有这个MCP(多路复用器/控制器等,具体根据上下文确定),喜剧节奏的笑话就不到位了~
We can finally deliver a punchline with the right timing!
图表:有了这个MCP(多通道处理器/多媒体控制平台等,具体根据上下文确定),我们终于可以完美同步喜剧表演了!(包括时间回调和动作)
项目布局
single-file/mcp_sleep.cs– 一个独立的脚本,您可以使用(某个工具或环境)来运行它dotnet主机;当你希望省去项目设置步骤,而以引用完整路径为代价时,它非常有用。dotnet-tool/– 一个传统的.NET项目,可以被打包并安装为全局工具,为你提供一个简洁的命令名称(mcp-sleep)。
选项1:单文件脚本
- 解析出绝对路径至
single-file/mcp_sleep.cs. - 在您的MCP配置中注册服务器:
{
"mcpServers": {
"mcp-sleep-dotnet": {
"command": "dotnet",
"args": [
"{{ABSOLUTE_PATH}}/single-file/mcp_sleep.cs"
]
}
}
}替换 {{ABSOLUTE_PATH}} 与包含此存储库的目录一起。
- 从您的代理中调用该工具。例如:
User: Make a joke with a punch line. Wait 4 seconds before the punchline.
Assistant: Why don't scientists trust atoms?
mcp/mcp-sleep-dotnet ({"ms":4000}...)
Assistant: Because they make up everything!选项2:可安装的.NET工具
- 切换到工具项目:
cd dotnet-tool- 将工具打包(输出到
dotnet-tool/bin/Release):
dotnet pack McpSleep.Tool.csproj -c Release- 从新构建的包中全局安装该工具:
dotnet tool install --global McpSleep.Tool --add-source ./bin/Release- 重建后更新,请运行
dotnet tool uninstall --global McpSleep.Tool然后重复安装命令。
- 确保你的shell(以及任何GUI主机)能够找到该工具:
- macOS/Linux(zsh/bash): 添加 export PATH="$PATH:$HOME/.dotnet/tools" 到;向;对于;为了 ~/.zprofile 或者 ~/.bashrc然后重新加载shell(source ~/.zprofile 或者打开一个新的终端。 - Windows(PowerShell): 跑 dotnet tool install --global ... 从一个提升的提示开始并添加 %USERPROFILE%\.dotnet\tools 通过用户PATH(路径)至 *系统属性 → 环境变量*然后重新启动应用程序。
- 将你的MCP配置指向新的命令:
{
"mcpServers": {
"sleep": {
"command": "mcp-sleep",
"transport": { "stdio": {} }
}
}
}- 如果你的主机没有继承更新后的PATH,请使用绝对命令路径(例如: /Users//.dotnet/tools/mcp-sleep 在 macOS 上或 %USERPROFILE%\.dotnet\tools\mcp-sleep.exe (在Windows上)。 - 需要更多故障排除帮助(路径检查、本地工具清单等)?请参阅 TROUBLESHOOTING.md。
两个版本都暴露了相同的内容 sleep 一个工具,它会按请求的毫秒数延迟,并报告其睡眠时间。选择最适合您部署工作流程的那个。
