跟着官方文档一步步来,可以跑起来直接用。
可想要本地调试Tools该怎样操作呢?
请参考以下步骤 👇
前期准备:
- .Net 10(官方文档要求,提前安装)
- MCP Inspector v0.17.2(调试使用)
- VisualStudio 2022(调试使用)
方法一:stdio模式,附加进程
1、运行Windows-MCP.Net
clone代码至本地,设置启动项Windows-MCP,默认Debug模式下直接运行。
代码运行弹出控制台窗口,记住以下信息:
2、运行MCP Inspector
cmd命令行:npx @modelcontextprotocol/inspector Windows-MCP.Net
没错,这里就用到控制台窗口中的ServerName
直接使用命令:npx @modelcontextprotocol/inspector也ok,参数可以后面补充。
回车运行。会打开默认浏览器,页面显示如下👇,说明MCP Inspector已经跑起来了。
此时,控制台出现如下内容:
- token:后面在Inspector中调试时配置auth
- running at:Inspector的运行地址,如果不小心关闭浏览器,可按此url重新打开
注:Inspector的运行环境是临时的,如果运行npx后没有像👆控制台这样显示,而是询问是否要继续,就又双在配置环境,放心大胆地输入“y”,等待即可。
3、配置MCP Inspector
回到MCP Inspector的界面。
界面各模块功能可参考官方文档说明:Inspector - MCP 中文文档
、
这里先说几个需要咱们自己调整的:
- Transport Type:请求方式,咱们Windows-MCP.Net使用stdio,不用修改
- Environment Variables:环境变量,下拉展开。需要修改变量PATH为上文👆源码控制台中print的地址“Content root Path”。这里=
E:\Resp\Windows-MCP.Net\src\Windows-MCP.Net\bin\Debug\net9.0 - Authentication:鉴权参数,下拉展开。需要将token配置为上文👆Inspector控制台print的token。
然后"Connect"连接。
连接成功!点击“List Tools”即可查看Windows-MCP.Net中提供的所有工具啦!
此时传参运行Tools是不会落到断点,它只是启动了MCP进程而已。
接下来就是最后一步————
4、附加到进程
回到我们的源码这一趴。
VS还在运行状态,点击调试——附加到进程——进程选择Windows-MCP.Net.exe
回到Inspector界面,调试Tool(这里以get_current_brightness为例),会发现代码落在断点上了!!!
方法二:Http模式
1、安装Nuget包
删除Nuget包ModelContextProtocol
安装Nuget包ModelContextProtocol.AspNetCore
2、修改主文件
修改program.cs文件
- 注册builder
- 指定Http方式
- 指定本地端口号
//var builder = Host.CreateApplicationBuilder(args);
var builder = WebApplication.CreateBuilder(args);
// Configure all logs to go to stderr (stdout is used for the MCP protocol messages).
builder.Logging.AddConsole(o => o.LogToStandardErrorThreshold = LogLevel.Trace);
// Add the MCP services: the transport to use (stdio) and the tools to register.
builder.Services
//……
.AddMcpServer()
//.WithStdioServerTransport()
.WithHttpTransport()
.WithToolsFromAssembly(Assembly.GetExecutingAssembly())
;
//await builder.Build().RunAsync();
var app = builder.Build();
app.MapMcp();
await app.RunAsync($"http://127.0.0.1:8080");
Debug运行!控制台输出如下:
3、启动MCP Inspector
cmd命令行:npx @modelcontextprotocol/inspector
浏览器MCP Inspector页面中配置:
- 修改连接方式为Http
- 指定url
点击"Connect"连接成功!
后面就可以断点调试了!
OK,指北结束,感谢道友观看!
顺手附上SSE模式下的运行命令——
附:SSE模式运行
源码cmd
npx -y supergateway --port 8000 --stdio "dotnet run --project E:/Windows-MCP.Net/src/Windows-MCP.Net/Windows-MCP.Net.csproj"
MCP Inspector cmd
npx @modelcontextprotocol/inspector --transport http --server-url=http://localhost:8080
MCP Inspector 配参