Supported LLM Providers in Agent Command Center

Connect to 20+ cloud and self-hosted LLM providers via a unified OpenAI-compatible API. Add a provider once and switch by changing the model name.

About

Agent Command Center supports 20+ cloud and self-hosted LLM providers through a unified OpenAI-compatible API. Add a provider once with its API key, then switch between providers by changing the model name in your request.

Cloud providers

ProviderTypeapi_formatAuthNotes
OpenAIopenaiopenaiAPI keyNative format
AnthropicanthropicanthropicAPI keyAuto-translated to OpenAI format
Google GeminigeminigeminiAPI keyAuto-translated to OpenAI format
Google Vertex AIvertexaigeminiBearer tokenUses GCP project/location headers
AWS BedrockbedrockbedrockSigV4Requires AWS region, cross-region failover supported
Azure OpenAIazureazureAPI keyRequires api_version, supports Azure AD bearer auth
CoherecoherecohereAPI keyAuto-translated to OpenAI format
GroqgroqopenaiAPI keyOpenAI-compatible
Mistral AImistralopenaiAPI keyOpenAI-compatible
Together AItogetheropenaiAPI keyOpenAI-compatible
Fireworks AIfireworksopenaiAPI keyOpenAI-compatible
DeepInfradeepinfraopenaiAPI keyOpenAI-compatible
PerplexityperplexityopenaiAPI keyOpenAI-compatible
CerebrascerebrasopenaiAPI keyOpenAI-compatible
xAI (Grok)xaiopenaiAPI keyOpenAI-compatible
OpenRouteropenrouteropenaiAPI keyOpenAI-compatible
Hugging FacehuggingfaceopenaiAPI keyInference API
AnyscaleanyscaleopenaiAPI keyOpenAI-compatible
ReplicatereplicateopenaiAPI keyOpenAI-compatible

In the gateway’s config.yaml, a type field has no effect: every provider needs its own base_url and api_format.

Providers marked “OpenAI-compatible” use the same wire format as OpenAI. No translation needed. Providers with native formats (Anthropic, Gemini, Bedrock, Cohere) are automatically translated by Agent Command Center - your code stays identical regardless of which provider handles the request.

Tip

Agent Command Center supports all models from each provider, including new releases. Use any model name your provider supports.

Self-hosted providers

Ollama, vLLM, LM Studio, HuggingFace TGI, LocalAI and any other server that implements the OpenAI API connect the same way: set api_format: "openai" and point base_url at the server. Agent Command Center has no preset for these servers, so a type value such as ollama or vllm has no effect. In the gateway’s config.yaml, a provider without a models list gets its models from the server’s /v1/models endpoint when the gateway starts. Self-hosted models has configuration examples.

Note

Your self-hosted endpoint must be reachable from the Agent Command Center. Use a tunnel (ngrok, Cloudflare Tunnel), a cloud VM with a public IP, or deploy behind a reverse proxy.

On a self-hosted Future AGI install, a provider you add in the dashboard can use a private or LAN address only after you set AGENTCC_ALLOW_PRIVATE_PROVIDER_URLS=true. Loopback addresses such as localhost are never allowed. See Private and local provider URLs.


Adding a provider

  1. Go to Gateway > Providers in the Future AGI dashboard
  2. Click Add Provider
  3. Select the provider from the list
  4. Enter your API key and any required settings
  5. Click Save
from agentcc import AgentCC

client = AgentCC(
    api_key="sk-agentcc-your-key",
    base_url="https://gateway.futureagi.com",
    control_plane_url="https://api.futureagi.com",
)

client.org_configs.create(
    org_id="your-org-id",
    config={
        "providers": {
            "openai": {
                "api_key": "sk-your-openai-key",
                "api_format": "openai",
                "models": ["gpt-4o", "gpt-4o-mini"],
            },
            "anthropic": {
                "api_key": "sk-ant-your-key",
                "api_format": "anthropic",
            },
        }
    }
)
import { AgentCC } from "@futureagi/agentcc";

const client = new AgentCC({
    apiKey: "sk-agentcc-your-key",
    baseUrl: "https://gateway.futureagi.com",
    controlPlaneUrl: "https://api.futureagi.com",
});

