Specbridge
Handles environment variables through .env files for storing and managing API credentials securely
Enables interaction with GitHub's API, allowing for operations like retrieving user repositories through tools like 'github_getUser'
Provides access to OpenAI's API services through automatic tool generation from OpenAPI specifications
Integrates with Swagger/OpenAPI specifications to automatically convert API definitions into usable MCP tools
Supports parsing of YAML-formatted OpenAPI specifications for tool generation
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Specbridgelist all available API tools from my specs folder"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Built with FastMCP for TypeScript.
⨠Features
šÆ 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
Related MCP server: REST API MCP Server
š Quick Start
1ļøā£ Install (optional)
npm install -g specbridge2ļøā£ Create a specs folder
mkdir ~/mcp-apis3ļøā£ Add OpenAPI specs
Drop any .json, .yaml, or .yml OpenAPI specification files into your specs folder:
# Example: Download the Petstore spec
curl -o ~/mcp-apis/petstore.json https://petstore3.swagger.io/api/v3/openapi.json4ļøā£ Configure authentication (optional)
Create a .env file 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_key5ļøā£ Add to MCP client configuration
For Claude Desktop or Cursor, add to your MCP configuration:
If installed on your machine:
{
"mcpServers": {
"specbridge": {
"command": "specbridge",
"args": ["--specs", "/path/to/your/specs/folder"]
}
}
}Otherwise:
{
"mcpServers": {
"specbridge": {
"command": "npx",
"args": ["-y", "specbridge", "--specs", "/absolute/path/to/your/specs"]
}
}
}š» CLI Usage
š Start the server
# Default: stdio transport, current directory
specbridge
# Custom specs folder
specbridge --specs ~/my-api-specs
# HTTP transport mode
specbridge --transport httpStream --port 8080š List loaded specs and tools
# List all loaded specifications and their tools
specbridge list
# List specs from custom folder
specbridge list --specs ~/my-api-specsš Authentication Patterns
The server automatically detects authentication from environment variables using these patterns:
Pattern | Auth Type | Usage |
| šļø API Key |
|
| š« Bearer Token |
|
| š« Bearer Token |
|
| š¤ Basic Auth |
|
The {API_NAME} is derived from the filename of your OpenAPI spec:
petstore.jsonāPETSTORE_API_KEYgithub-api.yamlāGITHUB_TOKENmy_custom_api.ymlāMYCUSTOMAPI_API_KEY
š·ļø Tool Naming
Tools are automatically named using this pattern:
With operationId:
{api_name}_{operationId}Without operationId:
{api_name}_{method}_{path_segments}
Examples:
petstore_getPetById(from operationId)github_get_user_repos(generated fromGET /user/repos)
š File Structure
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š Example OpenAPI Spec
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 createdThis creates tools named:
example_getUserexample_createUser
š§ Troubleshooting
ā No tools appearing?
Check that your OpenAPI specs are valid:
specbridge list --specs /path/to/specsEnsure 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.
š Authentication not working?
Verify your
.envfile is in the specs directoryCheck 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
š ļø Development
# 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š¤ Contributing
Contributions are welcome! Please feel free to submit issues and pull requests.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Alicense-qualityDmaintenanceAn MCP server that dynamically converts any OpenAPI or REST API into MCP tools, allowing for real-time server switching and schema reloading. It supports variable substitution for headers and bodies, enabling seamless authentication and interaction with multiple API environments.Last updatedMIT
- Alicense-qualityDmaintenanceA dynamic MCP server that automatically discovers and generates tools from any REST API using OpenAPI/Swagger specifications, enabling instant endpoint access with zero manual configuration.Last updatedMIT
- Flicense-qualityDmaintenanceMCP server that wraps any REST API with an OpenAPI spec, dynamically creating MCP tools at runtime without code generation.Last updated18
- Alicense-qualityBmaintenanceTurns any OpenAPI/Swagger spec into an MCP server, generating one tool per endpoint with zero code.Last updated15MIT
Related MCP Connectors
APIs.guru MCP ā keyless directory of 2,500+ public APIs and their OpenAPI specs.
MCP server for AI access to SmartBear tools, including BugSnag, Reflect, Swagger, PactFlow, QTM4J.
MCP server for generating rough-draft project plans from natural-language prompts.
Appeared in Searches
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/TBosak/specbridge'
If you have feedback or need assistance with the MCP directory API, please join our Discord server