JSON API调用工具

一个用于调用JsonPlaceholder API并获取数据的.NET工具,支持多种数据类型的单条和批量查询。

  • by bluetsys
  • C#
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 bluetsys/csharp-mcp-server-sample

使用说明

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<string> GetPostAsync(int id)

3.查询列表

要查询整个数据,请使用以下方法:

示例: GetPostListAsync

[McpServerTool]
[Description("Post 목록 조회 (JSON 반환)")]
public async Task<string> GetPostListAsync()

安装和运行

1.构建项目

pwsh
> dotnet build

2.运行

Program.cs在中运行MCP服务器。

var builder = Host.CreateApplicationBuilder(args);

builder.Logging.AddConsole(o => o.LogToStandardErrorThreshold = LogLevel.Trace);

builder.Services
    .AddMcpServer()
    .WithStdioServerTransport()
    .WithTools<SampleTools>();

await builder.Build().RunAsync();

3.使用MCP工具

SampleTools 您可以通过类中定义的MCP工具调用JsonPlaceholder API。

参考资料和建议

参考资料

用其他语言合成

要使用其他语言创建MCP服务器,请参阅以下文档:

  • SDK文档
  • 规范文档
  • 个人意见C#可以在10分钟内测试最慢的是python版本冲突等,大约需要1个小时

.vscode/mcp.json 文件说明

全部

  • 公共数据搜索:使用PHP HTTP编写的公共数据检索示例(源代码未公开)
  • McpServer示例:此示例文件的MCP设置(请参见源代码)

功能

  • 开始:运行相应的MCP。
  • 正在运行:查看相关MCP的日志。(可以显示错误日志等)
  • 停止:停止该MCP。
  • 重新开始:重新启动相应的MCP。(用于修改代码后重新应用)

详细信息 Visual Studio Code MCP服务器文档请参考。

结论

  • 在可以注册MCP Server的agent或LLM服务等中创建并激活各种MCP。

许可证

此项目受开源许可的约束。有关详细信息,请参阅LICENSE文件。