appdog
Compose and generate effortlessly MCP servers from any OpenAPI specifications
claude mcp add --transport stdio rodolphebarbanneau-appdog uvx appdog
How to use
AppDog is a Python-based toolchain that automates the creation of fully typed API clients from OpenAPI specs and can generate MCP servers to interact with those clients. The MCP server that AppDog can generate allows you to compose multiple API clients into a single server runtime, enabling you to expose a unified API surface backed by the generated clients. Typical use involves generating an MCP server file for your registered API clients and then running that server in development or production modes. You can invoke AppDog’s MCP features to install the server, run it directly, or develop with an inspector. The available tools let you initialize a project, add or manage API clients, lock and sync API specifications, and generate an MCP server that wires together your clients with a simple MCP lifecycle.
How to install
Prerequisites
- Python 3.8+ (recommended) with pip
- A command launcher for local development (suggested: uv or uvx via the uv CLI, see below)
Installation steps
- Ensure you have Python and a tooling launcher installed. If you don’t have uv available, install it via pipx (recommended):
pipx ensurepath
pipx install uv
- Install AppDog using the launcher provided by your environment (examples use the UV-based workflow mentioned in the README):
uv add appdog
- Initialize your project (if not already initialized) and add API clients as needed:
appdog init
appdog add petstore --uri https://petstore3.swagger.io/api/v3/openapi.json
- Generate or run the MCP server for your registered APIs:
appdog mcp install -n "My API Server"
# Or run directly in prod/dev modes
appdog mcp run -n "My API Server"
appdog mcp dev -n "My API Server"
Note: If you are on Windows, you may need to adjust the generated Claude configuration manually as noted in the README.
Additional notes
Environment variables and authentication: AppDog supports configuring API credentials via environment variables, for example APPDOG_<CLIENT_NAME>TOKEN and APPDOG<CLIENT_NAME>_API_KEY. When generating MCP servers, you can customize environment dependencies via the mcp install command (env-var / env-file options). If you encounter issues on Windows, consult the Windows caveat in the README and consider manual adjustments to the generated Claude configuration. The MCP server is designed to work with FastMCP or other MCP clients; ensure your runtime environment includes the necessary Python dependencies and that the generated MCP server file is accessible to your deployment system.
Related MCP Servers
mcp -python-template
This template provides a streamlined foundation for building Model Context Protocol (MCP) servers in Python. It's designed to make AI-assisted development of MCP tools easier and more efficient.
fastmcp-builder
A comprehensive Claude Code skill for building production-ready MCP servers using FastMCP. Includes reference guides, runnable examples, and a complete implementation with OAuth, testing, and best practices.
MailNet
MailNet Mailing MCP Server
Cozmo
MCP server for DDL/Anki Cozmo robots using PyCozmo
lucius
A Model Context Protocol (MCP) server for Allure TestOps.
openapi-sync
OpenAPI Sync MCP Server - Parse, validate, and generate code from OpenAPI specs