当前位置: 首页 > ds >正文

C#实现自己的MCP Client

市面上,有很多免费Client客户端。

虽然说,这些Client客户端可以满足我们大部分的需求,但是在实际企业业务场景中,免费的Client无法全部满足我们的需求。

下面我们用C# 实现MCP Client。

一、新建控制台项目

新建项目

图片

框架选择.Net 8

图片

二、添加MCP SDK

添加依赖库:ModelContextProtocol,版本为:最新预发行版 0.1.0-preview.13,添加的时候记得勾选:包括预发行版。

图片

这个是官方提供的C#版本的SDK,官网:https://modelcontextprotocol.io/introduction。

三、实现客户端

下面代码,创建一个SSE客户端实例,并获取工具列表。

using ModelContextProtocol.Client; // 包含 McpClientFactory 和 McpClient 相关定义
using ModelContextProtocol.Protocol.Transport; // 包含传输层相关类,如 SseClientTransport
// 创建一个 SSE(Server-Sent Events)客户端传输配置实例
var config = new SseClientTransport(// 配置传输选项,指定服务端点(Endpoint)new SseClientTransportOptions(){// 设置远程服务器的 URI 地址  (记得替换真实的地址,从魔搭MCP广场获取)Endpoint = new Uri("https://mcp.api-inference.modelscope.cn/sse/215e9461d2xxxxx")}
);
// 使用配置创建 MCP 客户端实例
var client = await McpClientFactory.CreateAsync(config);
// 调用客户端的 ListToolsAsync 方法,获取可用工具列表
var listToolsResult = await client.ListToolsAsync();
Console.WriteLine("功能列表:");
// 遍历工具列表,并逐个输出到控制台
foreach (var tool in listToolsResult)
{Console.WriteLine($"  名称:{tool.Name},说明:{tool.Description}" );
}

运行效果如下,Fetch网页内容抓取,提供的工具列表。

图片

这里MCP Server用的协议是Sse,Stdio协议实现,等后续文章自定义MCP Server会讲到。

官方也有提供C# 实现客户端的例子:

https://modelcontextprotocol.io/quickstart/client#c。

- End -

推荐阅读

盘点11个.Net比较流行的开源的ORM框架

盘点6个WebAPI+Vue前后端分离的.Net开源项目

Duplicati:一款跨平台的备份客户端,支持加密、增量、压缩的备份存储在云存储服务和远程文件服务器

一个简单又好用的.Net版本.env文件读写操作库

盘点4个浏览器插件相关的.Net开源项目

http://www.xdnf.cn/news/7862.html

相关文章:

  • CSS、SCSS 和 SASS 的语法差异
  • 将VMware上的虚拟机和当前电脑上的Wifi网卡处在同一个局域网下,实现同一个局域网下实现共享
  • 07SpringMVC底层形象解析
  • 2022年下半年信息系统项目管理师——综合知识真题及答案(5)
  • 使用Vite创建一个动态网页的前端项目
  • 1.0 Epson数据类型以及函数的传值与传址
  • 微信小程序中,解决lottie动画在真机不显示的问题
  • CSDN gitcode代码推送
  • 博主总结框架
  • RISC-V 开发板 MUSE Pi Pro CSI测试,一把点亮ov5647摄像头
  • R语言学习--Day05--绘图技巧
  • .NET外挂系列:5. harmony 中补丁参数的有趣玩法(下)
  • 野火鲁班猫(arrch64架构debian)从零实现用MobileFaceNet算法进行实时人脸识别(四)安装RKNN Toolkit Lite2
  • IP地址详解
  • vue调后台接口
  • 【5.19-5.26学习周报】
  • RPA浪潮来袭,职业竞争的新风口已至?
  • HOT100(二叉树)
  • 大语言模型 16 - Manus 超强智能体 Prompt分析 原理分析 包含工具列表分析
  • Python数据库编程案例
  • 2022CCPC吉林省赛长春邀请赛 Java 做题记录
  • 软考软件评测师—— 操作系统综合知识
  • RedissonClient主要功能概述
  • 黑马点评相关知识总结
  • 大模型会话窗口为什么对最新和最久记忆表现较好
  • 13 分钟讲解所有知名 Python 库/模块
  • 命名常量集合接口INamedConstantCollection<T>实现
  • 顶级流媒体服务商 Spotify 2025.04 故障复盘报告,吃他人的堑长自己的智
  • 4.8 加密模块
  • 无人机报警器360°检测技术分析!