Features / Claude (Anthropic) gateway
A Claude API gateway for teams running agents on Anthropic.
Use the official Anthropic SDK as it is. Set the base URL to ACPpotamia and add one header; every Claude call is checked against your budget and limits, billed at Anthropic's list price including prompt caching, and logged.
How it works.
Messages API, streamed or not
Usage is read from Anthropic's own events, including cache reads and writes.
Token counting and model list pass through
count_tokens and the models list work as the SDK expects, without being billed.
Claude Opus, Sonnet and Haiku
Current Claude model prices are built in.
TypeScript
import Anthropic from "@anthropic-ai/sdk";
const client = new Anthropic({
baseURL: "https://acp.examopotamia.com",
apiKey: process.env.ANTHROPIC_API_KEY,
defaultHeaders: { "X-ACP-Key": process.env.ACP_KEY, "X-ControlPlane-Agent-Id": "research-agent" },
});
Questions.
Is my Anthropic key stored?
No. The SDK sends it as x-api-key; ACPpotamia passes it to Anthropic on each call and never stores it.
Does prompt caching still work?
Yes. Requests reach Anthropic unchanged, and cached input is billed at the lower cache price.
Related features.
OpenAI gateway
An OpenAI API proxy for chat completions, the Responses API and embeddings, with budgets, rate limits and loop detection. Keep the official OpenAI SDK.
Loop detection
Detect and stop AI agents stuck in loops: repeated tool calls, retries and identical prompts. ACPpotamia stops the agent in seconds, before it burns your budget.
Budgets and cost control
Put a hard monthly budget on OpenAI and Anthropic spend. ACPpotamia reserves each AI agent call's cost before it is sent, so agents cannot overspend.