SpecBridge

by tbosak

Not rated
GitHub

About

Automatically generates MCP tools from OpenAPI specifications by scanning a folder for spec files. No configuration is needed and it supports authentication via environment variables.

Details

Author
tbosak
Categories
Developer Tools

Setup

Install SpecBridge in your MCP client (Claude Desktop, Cursor, Windsurf, and others).

Repository: https://github.com/tbosak/specbridge

Follow the installation instructions in the repository README, then restart your MCP client.

- 🎯Zero Configuration: Filesystem is the interface - just drop OpenAPI specs in a folder
- 🔐Auto Authentication: Simple.envfile with{API_NAME}_API_KEYpattern
- 🏷️Namespace Isolation: Multiple APIs coexist cleanly (e.g.,petstore_getPet,github_getUser)
- 📝Full OpenAPI Support: Handles parameters, request bodies, authentication, and responses
- 🚀Multiple Transports: Support for stdio and HTTP streaming
- 🔍Built-in Debugging: List command to see loaded specs and tools

Drop any.json,.yaml, or.ymlOpenAPI specification files into your specs folder:

# Example: Download the Petstore spec curl -o ~/mcp-apis/petstore.json https://petstore3.swagger.io/api/v3/openapi.json

Create a.envfile in your specs folder:

# ~/mcp-apis/.env PETSTORE_API_KEY=your_api_key_here GITHUB_TOKEN=ghp_your_github_token OPENAI_API_KEY=sk-your_openai_key

For Claude Desktop or Cursor, add to your MCP configuration:

{ "mcpServers": { "specbridge": { "command": "specbridge", "args": ["--specs", "/path/to/your/specs/folder"] } } }
{ "mcpServers": { "specbridge": { "command": "npx", "args": ["-y", "specbridge", "--specs", "/absolute/path/to/your/specs"] } } }
# Default: stdio transport, current directory specbridge # Custom specs folder specbridge --specs ~/my-api-specs # HTTP transport mode specbridge --transport httpStream --port 8080
# List all loaded specifications and their tools specbridge list # List specs from custom folder specbridge list --specs ~/my-api-specs

The server automatically detects authentication from environment variables using these patterns:

The{API_NAME}is derived from the filename of your OpenAPI spec:

- petstore.jsonPETSTORE_API_KEY
- github-api.yamlGITHUB_TOKEN
- my_custom_api.ymlMYCUSTOMAPI_API_KEY

Tools are automatically named using this pattern:

- With operationId:{api_name}_{operationId}
- Without operationId:{api_name}_{method}_{path_segments}

- petstore_getPetById(from operationId)
- github_get_user_repos(generated fromGET /user/repos)

your-project/ ├── api-specs/ # Your OpenAPI specs folder │ ├── .env # Authentication credentials │ ├── petstore.json # OpenAPI spec files │ ├── github.yaml # │ └── custom-api.yml # └── mcp-config.json # MCP client configuration

Here's a minimal example that creates two tools:

# ~/mcp-apis/example.yaml openapi: 3.0.0 info: title: Example API version: 1.0.0 servers: - url: https://api.example.com paths: /users/{id}: get: operationId: getUser summary: Get user by ID parameters: - name: id in: path required: true schema: type: string responses: '200': description: User found /users: post: operationId: createUser summary: Create a new user requestBody: required: true content: application/json: schema: type: object properties: name: type: string email: type: string responses: '201': description: User created

-

Check that your OpenAPI specs are valid:

Ensure files have correct extensions (.json,.yaml,.yml)

Check the server logs for parsing errors

⚠️ Note:Specbridge works best when you use absolute paths (with no spaces) for the--specsargument and other file paths. Relative paths or paths containing spaces may cause issues on some platforms or with some MCP clients.
- Verify your.envfile is in the specs directory
- Check the naming pattern matches your spec filename
- Use the list command to verify auth configuration:

specbridge list

🔄 Tools not updating after spec changes?

- Restart the MCP server to reload the specs - Check file permissions - Restart the MCP client if needed
# Clone and install git clone https://github.com/TBosak/specbridge.git cd specbridge npm install # Build npm run build # Test locally npm run dev -- --specs ./examples

Contributions are welcome! Please feel free to submit issues and pull requests.

This is a web browser that enables your coding agent, such as Claude Code, to visit websites on your behalf and assist you in identifying bugs or creating UI test cases.

Create crafted UI components inspired by the best 21st.dev design engineers.

Bring agent evaluations, observability, and synthetic test set generation directly into your IDE for free with Galileo's new MCP server

An MCP server to help AI assistants to answer questions and generate AccelByte Extend SDK code more effectively .

MCP server for AI Diagram Maker — generate beautiful software engineering diagrams directly inside Cursor, Claude Desktop, Claude Code, or any MCP-compatible AI agent

ALAPI MCP Tools,Call hundreds of API interfaces via MCP

AI-powered SVG animation generator that transforms static files into animated SVG components using the Allyson platform

MCP server that gives AI assistants on-demand access to 1,500+ amCharts docs, ~300 code examples, and 1000+ class API references.

APIMatic MCP Server is used to validate OpenAPI specifications using APIMatic. The server processes OpenAPI files and returns validation summaries by leveraging APIMatic’s API.

One shared context layer for AI agents and humans — live API specs, DB schemas, and versioned contracts across repos so every agent and teammate works from the same source of truth.

Build and deploy full-stack Next.js apps with 98 tools for React, AWS, and MongoDB

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.