AI入坑: Trae 通过http调用.net 开发的 mcp server

1. 为什么要写这个

为什么要写这个内容,前几天开始加入到ai大军,通过一周的学习,看了国外网站、看了b站教程、看了抖音教程,居然发现都是开发在本地的mcp server。本地mcp没问题,个人使用都ok,或者通过npx下载工具也可。但是对于企业来说,很多都不能公开,又要公用。部署本地的mcp不是一个好的方式。

居然在各种搜索网站上对于http mcp资料很少很少。我又是.net开发的,对于这个资料就更少。shit!!!这里描述的http mcp,比如:trae 直接通过配置服务器地址,远程调用mcp。

javascript 复制代码
{
    "mcpServers": {
        "default-server": {
            "type": "streamable-http",
            "url": "http://localhost:5229",
            "note": "For Streamable HTTP connections, add this URL directly in your MCP Client"
        }
    }
}

为了得到这个配置,在模型上下文协议(MCP) - 文档 - Trae CNhttps://github.com/modelcontextprotocol/csharp-sdkdd

等官方网站都没有相应描述。对于一个初学者真的很抓狂。

2. mcp server 测试工具准备

在本地搭建好nodejs环境,需要执行一个命令来运行 MCP Inspector

bash 复制代码
npx -y @modelcontextprotocol/inspector npx @modelcontextprotocol/server-filesystem D:\

运行之后是这样的

这个可是一个好东西,可以测试开发的MCP

3. c#代码

官方地址说明

NuGet Gallery | ModelContextProtocol.AspNetCore 0.3.0-preview.4

完整抄过来就行

工程文件配置,包直接可还原。

XML 复制代码
<Project Sdk="Microsoft.NET.Sdk.Web">

	<PropertyGroup>
		<TargetFramework>net8.0</TargetFramework>
		<Nullable>enable</Nullable>
		<ImplicitUsings>enable</ImplicitUsings>
	</PropertyGroup>
	<ItemGroup>
		<PackageReference Include="ModelContextProtocol.AspNetCore" Version="0.3.0-preview.4" />
	</ItemGroup>
</Project>
cs 复制代码
// Program.cs
using ModelContextProtocol.Server;
using System.ComponentModel;

var builder = WebApplication.CreateBuilder(args);
builder.Services.AddMcpServer()
    .WithHttpTransport()
    .WithToolsFromAssembly();
var app = builder.Build();

app.MapMcp();

app.Run("http://localhost:5229");

[McpServerToolType]
public static class EchoTool
{
    [McpServerTool, Description("Echoes the message back to the client.")]
    public static string Echo(string message) => $"hello {message}";
}

直接运行即可。

4.总结了一个诀窍

直接让Trae:"设置python的全局源为清华大学的公共源",设置成功之后,python下载东西就非常快。新手必备!!!

相关推荐
捷米特研发一部8 小时前
Modbus TCP转RS485智能网关应用实例:集成工业测温器至云平台的数据采集方案
网络
kimi7048 小时前
HTTP的持续与非持续连接,HTTP报文格式
网络·网络协议·http
知北游天9 小时前
Linux网络:使用UDP实现网络通信(服务端&&客户端)
linux·网络·udp
半桔9 小时前
【网络编程】TCP 粘包处理:手动序列化反序列化与报头封装的完整方案
linux·网络·c++·网络协议·tcp/ip
ZeroNews内网穿透9 小时前
新版发布!“零讯”微信小程序版本更新
运维·服务器·网络·python·安全·微信小程序·小程序
会跑的葫芦怪10 小时前
Go语言net/http库使用详解
http·golang·iphone
太阳伞下的阿呆10 小时前
Http与WebSocket
websocket·网络协议·http
小白银子18 小时前
零基础从头教学Linux(Day 42)
linux·运维·服务器·网络·nginx
火星MARK18 小时前
如何配置 Ingress 的 SSL/TLS 证书?
网络·网络协议·ssl
看好多桂花树18 小时前
Nginx SSL/TLS 配置
网络·nginx·ssl