GoModel

io.github.ENTERPILOTPublished by GitHub account ENTERPILOTv0.2.2Updated Nov 7, 2026

Self-hosted gateway aggregating upstream MCP servers behind one authenticated HTTP endpoint.

The publisher's own server: model.tools — Zero-Auth Agent Utilities

Overview

AI-generated overview

Self-hosted AI gateway that aggregates upstream MCP servers behind one authenticated HTTP endpoint, with caching, budgets and provider routing.

What you can do
  • Aggregate multiple upstream MCP servers behind a single authenticated endpoint, declared in configuration or environment
  • Proxy LLM requests in OpenAI- and Anthropic-compatible formats across many providers, with failover and key rotation
  • Cache responses, track per-request cost, and enforce budgets, rate limits and model access per user path
  • Expose usage, passthrough provider APIs, audio and image endpoints, and a dashboard playground for testing models
When to use it
Use it when you want one controlled entry point for several MCP servers or LLM providers, with shared authentication, spend limits and usage analytics, and you are willing to run and maintain the gateway yourself.
Requirements
Runs locally as a Docker image (stdio/streamable-http) or via an install script; needs a GOMODEL_MASTER_KEY for client authentication, configuration through config.yaml, .env or environment variables, and API keys for whichever upstream providers or MCP servers you connect.
Before you install
If GOMODEL_MASTER_KEY is unset the gateway runs in an unsafe no-auth mode, so anyone reaching the port can use it. Upstream credentials such as provider API keys or tokens are stored in its configuration, and it can spend real money on providers, so set budgets and rate limits. It proxies requests and usage data to third-party providers.

Installation

In SourceWeft

  1. Open GoModel in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

[GoModel logo]

GoModel - The last AI gateway you will ever need

[CI] [GO Version] [Docker Pulls] [Discord] [Sponsor GoModel]

[Hacker News] [docs GoModel]

[GoModel on Hacker News]

GoModel is the fastest and the most resource-efficient AI Gateway (the self-reproducible benchmarks). It's an alternative to LiteLLM (which was hacked recently) and Portkey (which is no longer maintained on GitHub).

[GoModel AI gateway dashboard showing AI usage analytics, observability panel, token and costs tracking, and estimated cost monitoring]

(click on the animation ↑ to see the live demo)

GoModel saves you money and nerves.

Money - because you can remember the responses on this layer (caching), track your spending and do tricks like prompt compression and intelligent routing.

Nerves - because we strive to achieve good quality and reliability. Our ambition is to be the last AI gateway you will need - the most reliable, resource-optimal, feature-rich and fast.

Quick Start

Step 1: Install and start GoModel

Docker

bash
docker run --rm -p 8080:8080 \  -v gomodel_data:/app/data \  enterpilot/gomodel

macOS / Linux

bash
curl -fsSL https://gomodel.enterpilot.io/install.sh | sh# OPENAI_API_KEY="your-openai-key" # (optional)gomodel

Windows (PowerShell)

powershell
irm https://gomodel.enterpilot.io/install.ps1 | iex# $env:OPENAI_API_KEY = "your-openai-key" # (optional)gomodel

ℹ️ Configure GoModel with .env, a config.yaml file, or manage the most important settings directly in the dashboard.

ℹ️ See .env.template for the complete list of environment variables, including all available providers.

Step 2: Open the dashboard and add a provider

text
http://localhost:8080/admin/dashboard

Step 3: Make an API call

bash
curl http://localhost:8080/v1/responses \  -H "Content-Type: application/json" \  -d '{    "model": "gpt-5-chat-latest",    "input": "Hello!"  }'

GoModel and official SDKs

GoModel accepts requests in two compatible formats:

  • OpenAI-compatible at /v1
  • Anthropic-compatible at /v1/messages

The official SDKs therefore work unchanged. Configure their base URLs as follows:

  • OpenAI SDK: http://localhost:8080/v1
  • Anthropic SDK: http://localhost:8080 (the SDK appends /v1/messages)

List of Supported LLM Providers

  • OpenAI
  • Anthropic
  • xAI (Grok)
  • Google Gemini
  • Cohere
  • Vertex AI
  • DeepSeek
  • Groq
  • Fireworks AI
  • Together AI
  • Meta (Muse Spark)
  • OpenRouter
  • Z.ai
  • Alibaba Cloud Model Studio (Bailian)
  • Kilo AI
  • Eden AI
  • MiniMax
  • Xiaomi MiMo
  • OpenCode Go
  • Azure OpenAI
  • Oracle
  • Ollama
  • SGLang
  • vLLM
  • llm-d
  • Amazon Bedrock Runtime and Bedrock Mantle
  • ChatGPT (the Codex backend) and Claude
  • GitHub Copilot
  • ElevenLabs (text-to-speech and speech-to-text)
  • Jev (TypeSafe System One decision API) and self-hosted Kev, also behind OpenAI's Decisions API
  • All OpenAI-compatible providers

