Command Palette

Search for a command to run...

UnylyUnyly
Browse all

Openapi.client

FreeNot checked

OpenAPI Client is a toolkit that helps you create HTTP clients for external APIs based on their OpenAPI specifications. It simplifies the process of consuming a

GitHubEmbed

About

OpenAPI Client is a toolkit that helps you create HTTP clients for external APIs based on their OpenAPI specifications. It simplifies the process of consuming and interacting with various web services.

README

Created with ❤ in Poland by lepo.co and the awesome open-source community.
OpenAPI Client is a modern toolkit for developers working with OpenAPI/Swagger specifications. It provides multiple tools to simplify the creation, inspection, validation, and integration of OpenAPI clients across .NET projects and MCP (Model Context Protocol) environments.

🧰 What's in this repo?

This repository contains a suite of OpenAPI tools designed to support different workflows:

Tool Description
🧠 .NET Source Generator Generates C# HTTP clients directly from OpenAPI JSON/YAML files at build time.
💻 .NET CLI Tool Command-line tool to generate clients from OpenAPI definitions manually.
🛰️ MCP Server Containerized server with built-in tools for working with OpenAPI specs.

🚀 MCP Server Tools

The MCP Server is the central piece of this toolkit. It runs as a standalone container or inside an MCP setup and exposes tools for working with OpenAPI documents.

🛠️ Available Server Tools

Tool Description
get_list_of_operations Lists all operation IDs from a given OpenAPI or Swagger JSON document.
get_known_responses Lists all known responses for given operation IDs from a OpenAPI or Swagger JSON document.
validate_document Validates the structure and syntax of an OpenAPI JSON document.
generate_curl_command Generates a cURL command for a specific operation ID.
create_csharp_snippet Creates a simple HTTP request for a given operation ID.

🐳 Run the server with Docker

Build the image:

docker buildx build ./ -t mcp/openapi --no-cache
# or
dotnet publish ./src/OpenApi.Client.Mcp/OpenApi.Client.Mcp.csproj -c Release /t:PublishContainer

Run the container:

docker run -d -i --rm --name mcp-openapi mcp/openapi
# or for HTTP mode:
docker run -d -i --rm --name mcp-openapi mcp/openapi -e MODE=Http -p 64622:8080

Example MCP config (.mcp.json):

{
  "servers": {
    "openapi": {
      "type": "stdio",
      "command": "docker",
      "args": ["run", "-i", "--rm", "mcp/openapi"]
    }
  },
  "inputs": []
}

📦 NuGet Package (Source Generator)

OpenApiClient is available as NuGet package on NuGet.org:
https://www.nuget.org/packages/OpenApiClient

Install the package to enable automatic OpenAPI client generation:

dotnet add package OpenApiClient

, or package manager console:

NuGet\Install-Package OpenApiClient

In your .csproj:

<ItemGroup>
  <AdditionalFiles Include="google.youtube.api.json" />
</ItemGroup>

Define a client:

[OpenApiClient("google.youtube.api")]
public partial class YouTubeClient;

Use it:

var client = new YouTubeClient(new HttpClient());
var subs = await client.SubscribersCountAsync("mychannel", CancellationToken.None);

Known limitations

Since we are using the generated internal OpenApiAttribute as a marker, conflicts may occur when we use InternalsVisibleTo.

We found the use of nullable essential, so C# 8.0 is required.

💻 .NET CLI Tool

Generate OpenAPI clients from the terminal:

dotnet tool install --global OpenApiClient.Cli
dotnet openapi generate ./google.youtube.api.json --output ./clients/YouTubeClient.cs --namespace Google.YouTube --classname YouTubeClient

OpenAPI

OpenAPI specification is available at:
https://github.com/OAI/OpenAPI-Specification

Code of Conduct

This project has adopted the code of conduct defined by the Contributor Covenant to clarify expected behavior in our community.

License

OpenAPI Client is free and open source software licensed under MIT License. You can use it in private and commercial projects.
Keep in mind that you must include a copy of the license in your project.

from github.com/lepoco/openapi.client

Installing Openapi.client

This server has no published package — it is built from source. Open the repository and follow its README.

▸ github.com/lepoco/openapi.client

FAQ

Is Openapi.client MCP free?

Yes, Openapi.client MCP is free — one-click install via Unyly at no cost.

Does Openapi.client need an API key?

No, Openapi.client runs without API keys or environment variables.

Is Openapi.client hosted or self-hosted?

Self-hosted: the server runs locally on your machine via the install command above.

How do I install Openapi.client in Claude Desktop, Claude Code or Cursor?

Open Openapi.client on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.

Related MCPs

Compare Openapi.client with

Not sure what to pick?

Find your stack in 60 seconds

Author?

Embed badge for your README

Browse similar

All ai MCPs