返回 MCP 目录
public公开dns本地运行

Monkey

一个基于.NET 9.0的MCP服务器实现,提供模型驱动系统的通信协议和工具集成。

article

README

🚀 猴子 - 模型上下文协议(MCP)服务器

这是一个使用 .NET 9.0 实现的模型上下文协议 (MCP) 服务器。MCP 服务器提供了一种通信协议,用于在基于模型的系统中各组件之间的交互。此实现展示了如何使用自定义工具和服务设置一个基本的 MCP 服务器。

🚀 快速开始

尝试运行

在 VS Code 中配置(使用 GitHub Copilot、Claude 桌面或其他 MCP 客户端):

{
    "inputs": [],
    "servers": {
        "monkeymcp": {
            "command": "docker",
            "args": [
                "run",
                "-i",
                "--rm",
                "jamesmontemagno/monkeymcp"
            ],
            "env": {}
        }
    }
}

运行说明

在终端窗口中运行以下命令来启动 MCP 服务器:

dotnet run --project ./MCP/Server.csproj

✨ 主要特性

核心组件

  • MCP 服务器:使用 ModelContextProtocol 库(版本 0.1.0-preview.2)构建。
  • 标准输入输出传输:通过 stdio 与客户端通信。
  • 自定义工具集成:包含创建和注册 MCP 工具的示例。

服务

  • MonkeyService:一个样例服务,从 API 端点获取猴子数据。
    • 提供方法以检索所有可用猴子或按名称查找特定猴子的信息。
    • 具有缓存功能以提高性能。

可用工具

服务器暴露了几个可以由客户端调用的工具:

猴子工具

  • GetMonkeys:返回 JSON 序列化后的所有猴子列表。
  • GetMonkey:根据名称获取特定猴子的信息。

回显工具

  • Echo:一个简单的工具,回显提供的消息,并在前面加上“hello”前缀。

📦 安装指南

文档未提及具体安装步骤,你可根据运行说明启动服务器。

💻 使用示例

客户端配置示例(C#)

var configuration = new ConfigurationBuilder()
    .AddJsonFile("client.json")
    .Build();

var mcpClient = new McpClient(configuration);
await mcpClient.StartAsync();

📚 详细文档

配置选项

主机配置

服务器使用 Microsoft.Extensions.Hosting(版本 9.0.3)进行配置:

  • 支持从多个来源(JSON、环境变量、命令行)加载配置。
  • 提供依赖注入服务的功能。
  • 具备日志记录能力。

日志提供程序选项

有多种日志提供程序可用:

  • 控制台:输出到标准输出。
  • 调试:用于调试目的的日志。
  • 文件:将日志写入文件中。
  • 事件源:通过事件源进行日志记录。

延伸服务器功能

如果需要更高级的功能,可以参考客户端配置示例(C#)来扩展。

🔧 技术细节

项目结构

  • MonkeyService.cs:实现获取猴子数据的服务。
  • MonkeyTools.cs:MCP 工具,用于访问猴子数据。
  • Program.cs:配置并启动 MCP 服务器的入口点。

依赖项

  • Microsoft.Extensions.Hosting(9.0.3):提供主机基础结构。
  • ModelContextProtocol(0.1.0-preview.2):MCP 服务器实现。
  • System.Text.Json(9.0.3):用于 JSON 的序列化和反序列化。

📄 许可证

此项目在 MIT License 下可用。

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端