话不多说,先附上源码地址:AIDotNet/Windows-MCP.Net: A .NET-based Windows desktop automation MCP (Model Context Protocol) server that provides AI assistants with the ability to interact with the Windows desktop environment.

跟着官方文档一步步来,可以跑起来直接用。

可想要本地调试Tools该怎样操作呢?

请参考以下步骤

前期准备:

  • .Net 10(官方文档要求,提前安装)
  • MCP Inspector v0.17.2(调试使用)
  • VisualStudio 2022(调试使用)

方法一:stdio模式,附加进程

1、运行Windows-MCP.Net

clone代码至本地,设置启动项Windows-MCP,默认Debug模式下直接运行。

image.png

代码运行弹出控制台窗口,记住以下信息:

image.png

2、运行MCP Inspector

cmd命令行:npx @modelcontextprotocol/inspector Windows-MCP.Net

回车运行。会打开默认浏览器,页面显示如下,说明MCP Inspector已经跑起来了。

image.png

此时,控制台出现如下内容:

  • token:后面在Inspector中调试时配置auth
  • running at:Inspector的运行地址,如果不小心关闭浏览器,可按此url重新打开

企业微信截图_1761631949943.png

3、配置MCP Inspector

回到MCP Inspector的界面。

image.png

这里先说几个需要咱们自己调整的:

  • Transport Type:请求方式,咱们Windows-MCP.Net使用stdio,不用修改
  • Environment Variables:环境变量,下拉展开。需要修改变量PATH为上文源码控制台中print的地址“Content root Path”。这里=E:RespWindows-MCP.NetsrcWindows-MCP.NetbinDebugnet9.0
  • Authentication:鉴权参数,下拉展开。需要将token配置为上文Inspector控制台print的token。

然后"Connect"连接。

连接成功!点击“List Tools”即可查看Windows-MCP.Net中提供的所有工具啦!

image.png

此时传参运行Tools是不会落到断点,它只是启动了MCP进程而已。

接下来就是最后一步————

4、附加到进程

回到我们的源码这一趴。

VS还在运行状态,点击调试——附加到进程——进程选择Windows-MCP.Net.exe

image.png

回到Inspector界面,调试Tool(这里以get_current_brightness为例),会发现代码落在断点上了!!!

image.png

方法二:Http模式

1、安装Nuget包

删除Nuget包ModelContextProtocol

安装Nuget包ModelContextProtocol.AspNetCore

image.png

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");

image.png

Debug运行!控制台输出如下:

image.png

3、启动MCP Inspector

cmd命令行:npx @modelcontextprotocol/inspector

浏览器MCP Inspector页面中配置:

  • 修改连接方式为Http
  • 指定url

企业微信截图_17617052883295.png

点击"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"

image.png

MCP Inspector cmd

npx @modelcontextprotocol/inspector --transport http --server-url=http://localhost:8080

MCP Inspector 配参

image.png

本站提供的所有下载资源均来自互联网,仅提供学习交流使用,版权归原作者所有。如需商业使用,请联系原作者获得授权。 如您发现有涉嫌侵权的内容,请联系我们 邮箱:[email protected]