使用说明
MCP_样本
C# ASP.用NET Core创建MCP Sample
在开始项目之前
该项目是为学习MCP概念而创建的项目。
使用Codex 5.3版本创建了示例项目,并使用.net10版本
启动项目
使用VS Code时在终端输入以下命令
# 경로 지정이 안된 경우,
cd 프로젝트 경로
# 프로젝트 시작 (Aspire 프로젝트 시작)
dotnet run --project MCP_Sample.AppHost
MCP测试方法
可以按照initialize->tools/list->tools/call的顺序进行测试
在VS Code终端上编写以下代码进行测试。但是,服务器运行一次,其余项目必须在不同的终端上运行
另外,下面的本地主机(http://127.0.0.1:5198)将其更改为服务器的实际运动位置
- 运行服务器
dotnet run --project MCP_Sample\MCP_Sample.csproj --urls http://127.0.0.1:5198
- initialize(创建会话)
$headers = @{
Accept = "application/json, text/event-stream"
"MCP-Protocol-Version" = "2025-06-18"
}
$initBody = '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"manual-test","version":"1.0"}}}'
$r = Invoke-WebRequest -Uri "http://127.0.0.1:5198/" -Method Post -Headers $headers -ContentType "application/json" -Body $initBody
$r.Content
$session = $r.Headers["Mcp-Session-Id"]
$session
- tools/list(查看tools列表)
$headers["Mcp-Session-Id"] = $session
$listBody = '{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}'
(Invoke-WebRequest -Uri "http://127.0.0.1:5198/" -Method Post -Headers $headers -ContentType "application/json" -Body $listBody).Content
测试/使用实际tools功能时,按如下方式调用
# multiply(곱하기)
$callBody = '{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"multiply","arguments":{"a":6,"b":7}}}'
(Invoke-WebRequest -Uri "http://127.0.0.1:5198/" -Method Post -Headers $headers -ContentType "application/json" -Body $callBody).Content
# divide(나누기)
$callBody = '{"jsonrpc":"2.0","id":4,"method":"tools/call","params":{"name":"divide","arguments":{"a":10,"b":4}}}'
(Invoke-WebRequest -Uri "http://127.0.0.1:5198/" -Method Post -Headers $headers -ContentType "application/json" -Body $callBody).Content
