Token导航 LogoToken导航

MCP Server · 运维云端

Dotnet MCP With Mcpsharp

一个完整的.NET解决方案,展示了如何使用MCPSharp库实现模型上下文协议(MCP),支持AI模型与外部工具之间的无缝通信。

未说明官方级别未说明来源级核验工具 1
错误处理C#类型安全

快速开始

公开资料没有提供安装命令,按仓库或官方文档接入。
作者 / 组织
SubhojeetNeogy
提供方
SubhojeetNeogy

工具数量

1

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

0

仓库热度

收录来源

1 个

MCP World

选型结论

Dotnet MCP With Mcpsharp 属于运维云端类 MCP Server,公开资料标注 1 个工具,通过传输方式未标注接入,客户端适配情况以官方文档为准,没有现成的安装命令;接入前先确认权限范围。

分类

运维云端

传输方式

未说明

认证方式

无需认证

部署方式

公开资料未说明

安装与配置

公开目录没有给出安装命令,需要按仓库 README安装;下面按同类条目的通用流程说明。

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    先确认运行方式

    公开资料没有标注传输方式,先看仓库 README,确认是本地进程还是远程地址。

  2. 2

    获取服务

    公开目录没有给出安装命令,按仓库 README里的步骤安装或获取服务。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 1 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

公开资料仍需确认:安装命令

详细介绍

🚀 .NET MCP与MCPSharp

一个完整的。NET解决方案演示 模型上下文协议(MCP) 使用MCPSharp库实现。本项目展示了如何在中创建MCP服务器和客户端。NET,实现AI模型和外部工具之间的无缝通信。

📋 目录

🎯 概述

此解决方案演示了完整的MCP实现,包括:

  • 🔧 MCP服务器:将数学运算作为MCP工具公开的计算器服务
  • 📱 MCP客户端:发现并使用MCP工具的客户端应用程序
  • 🔄 沟通:客户端和服务器之间基于JSON-RPC的通信
  • ⚡ 实时:具有适当错误处理的异步操作

主要特点

  • ✅ 工具发现:自动发现可用的MCP工具
  • ✅ 类型安全:强类型参数和返回值
  • ✅ 异步操作:完全异步/等待支持
  • ✅ 错误处理:全面的错误处理和验证
  • ✅ 可扩展:易于添加新工具和功能

🏗️ 建筑

graph TB
    A[MCP Client] -->|JSON-RPC| B[MCP Server]
    B --> C[Calculator Tool]
    C --> D[Addition Function]
    
    subgraph "Client Side"
        A1[Tool Discovery]
        A2[Tool Invocation]
        A3[Result Processing]
    end
    
    subgraph "Server Side"
        B1[Tool Registration]
        B2[Request Handling]
        B3[Response Generation]
    end
    
    A --> A1
    A --> A2
    A --> A3
    
    B --> B1
    B --> B2
    B --> B3

📁 项目结构

📦 Dotnet MCP with McpSharp/
├── 📁 McpClient/                    # MCP Client Application
│   ├── 📄 Program.cs                # Client entry point
│   ├── 📄 McpClient.csproj          # Client project file
│   └── 📁 bin/                      # Build output
├── 📁 McpServer/                    # MCP Server Application
│   ├── 📄 Program.cs                # Server entry point with tool registration
│   ├── 📄 McpServer.csproj          # Server project file
│   └── 📁 bin/                      # Build output
└── 📄 Dotnet_MCP_with_McpSharp.sln  # Solution file

🛠️ 先决条件

在运行此解决方案之前,请确保您已经:

  • .NET 9.0 SDK 或以后
  • Visual Studio 2022 或 Visual Studio Code C#扩展
  • Windows 10/11 (在Windows 10.0.22631上测试)

安装

  1. 安装。净9.0 SDK:
   # Download from: https://dotnet.microsoft.com/download/dotnet/9.0
  1. 验证安装:
   dotnet --version
   # Should output: 9.0.x or later

⚡ 快速开始

1.克隆和构建

# Clone the repository
git clone 
cd "Dotnet MCP with McpSharp"

# Restore packages
dotnet restore

# Build the solution
dotnet build

2.运行MCP服务器

# Navigate to server directory
cd McpServer

# Run the server
dotnet run

服务器将启动并注册计算器工具。您应该看到指示服务器正在运行的输出。

3.运行MCP客户端

# In a new terminal, navigate to client directory
cd McpClient

# Run the client
dotnet run

客户将:

  1. 🔍 从服务器中发现可用工具
  2. 📊 显示工具信息
  3. 🧮 使用示例参数执行添加工具
  4. 📋 显示结果

🔧 配置

服务器配置

MCP服务器配置在 McpServer/Program.cs:

MCPServer.Register();
await MCPServer.StartAsync(
    serverName: "SimpleMcp.Server",
    version: "v1.0.0"
);

客户端配置

MCP客户端已在中配置 McpClient/Program.cs:

var client = new MCPClient(
    name: "McpClient",
    version: "v1.0.0",
    server: "path/to/McpServer.exe"
);

⚠️ 重要:更新客户端配置中的服务器路径以匹配您的系统。

📚 使用示例

创建新的MCP工具

要向服务器添加新工具,请使用以下命令创建一个新类 McpTool 属性:

