Skip to content

Claude Max API Proxy

claude-max-api-proxy is a community tool that exposes your Claude Max/Pro subscription as an OpenAI-compatible API endpoint. This allows you to use your subscription with any tool that supports the OpenAI API format.

ApproachCostBest For
Anthropic APIPay per token (~$15/M input, $75/M output for Opus)Production apps, high volume
Claude Max subscription$200/month flatPersonal use, development, unlimited usage

If you have a Claude Max subscription and want to use it with OpenAI-compatible tools, this proxy can save you significant money.

Your App → claude-max-api-proxy → Claude Code CLI → Anthropic (via subscription)
(OpenAI format) (converts format) (uses your login)

The proxy:

  1. Accepts OpenAI-format requests at http://localhost:3456/v1/chat/completions
  2. Converts them to Claude Code CLI commands
  3. Returns responses in OpenAI format (streaming supported)
Terminal window
# Requires Node.js 20+ and Claude Code CLI
npm install -g claude-max-api-proxy
# Verify Claude CLI is authenticated
claude --version
Terminal window
claude-max-api
# Server runs at http://localhost:3456
Terminal window
# Health check
curl http://localhost:3456/health
# List models
curl http://localhost:3456/v1/models
# Chat completion
curl http://localhost:3456/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "claude-opus-4",
"messages": [{"role": "user", "content": "Hello!"}]
}'

You can point OpenClaw at the proxy as a custom OpenAI-compatible endpoint:

{
env: {
OPENAI_API_KEY: "not-needed",
OPENAI_BASE_URL: "http://localhost:3456/v1",
},
agents: {
defaults: {
model: { primary: "openai/claude-opus-4" },
},
},
}
Model IDMaps To
claude-opus-4Claude Opus 4
claude-sonnet-4Claude Sonnet 4
claude-haiku-4Claude Haiku 4

Create a LaunchAgent to run the proxy automatically:

Terminal window
cat > ~/Library/LaunchAgents/com.claude-max-api.plist << 'EOF'
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.claude-max-api</string>
<key>RunAtLoad</key>
<true/>
<key>KeepAlive</key>
<true/>
<key>ProgramArguments</key>
<array>
<string>/usr/local/bin/node</string>
<string>/usr/local/lib/node_modules/claude-max-api-proxy/dist/server/standalone.js</string>
</array>
<key>EnvironmentVariables</key>
<dict>
<key>PATH</key>
<string>/usr/local/bin:/opt/homebrew/bin:~/.local/bin:/usr/bin:/bin</string>
</dict>
</dict>
</plist>
EOF
launchctl bootstrap gui/$(id -u) ~/Library/LaunchAgents/com.claude-max-api.plist
  • This is a community tool, not officially supported by Anthropic or OpenClaw
  • Requires an active Claude Max/Pro subscription with Claude Code CLI authenticated
  • The proxy runs locally and does not send data to any third-party servers
  • Streaming responses are fully supported