MCP睡眠工具

一个用于在.NET环境中实现精确时间延迟的MCP服务器工具,适用于需要精确时间控制的场景。

  • by jernejk
  • C#
  • 本地部署
  • 更新于
在 GitHub 查看 jernejk/mcp-sleep-dotnet

使用说明

.NET 中的 MCP Sleep(或可理解为“在 .NET 中实现类似 Sleep 的 MCP 功能”,但直接翻译“MCP Sleep in .NET”为“在 .NET 中的 MCP Sleep”可能不够通顺,具体翻译需根据上下文调整,这里提供一个较为流畅的表达方式)

此存储库展示了两个用C#编写的等效模型上下文协议(MCP)服务器。一个将所有内容保存在一个单独的文件中,而另一个则打包为可安装的.NET全局工具。请根据您的环境选择适合的部署方式。

图示:没有这个MCP(多路复用器/控制器等,具体根据上下文确定),喜剧节奏的笑话就不到位了~

图表:有了这个MCP(多通道处理器/多媒体控制平台等,具体根据上下文确定),我们终于可以完美同步喜剧表演了!(包括时间回调和动作)

项目布局

  • single-file/mcp_sleep.cs – 一个独立的脚本,您可以使用(某个工具或环境)来运行它 dotnet 主机;当你希望省去项目设置步骤,而以引用完整路径为代价时,它非常有用。
  • dotnet-tool/ – 一个传统的.NET项目,可以被打包并安装为全局工具,为你提供一个简洁的命令名称(mcp-sleep)。

选项1:单文件脚本

  1. 解析出绝对路径至 single-file/mcp_sleep.cs.
  2. 在您的MCP配置中注册服务器:
    {
      "mcpServers": {
        "mcp-sleep-dotnet": {
          "command": "dotnet",
          "args": [
            "{{ABSOLUTE_PATH}}/single-file/mcp_sleep.cs"
          ]
        }
      }
    }
    
    替换 {{ABSOLUTE_PATH}} 与包含此存储库的目录一起。
  3. 从您的代理中调用该工具。例如:
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工具

  1. 切换到工具项目:
    cd dotnet-tool
    
  2. 将工具打包(输出到 dotnet-tool/bin/Release):
    dotnet pack McpSleep.Tool.csproj -c Release
    
  3. 从新构建的包中全局安装该工具:
    dotnet tool install --global McpSleep.Tool --add-source ./bin/Release
    
  • 重建后更新,请运行 dotnet tool uninstall --global McpSleep.Tool然后重复安装命令。
  1. 确保你的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(路径)至 系统属性 → 环境变量然后重新启动应用程序。
  2. 将你的MCP配置指向新的命令:
    {
      "mcpServers": {
        "sleep": {
          "command": "mcp-sleep",
          "transport": { "stdio": {} }
        }
      }
    }
    
    • 如果你的主机没有继承更新后的PATH,请使用绝对命令路径(例如: /Users/<you>/.dotnet/tools/mcp-sleep 在 macOS 上或 %USERPROFILE%\.dotnet\tools\mcp-sleep.exe (在Windows上)。
    • 需要更多故障排除帮助(路径检查、本地工具清单等)?请参阅 TROUBLESHOOTING.md。

两个版本都暴露了相同的内容 sleep 一个工具,它会按请求的毫秒数延迟,并报告其睡眠时间。选择最适合您部署工作流程的那个。