Dotnet使用Aspire抓取MCP两端交互数据

问题现象
虽然MCP Server 集成了Aspire 用于获取遥测数据,但是实际运行过程中,希望查看对应与MCP Client 之间的交互数据,展示了请求访问日志,还满足不了需求。

解决办法
通过尝试与核对发现,客户端和服务端通过JsonRpc 进行数据通信,如果需要查看到对应的交互数据,需要配置本地日志的默认查看等级。默认为Information,而日志输出对象为ModelContextProtocol程序集,可以单独设置对应日志输出等级。
查看日志输出
默认输出Information。

设置日志过滤
设置ModelContextProtocol 日志过滤等级为Trace。
{"Logging": {"LogLevel": {"Default": "Information","Microsoft.AspNetCore": "Warning","ModelContextProtocol": "Trace"}}
}
重新运行AppHost。

查看控制台日志
Mcp Client客户端访问Mcp Server。

查看结构化日志
查看Aspire面板中结构化日志,可查看对应Message 信息。

