open-bridge
An universal API runtime engine that bridges the gap between OpenAPI specifications and two distinct interfaces
claude mcp add --transport stdio nomagicln-open-bridge node src/server.js \ --env PORT="3000" \ --env OPEN_BRIDGE_CONFIG="path/to/config.json"
How to use
OpenBridge is a universal API runtime engine designed to connect, transform, and orchestrate multiple APIs through a single, unified interface. It acts as a middleware layer that can route requests to diverse backends, apply data transformations, aggregate responses, and expose a consistent API surface for clients. With OpenBridge, you can define endpoints that proxy to external services, apply request shaping and filtering, cache results, and implement custom logic or orchestrations across heterogeneous APIs. This makes it ideal for building federated data services, API gateways, or integration layers that expose a cohesive API to downstream clients.
To use OpenBridge, start the server using the provided command and access its API endpoints as defined in your configuration. The runtime typically supports configuring routes and behaviors via a configuration file or inline definitions, enabling you to map incoming requests to one or more target APIs, specify transformation hooks, and control error handling and retries. Depending on your deployment, you can scale the bridge by running multiple instances behind a load balancer and adjusting environment variables for port, authentication, and per-endpoint behavior.
How to install
Prerequisites:
- Node.js (LTS version) installed on your system
- npm or yarn
- Git (optional, for cloning the repository)
Install steps:
-
Clone the repository (or download the release): git clone https://github.com/nomagicln/open-bridge.git cd open-bridge
-
Install dependencies: npm install
or
yarn install
-
Configure environment (optional but recommended):
- PORT: Port to run the server (default 3000)
- OPEN_BRIDGE_CONFIG: Path to your configuration file (optional if defaults are provided)
-
Run the server: npm start
or if using a direct node command as in mcp_config
node src/server.js
-
Verify the server is running by hitting the base URL (e.g., http://localhost:3000/health) and testing a defined endpoint.
-
(Optional) Build or package for deployment according to your environment (Docker, systemd, or process manager).
Additional notes
Environment variables to consider: PORT, OPEN_BRIDGE_CONFIG, LOG_LEVEL, and AUTH_TOKEN if you enable protected endpoints. Common issues include port conflicts, missing configuration files, or dependency mismatches after upgrades. If you encounter connection errors to downstream APIs, verify network access, API keys, and rate limits. Refer to the project’s README for endpoint definitions and transformation hooks, and ensure that your deployment environment (Docker, PM2, systemd) is configured to restart the service on failure. When scaling, load balancers should preserve session affinity if the bridge relies on per-request state, or otherwise ensure stateless configurations across instances.
Related MCP Servers
ophis
Transform any Cobra CLI into an MCP server
hop
Fast, elegant SSH connection manager with a TUI dashboard and MCP server
interop
Interop CLI: Go command-line tool for efficient project management and command execution across your development workspace.
bwh
Go SDK, CLI, and MCP server for managing BandwagonHost/bwg/搬瓦工 (KiwiVM) VPS, with command-line and programmatic access to most features.
mcpenetes
If you're tired of manually editing config files for different MCP-compatible clients whenever you want to switch servers, mcpenetes is here to save your day.
backlog
Help coding agents and developers to keep track of a project's backlog by storing tasks as markdown in git.