Csharp MCP服务器示例
概要
Csharp MCP Server Sample是Json Place holder(https://jsonplaceholder.typicode.com/)提供通过调用API获取数据的实用程序。这个项目。在NET6或更高版本上运行,控制台应用程序或ASP。可以在NET Core项目中轻松集成和使用。
建议
- .NET 10.0 SDK
- Visual Studio Code
- 适用于Visual Studio Code的GitHub Copilot扩展
安装.NET 10.0 SDK 这里请参考。
主要功能
- 创建和管理用于JsonPlaceholder API调用的HttpClient
- 多个端点(
/posts,/comments,/albums,/photos,/todos,/users)的数据查询功能 - 支持单点查询和列表查询
支持的端点
| 端点 | 说明 | 单件查询方法 | 列表查询方法 |
|---|---|---|---|
/posts | 帖子数据 | GetPostAsync | GetPostListAsync |
/comments | 评论数据 | GetCommentAsync | GetCommentListAsync |
/albums | 专辑数据 | GetAlbumAsync | GetAlbumListAsync |
/photos | 图片数据 | GetPhotoAsync | GetPhotoListAsync |
/todos | 待办事宜(Todo)数据 | GetTodoAsync | GetTodoListAsync |
/users | 用户数据 | GetUserAsync | GetUserListAsync |
使用方法
1.创建HttpClient
CreateJsonPlaceholderClient 使用方法创建仅JsonPlaceholder的HttpClient。基本上 BaseAddress设置为JsonPlaceholder API,并应用公共标头。
private HttpClient CreateJsonPlaceholderClient(
TimeSpan? timeout = null,
string? userAgent = "JsonPlaceholderSample/1.0",
string? bearerToken = null,
SocketsHttpHandler? handler = null)2.单件查询
要查询特定ID的数据,请使用以下方法:
示例: GetPostAsync
[McpServerTool]
[Description("Post 단건 조회 (JSON 반환)")]
public async Task GetPostAsync(int id)3.查询列表
要查询整个数据,请使用以下方法:
示例: GetPostListAsync
[McpServerTool]
[Description("Post 목록 조회 (JSON 반환)")]
public async Task GetPostListAsync()安装和运行
1.构建项目
pwsh
> dotnet build2.运行
Program.cs在中运行MCP服务器。
var builder = Host.CreateApplicationBuilder(args);
builder.Logging.AddConsole(o => o.LogToStandardErrorThreshold = LogLevel.Trace);
builder.Services
.AddMcpServer()
.WithStdioServerTransport()
.WithTools();
await builder.Build().RunAsync();3.使用MCP工具
SampleTools 您可以通过类中定义的MCP工具调用JsonPlaceholder API。
参考资料和建议
参考资料
- 详细信息 Model Context Protocol官方网站请参考。
- 本源代码为 Microsoft官方文档创建时请参见。
- 以上文档的内容 相当于的MS官方文档。
用其他语言合成
要使用其他语言创建MCP服务器,请参阅以下文档:
.vscode/mcp.json 文件说明
全部
- 公共数据搜索:使用PHP HTTP编写的公共数据检索示例(源代码未公开)
- McpServer示例:此示例文件的MCP设置(请参见源代码)
功能
- 开始:运行相应的MCP。
- 正在运行:查看相关MCP的日志。(可以显示错误日志等)
- 停止:停止该MCP。
- 重新开始:重新启动相应的MCP。(用于修改代码后重新应用)
详细信息 Visual Studio Code MCP服务器文档请参考。
结论
- 在可以注册MCP Server的agent或LLM服务等中创建并激活各种MCP。
许可证
此项目受开源许可的约束。有关详细信息,请参阅LICENSE文件。
