.NET开发MCP服务教程以及接入Dify的演示

本文原始出处:公众号:Dotnet Dancer

作者:Wesky

不写前言和介绍,直接动手吧。各种介绍网上多的是。

创建一个基于.NET 8的webapi项目

安装ModelContextProtocol.AspNetCore 包,由于目前【当前日期:2025年4月27日】只有预览版本,所以需要勾选预览版才能搜索到。

开发一个工具类,用于给MCP客户端调用时候,用于应用我们开发的MCP服务功能。返回控制台一个hello world,也返回给客户端hello world

启动项里面,注册MCP服务以及上面的工具类,并开放端口,例如我本地指定9081端口。这些操作,会自动开放Http接口,以及SSE接口。目前MCP服务最常用的就是SSE接口和STDIO接口。此处咱们使用SSE接口,因为几乎所有常见客户端都可以支持SSE。

启动MCP服务,浏览器输入 http://MCP服务IP:端口/sse 输出类似下面内容,说明MCP服务启动成功。

下面我在Dify上面做个测试,在Dify上面使用sse工具,进行配置授权,授权链接配置以后,可以发现控制台输出了一些链接测试的内容。

Dify上的SSE工具配置内容参考:

代码语言:javascript代码运行次数:0运行复制
{  "server_name1": 
    {    
    "url": "
http://MCP服务1:服务1端口/sse
",
    "headers": {}, "timeout": 60,
    "sse_read_timeout": 300
    },
    "server_name2": 
    {    
    "url": "
http://MCP服务2:服务2端口/sse
",
    "headers": {}, "timeout": 60,
    "sse_read_timeout": 300
    }
}

创建一个Dify工作流,调用MCP工具,工具名称为我们上面定义的Test,参数为空,进行调用,发现可以正常调用,并且控制台也返回了Hello World,Dify也识别到返回值 Hello World,说明测试成功,MCP服务端测试OK。 如果需要本文的演示源码,公众号内回复:MCP001 即可获取。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。原始发表:2025-04-27,如有侵权请联系 cloudcommunity@tencent 删除服务工具教程接口开发