Open source · Public beta

One gateway for
models and tools.

Route LLM requests, apply guardrails, and connect MCP tools through one self-hosted AI gateway.

A single Go binary. SQLite built in. Apache-2.0.

YOUR APPLICATIONApps, SDKs & agents
OmniSwitch
YOUR UPSTREAMSModels & MCP tools
THE GATEWAY

AI traffic, under your control.

Keep routing, policies, and request data in your own infrastructure.

LLM routing

Connect cloud and local models through an OpenAI-compatible endpoint. Configure fallbacks, retries, and weighted routes in the gateway.

Routing documentation

Guardrails & access

Apply local PII and injection checks. Control access with gateway keys, and set budgets and request limits for your workloads.

Security overview

MCP tools

Bring HTTP, SSE, and stdio targets behind one MCP gateway. Federate tool discovery and apply policy to tool calls.

MCP & A2A documentation

Request visibility

Inspect request logs and guardrail events. Export metrics with Prometheus and traces with OTLP to your existing observability stack.

Observability documentation
FOR DEVELOPERS

Use the client you already know.

Point your OpenAI-compatible client at OmniSwitch. Manage provider selection and routing in the gateway.

OpenAI · Anthropic · Gemini · Azure · Bedrock
Plus Groq, Cohere, and custom endpoints.

Send your first request
Connect your applicationPython
import os
from openai import OpenAI

client = OpenAI(
    base_url="http://localhost:8080/v1",
    api_key=os.environ["OMNISWITCH_KEY"],
)

response = client.chat.completions.create(
    model="gpt-4o-mini",
    messages=[{"role": "user", "content": "Hello"}],
)

Example assumes a local gateway is running. Review API compatibility.

GET STARTED

Run it on your infrastructure.

Follow the quickstart, explore the code, and choose the setup that fits your stack.

OmniSwitch is in public beta. Review the current scope.