See the Providers Overview for the full per-provider feature matrix.


Docker Compose

Infrastructure only (Redis, PostgreSQL, MongoDB, Adminer - no image build):

bash
cp .env.template .env# Add your API keys to .envdocker compose up -d# or: make infra

Full stack (adds GoModel + Prometheus; builds the app image):

bash
docker compose --profile app up -d# or: make image

API docs


Gateway Configuration

GoModel resolves configuration in the following order, with each source overriding those to its left:

Good defaults → config.yaml → .env → exported environment variables

See the Configuration reference for the full list of settings.


Features

  • Caching - exact and semantic response caching, so repeated prompts cost nothing
  • Cost tracking - per-request cost estimates, usage analytics, and spending breakdowns in the dashboard
  • Budgets - hard spend limits per user, team, or key
  • Rate limits - requests, tokens, and concurrency caps per user path, provider, or model
  • Usage API - clients check their own usage, remaining budget, and rate-limit headroom with the key they already use for inference
  • Virtual models - aliases and load balancing (round-robin or cost-based) behind stable model names
  • Session keeping - detect a client session and pin it to one target and provider key, so provider prompt caches stay warm and audit logs read as threads
  • Failover - automatic rerouting to backup providers, with retries and circuit breakers
  • Labelling - tag requests from HTTP headers or API keys and break down usage by label
  • User paths - hierarchical scoping of keys, model access, budgets, usage, and audit logs
  • Model access control - per-group, per-user, and per-key model allowlists that intersect down the user-path tree
  • MCP gateway - aggregate your MCP servers behind one authenticated endpoint
  • Passthrough API - provider-native APIs under /p/{provider}/..., with GoModel auth and tracking
  • Audio and image APIs - OpenAI-compatible text-to-speech, transcription, and image generation and editing with the same access rules, budgets, and cost tracking as chat
  • Provider replay state - preserves Gemini thought signatures and Anthropic thinking blocks across turns, APIs, and providers
  • Guardrails - request and response policies enforced at the gateway
  • Plugins - one contract for guardrails, response and stream filters, header edits, and routing strategies; built in, compiled in, or loaded from a .so at startup
  • Workflows - versioned per-request policies that scope cache, budgets, audit logging, guardrail phases, and failover by user path, provider, or model
  • Provider key rotation - round-robin over multiple API keys to lift per-key rate limits
  • Observability - Prometheus metrics, OpenTelemetry traces, audit logs, and live request streaming in the dashboard
  • Playground - try any model or virtual model from the dashboard and inspect the exact request and response JSON

GoModel Pro

GoModel Pro is the commercial build: the same gateway, configuration, and dashboard, with licensed extensions.

  • Prompt compression - remove repeated and structural context before it reaches the provider, without changing the request shape
  • Intelligent routing - classify each request as easy or hard, then pick the healthiest and cheapest provider in that tier
  • OIDC single sign-on - protect the dashboard with your identity provider using Authorization Code flow with PKCE

More in the documentation...

Not ready for Pro? Sponsor GoModel to keep the open-source gateway moving.

Roadmap

See the roadmap for GoModel Pro and the upcoming 0.3.0 release.

Featured Sponsors

[Neiko2002] [ajboainain]

Goal: $1K/month - ~15% achieved!

If GoModel saves you money or time, become a sponsor or try GoModel Pro.

Community

We are on Discord. Feel free to stop by and tell us what you think about GoModel.

Source: README.md at commit f6fd009

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

19
  1. v0.2.2LatestNov 7, 2026
  2. v0.2.1Oct 30, 2026
  3. v0.2.0Oct 29, 2026
  4. v0.1.108Oct 25, 2026
  5. v0.1.107Oct 24, 2026
  6. v0.1.106Oct 22, 2026
  7. v0.1.105Oct 20, 2026
  8. v0.1.103Oct 16, 2026
  9. v0.1.102Oct 13, 2026
  10. v0.1.101Oct 10, 2026
  11. v0.1.100Oct 7, 2026
  12. v0.1.99Oct 3, 2026
  13. v0.1.98Sep 27, 2026
  14. v0.1.97Sep 24, 2026
  15. v0.1.96Sep 23, 2026
  16. v0.1.95Sep 20, 2026
  17. v0.1.94Sep 18, 2026
  18. v0.1.93Sep 17, 2026
  19. v0.1.92Sep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

Other Model integrations