Skip to content

πŸš€ Instantly transform any OpenAPI/Swagger schema into a production-ready Model Context Protocol (MCP) server! πŸ€–βœ¨ Bridge your APIs with LLMs securely and effortlessly.

License

Notifications You must be signed in to change notification settings

tomer1983/swagger2mcp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Swagger2MCP

CI Pipeline License: MIT TypeScript Docker React PRs Welcome

Transform OpenAPI/Swagger specifications into Model Context Protocol (MCP) servers instantly.

πŸš€ Swagger2MCP is a powerful tool ensuring LLMs can securely and accurately interact with your APIs. Upload a schema or crawl a documentation site, and get a fully functional, type-safe MCP server.

Swagger2MCP Home Dashboard

✨ Features

  • πŸ“€ Drag & Drop Upload: Support for OpenAPI v2/v3 JSON/YAML files.
  • 🌐 Intelligent Web Crawling: Point to any documentation URL and let our crawler discover schemas.
  • πŸ”§ Automatic Code Generation: Production-ready TypeScript MCP servers.
  • πŸ“¦ One-Click Export: Push directly to GitHub / GitLab or download as ZIP.
  • πŸ” Secure Management: Store API tokens and configurations securely with audit logging.
  • 🐳 Dockerized: Deploy anywhere with a single docker-compose up.
  • πŸ“Š Job Tracking: Real-time progress monitoring for long-running crawling jobs.

πŸš€ Quick Start

Prerequisites

  • Docker & Docker Compose installed.
  • Node.js 18+ (only if running locally without Docker).

Running with Docker (Recommended)

# Clone the repository
git clone https://github.com/tomer1983/swagger2mcp.git
cd swagger2mcp

# Start the application
docker-compose up

Visit the application at http://localhost:5173.

πŸ”’ Production Deployment Checklist

Before deploying to production, ensure you complete the following critical security steps:

  • βœ… Change JWT_SECRET - Generate a strong, unique secret key for JWT token signing
  • βœ… Set strong passwords - Use complex passwords for all database and service accounts
  • βœ… Configure CORS - Restrict CORS to only trusted domains in production
  • βœ… Enable HTTPS - Always use SSL/TLS certificates for encrypted communication
  • βœ… Review environment variables - Ensure all .env values are production-ready
  • βœ… Update default credentials - Change all default usernames and passwords
  • βœ… Enable security headers - Configure appropriate HTTP security headers
  • βœ… Set up monitoring - Implement logging and monitoring solutions

See docs/PRODUCTION_DEPLOYMENT_CHECKLIST.md for detailed deployment instructions.

πŸ“Έ Screenshots

Dashboard Settings & configuration
Dashboard Settings

πŸ“š Documentation

☸️ Kubernetes Deployment

Deploy swagger2mcp to any Kubernetes cluster:

Using Manifests

kubectl apply -f k8s/namespace.yaml
kubectl apply -f k8s/

Using Helm

helm install swagger2mcp ./charts/swagger2mcp --namespace swagger2mcp --create-namespace

See the full Kubernetes guide for detailed instructions.

πŸ—οΈ Architecture

Swagger2MCP is built with a modern tech stack designed for reliability and scalability:

graph LR
    A[Frontend React] -->|REST API| B[Backend Express]
    B -->|Jobs| C[Redis Queue]
    C -->|Process| D[Worker Service]
    B -->|Data| E[PostgreSQL]
    D -->|Updates| E
Loading
  • Frontend: React, Vite, TailwindCSS, Shadcn UI
  • Backend: Node.js, Express, Prisma ORM
  • Infrastructure: Docker, Nginx (optional), BullMQ (Redis)

🀝 Contributing

We welcome contributions! Please see our Contributing Guidelines for details.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

πŸ”’ Security

For security concerns, please refer to our Security Policy.

πŸ“œ License

Distributed under the MIT License. See LICENSE for more information.

πŸ’¬ Community


Built with ❀️ by the Swagger2MCP Team

About

πŸš€ Instantly transform any OpenAPI/Swagger schema into a production-ready Model Context Protocol (MCP) server! πŸ€–βœ¨ Bridge your APIs with LLMs securely and effortlessly.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

No packages published

Contributors 5

Languages