public class MathTool
{
    [McpTool(name: "multiply", Description = "Multiply two numbers")]
    public static int Multiply(
        [McpParameter(required: true, Description = "First number")] int a,
        [McpParameter(required: true, Description = "Second number")] int b)
    {
        return a * b;
    }
}

然后在中注册 Program.cs:

MCPServer.Register();

从客户端调用工具

// Discover available tools
List tools = await client.GetToolsAsync();

// Call a specific tool
var result = await client.CallToolAsync(
    name: "addition",
    parameters: new Dictionary
    {
        { "firstNumber", 15 },
        { "secondNumber", 25 }
    }
);

Console.WriteLine($"Result: {result.Content[0].Text}");

🔍 api参考

MCP客户端类

方法说明参数
GetToolsAsync()检索所有可用工具无
CallToolAsync()执行特定工具name, parameters

MCP服务器类

方法说明参数
Register()注册工具类工具类类型
StartAsync()启动MCP服务器serverName, version

属性

属性描述属性
McpTool将方法标记为MCP工具name, Description
McpParameter定义工具参数required, Description

🧪 测试

手动测试

  1. 启动服务器 并验证它是否正在运行
  2. 运行客户端 并检查输出
  3. 验证工具发现 显示正确的工具数量
  4. 测试工具执行 具有不同的参数

预期输出

服务器输出:

MCP Server started successfully
Tool registered: addition

客户端输出:

Available Tools: 1
Name: addition
Description: This tool will add two numbers.
Result: 15

📦 依赖项

核心依赖关系

包版本描述
MCPSharp1.0.11MCP实现。NET
System.Formats.Asn19.0.9ASN.1格式支持

目标框架

  • .NET 9.0 -具有现代C#功能的最新LTS版本

🚀 高级用法

自定义工具实现

public class WeatherTool
{
    [McpTool(name: "get_weather", Description = "Get current weather for a city")]
    public static async Task GetWeather(
        [McpParameter(required: true, Description = "City name")] string city)
    {
        // Implementation here
        return $"Weather in {city}: Sunny, 25°C";
    }
}

错误处理

try
{
    var result = await client.CallToolAsync("addition", parameters);
    Console.WriteLine($"Success: {result.Content[0].Text}");
}
catch (Exception ex)
{
    Console.WriteLine($"Error: {ex.Message}");
}

🤝 贡献

我们欢迎捐款!请按照以下步骤操作:

  1. 分叉 存储库
  2. 创建 特征分支(git checkout -b feature/amazing-feature)
  3. 提交 您的更改(git commit -m 'Add amazing feature')
  4. 推 到分行(git push origin feature/amazing-feature)
  5. 打开 拉取请求

开发指南

  • ✅ 遵循C#编码规范
  • ✅ 为公共API添加XML文档
  • ✅ 包括新功能的单元测试
  • ✅ 更新README.md以获取重大更改

📄 许可证

此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。

🆘 支持

如果您遇到任何问题或有疑问:

  1. 检查 这 问题 页
  2. 创建 一期有详细信息的新杂志
  3. 包含 系统信息和错误消息

______________________________________________________________________

由...制作❤️ 使用。NET和MCPSharp

工具与能力

工具数量

1

资源数量

0

提示词数量

0

能力标签

模型通信C#本地部署工具集成异步操作类型安全错误处理

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

看服务状态

查询容器、日志和监控指标,定位异常。

执行部署变更

在权限范围内触发发布、回滚和环境切换。

核对资源用量

汇总用量,找出闲置和超额的部分。

选择建议

值得选的地方

  • 只提供 1 个工具,职责集中,接入后不容易误操作。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • 公开资料没有可直接复制的安装命令,第一次接入要自己找入口。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在运维云端场景里让模型直接调用外部能力的人。
  • 愿意照着官方文档一步步配环境的人。

不太适合

  • 希望一条命令就装好、不想看文档的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
Dotnet MCP With Mcpsharp

MCP World · 本页

1未说明未标注1 个2026-05-17
Ui Tars Desktop 8a825770

MCP World

0stdio有1 个2026-05-17
Elie222 MCP

MCP World

0未说明未标注1 个2026-05-17
Arizeai Phoenix MCP

MCP World

0stdio有3 个2026-05-17
Unity MCP 87ee506e

MCP World

42HTTP有2 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

Dotnet MCP With Mcpsharp 怎么安装?

公开目录没有给出可以直接复制的安装命令,需要按仓库 README里的步骤安装;装好后写进客户端的 MCP 配置再重启。

Dotnet MCP With Mcpsharp 怎么在 Claude Desktop、Cursor 里配置?

它是传输方式未标注,客户端配置里要写启动命令和参数,运行环境是 未标注;保存后完全退出客户端再打开,配置才会生效。

Dotnet MCP With Mcpsharp 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

Dotnet MCP With Mcpsharp 需要 API Key 吗?

公开资料标注为无需认证,装好就能连;如果实际调用时报鉴权错误,按官方文档补上凭据。

Dotnet MCP With Mcpsharp 支持哪些客户端?

公开资料没有标注具体客户端;能配置本地 MCP 命令的客户端都能接,配置方式参照官方文档。

来源信息

继续浏览同类 MCP