await client.orgConfigs.create({
    orgId: "your-org-id",
    config: {
        providers: {
            openai: {
                api_key: "sk-your-openai-key",
                api_format: "openai",
                models: ["gpt-4o", "gpt-4o-mini"],
            },
            anthropic: {
                api_key: "sk-ant-your-key",
                api_format: "anthropic",
            },
        },
    },
});

Warning

Provider API keys are stored encrypted and never exposed in API responses.


Switching providers at request time

Change the model name to route to a different provider. Same code, same API, different LLM.

from agentcc import AgentCC

client = AgentCC(
    api_key="sk-agentcc-your-key",
    base_url="https://gateway.futureagi.com",
)

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

# Anthropic - same code, different model
response = client.chat.completions.create(
    model="claude-sonnet-4-6",
    messages=[{"role": "user", "content": "Hello"}]
)

# Google Gemini
response = client.chat.completions.create(
    model="gemini-2.0-flash",
    messages=[{"role": "user", "content": "Hello"}]
)
from openai import OpenAI

# Works with the OpenAI SDK - just swap base_url and api_key
client = OpenAI(
    base_url="https://gateway.futureagi.com/v1",
    api_key="sk-agentcc-your-key",
)

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

response = litellm.completion(
    model="openai/gpt-4o",
    messages=[{"role": "user", "content": "Hello"}],
    api_key="sk-agentcc-your-key",
    base_url="https://gateway.futureagi.com/v1",
)
curl -X POST https://gateway.futureagi.com/v1/chat/completions \
  -H "Authorization: Bearer sk-agentcc-your-key" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-4o",
    "messages": [{"role": "user", "content": "Hello"}]
  }'

Self-hosted setup

Connect models running on your own infrastructure.

  1. Go to Gateway > Providers
  2. Click Add Provider
  3. For Provider, select Custom / Self-hosted
  4. Enter your model server’s endpoint URL as the Base URL
  5. Enter an API key. For a server that checks no key, such as Ollama or a vLLM server started without one, enter any placeholder, such as ollama
  6. Select the models from the list the dialog fetches
  7. Click Add Provider

Note

On a self-hosted Future AGI install, the endpoint can also be a private or LAN address, such as http://host.docker.internal:11434/v1 for Ollama on the Docker host, once you set AGENTCC_ALLOW_PRIVATE_PROVIDER_URLS=true. Loopback addresses such as localhost are never allowed. See Private and local provider URLs.

from agentcc import AgentCC

client = AgentCC(
    api_key="sk-agentcc-your-key",
    base_url="https://gateway.futureagi.com",
    control_plane_url="https://api.futureagi.com",
)

client.org_configs.create(
    org_id="your-org-id",
    config={
        "providers": {
            "ollama": {
                "base_url": "https://your-ollama.example.com",
                "api_format": "openai",
                "api_key": "ollama",  # any value for a server that checks no key
                "models": ["llama3.1"],
            },
            "vllm": {
                "base_url": "https://your-vllm.example.com",
                "api_format": "openai",
                "api_key": "your-vllm-api-key",
                "models": ["meta-llama/Llama-3.1-8B-Instruct"],
            },
        }
    }
)
import { AgentCC } from "@futureagi/agentcc";

const client = new AgentCC({
    apiKey: "sk-agentcc-your-key",
    baseUrl: "https://gateway.futureagi.com",
    controlPlaneUrl: "https://api.futureagi.com",
});

await client.orgConfigs.create({
    orgId: "your-org-id",
    config: {
        providers: {
            ollama: {
                base_url: "https://your-ollama.example.com",
                api_format: "openai",
                api_key: "ollama", // any value for a server that checks no key
                models: ["llama3.1"],
            },
            vllm: {
                base_url: "https://your-vllm.example.com",
                api_format: "openai",
                api_key: "your-vllm-api-key",
                models: ["meta-llama/Llama-3.1-8B-Instruct"],
            },
        },
    },
});

Provider health

Agent Command Center monitors provider health automatically. It tracks response times, error rates, and availability. When a provider becomes unhealthy:

  1. The circuit breaker opens to stop sending requests to the failing provider
  2. Traffic fails over to healthy alternatives
  3. After a cooldown period, Agent Command Center sends probe requests to check recovery
  4. Once the provider responds successfully, it’s added back to the rotation

See Failover & circuit breaking for configuration details.


Next Steps

Was this page helpful?

Questions & Discussion