Start saving on AI spend without changing how your team works.
This is the practical setup guide. Pick the path that matches what you are doing, follow the steps in order, then use the receipt to confirm what Multra.ai optimized and what evidence supports the savings.
1. Choose your path
I want to try it in a browser
- Create an account.
- Connect an OpenAI or Anthropic API key.
- Open Chat and send a real prompt.
- Open the receipt and compare cost, tokens, and route.
I want to use it in my app or coding agent
- Create or use a project.
- Create a Multra.ai project API key.
- Point your OpenAI, Anthropic, or coding-agent client at
https://optimize.blueskyatg.com/v1. - Paid projects start in Auto. Free projects use Audit.
Do this first: one provider key, one real prompt, one receipt. Add APIs, coding, Skills, MCP, and GitHub only after the first path works.
2. Chat walkthrough
Chat is the fastest way to prove value because it feels like GPT or Claude but adds routing, context, caching, output controls, and a savings receipt.
- Sign in. Open Login or create a free account.
- Open Chat. Use the top nav item Chat.
- Pick a project. Use the default project unless you already created a separate environment.
- Check the mode. Paid projects default to Auto; free projects default to Audit. Use Pinned only when you want one specific model.
- Send a realistic prompt. Use an actual support ticket, contract summary, coding request, meeting notes summary, or analysis task.
- Review the answer. If it looks right, open the receipt to see what changed.
- Refresh the page. The chat should still be there; history is server-backed.
Good first test prompts
Business summary
Summarize this customer email in 5 bullets. flag churn risk suggest the next best reply keep it under 120 words
Coding assistant
Find the likely cause of this error. Explain the fix in plain English. Give me the smallest safe patch.
Document review
Review this NDA. Flag renewal, confidentiality, indemnity, and assignment risks. Give me a short executive summary.
Analysis
Compare these two vendor proposals. Rank by total cost, implementation risk, and support risk. Show your assumptions.
3. Connect provider keys
Multra.ai uses your provider account. You paste an API key once, Multra.ai stores it in the provider credential store, tests it, and never shows it back to you.
OpenAI
- Open platform.openai.com/api-keys.
- Click Create new secret key.
- Copy the key immediately. OpenAI will not show it again.
- In Multra.ai, open Account menu → Provider connections.
- Choose OpenAI, paste the key, and click Connect.
- Click Test. The status should become active before you use Auto.
Anthropic
- Open platform.claude.com/settings/keys.
- Create a new API key.
- Copy the key immediately. Anthropic will not show it again.
- In Multra.ai, open Account menu → Provider connections.
- Choose Anthropic, paste the key, and click Connect.
- Click Test. The status should become active before you use Auto.
Provider connections
OpenAI production key
Status: active · Models available · Last tested today
Anthropic production key
Status: needs test · Paste key to activate cross-provider routing
4. Projects and Multra.ai API keys
A project is the boundary for API keys, default mode, receipts, optional repository context, and policy. API keys do not have their own independent mode; they inherit the project default unless a request explicitly passes an allowed mode.
- Open APIs in the top nav, or use Account menu → Projects.
- Use the default project unless you need separate environments.
- Choose a project mode: Audit, Auto, or Pinned.
- Click Create API key under that project.
- Copy the key once and store it in your app or agent secret manager.
- Use
https://optimize.blueskyatg.com/v1as the base URL.
Projects
Default project
Mode: auto · Environment: production · Receipts: 4
API keys
Keys inherit the project default mode. You can revoke a key at any time.
Modes in plain English
Audit
Best first step. Multra.ai preserves behavior and gives you a receipt so you can see savings opportunities safely.
Auto
Multra.ai chooses eligible lower-cost routes across tested provider keys and keeps learning over time.
Pinned
You choose one provider/model. Multra.ai still optimizes prompt, context, cache, and output where safe.
5. OpenAI SDK examples
Use your Multra.ai project API key where your app normally uses an OpenAI key, and change the base URL.
Python: Chat Completions
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["BLUESKY_API_KEY"],
base_url="https://optimize.blueskyatg.com/v1"
)
response = client.chat.completions.create(
model="bluesky/auto",
messages=[
{"role": "system", "content": "You are concise."},
{"role": "user", "content": "Summarize this support ticket in 5 bullets."}
],
max_tokens=400
)
print(response.choices[0].message.content)Python: Responses API
import os from openai import OpenAI client = OpenAI(api_key=os.environ["BLUESKY_API_KEY"], base_url="https://optimize.blueskyatg.com/v1") response = client.responses.create( model="bluesky/auto", input="Draft a short customer renewal follow-up email.", max_output_tokens=300 ) print(response.output_text)
TypeScript
import OpenAI from "openai";
const client = new OpenAI({
apiKey: process.env.BLUESKY_API_KEY,
baseURL: "https://optimize.blueskyatg.com/v1"
});
const response = await client.chat.completions.create({
model: "bluesky/auto",
messages: [{ role: "user", content: "Summarize this support ticket." }],
max_tokens: 400
});
console.log(response.choices[0].message.content);Raw curl
curl https://optimize.blueskyatg.com/v1/chat/completions \
-H "Authorization: Bearer $BLUESKY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "bluesky/auto",
"messages": [{"role":"user","content":"Summarize this ticket."}],
"max_tokens": 400
}'6. Anthropic SDK examples
Use the same Multra.ai project key and point the Anthropic SDK at Multra.ai.
Python
import os
from anthropic import Anthropic
client = Anthropic(
api_key=os.environ["BLUESKY_API_KEY"],
base_url="https://optimize.blueskyatg.com/v1"
)
message = client.messages.create(
model="bluesky/auto",
max_tokens=400,
messages=[
{"role": "user", "content": "Summarize this customer email."}
]
)
print(message.content[0].text)TypeScript
import Anthropic from "@anthropic-ai/sdk";
const client = new Anthropic({
apiKey: process.env.BLUESKY_API_KEY,
baseURL: "https://optimize.blueskyatg.com/v1"
});
const message = await client.messages.create({
model: "bluesky/auto",
max_tokens: 400,
messages: [{ role: "user", content: "Summarize this customer email." }]
});
console.log(message.content[0].text);model or Multra.ai request fields only when you intentionally want to constrain routing. For maximum savings opportunities, keep model="bluesky/auto" and keep provider connections tested.7. Coding agents
Coding agents should use a Multra.ai project API key, not provider keys. Codex, Cursor, Windsurf, Cline, Roo, OpenAI SDK, Anthropic SDK, CI agents, and Claude tools receive bounded large-context handling when Multra.ai can preserve quality safely. Paid projects use Auto by default; free projects use Audit.
Codex CLI and IDE
~/.codex/config.toml, not a repo .codex/config.toml. Codex ignores project-local provider auth and base URL settings for security.- Create a Multra.ai API key. Open APIs → Projects & API keys, choose the project, and create a production key. Copy the generated key once.
- Connect provider keys in Multra.ai. Open Provider connections and connect OpenAI, Anthropic, or both. Codex will use the Multra.ai key; Multra.ai uses these provider keys behind the gateway.
- Open the real Codex config file. Use the macOS, Linux, or Windows PowerShell command on the Develop page to create and open
~/.codex/config.toml. - Paste the provider config. Add the Multra.ai provider block below and save the file.
- Export your Multra.ai key. Put the key in your shell profile, password manager, or CI secret. Do not paste provider keys into Codex.
- Run one small task. Start Codex in a repo and ask for a low-risk read-only task first. Then check Analytics → Calls for the receipt.
# ~/.codex/config.toml model = "bluesky/auto" model_provider = "bluesky" [model_providers.bluesky] name = "Multra.ai" base_url = "https://optimize.blueskyatg.com/v1" env_key = "BLUESKY_API_KEY" wire_api = "responses"
# macOS/Linux shell
case "${BLUESKY_API_KEY:-}" in
bs_live_*|bs_test_*) ;;
*) echo "Create and copy a Multra.ai API key before running this command." >&2; exit 1 ;;
esac
codex
# First test prompt:
# "Read this repo and tell me the test command. Do not edit files yet."If you already use Codex with OpenAI directly
Do not replace your provider API key with an OpenAI key here. Codex should receive only the Multra.ai project key. Multra.ai then routes to the provider connections in your Multra.ai account and records the savings receipt.
Cursor, Windsurf, Cline, Roo, Claude, or SDK clients
- Create a Multra.ai project API key.
- Set the base URL to
https://optimize.blueskyatg.com/v1for OpenAI-compatible clients, or use the Anthropic-compatible route for Claude clients that support custom endpoints. - Set the API key to the generated Multra.ai project key, never the provider key.
- Use model
bluesky/autounless the tool requires a specific value. - For Claude Code or Claude Desktop without a custom Anthropic endpoint, use Multra.ai MCP.
- Run a small coding prompt first, then check Analytics → Calls.
Agent provider settings
Base URL
https://optimize.blueskyatg.com/v1
API key
generated key from the Multra.ai project
Model
bluesky/auto
8. GitHub and code context
GitHub is optional. Use it when developers want repository-aware context without pasting large files into every request.
- Open Develop → Repositories.
- Click Install GitHub App.
- Choose the organization or repositories you want Multra.ai to access.
- Return to Multra.ai and click Sync repositories.
- Open Projects and choose a default repository for the project.
- Click Build graph or Retry if the repository asks for indexing.
- Use the coding agent normally. Multra.ai merges paths, open files, changed files, and natural prompt seeds; if graph context is unavailable, normal coding requests fail open instead of blocking the request.
Repositories
Multra.aiATG/bluesky-optimize
Branch: main · Graph status: ready · Last SHA: abc123
9. MCP setup
/mcp is the human page. MCP clients should use https://optimize.blueskyatg.com/api/mcp. MCP optimize_run uses the same bounded large-context policy and project-default repository graph behavior as coding gateway requests.
MCP server URL: https://optimize.blueskyatg.com/api/mcp OAuth protected-resource metadata: https://optimize.blueskyatg.com/.well-known/oauth-protected-resource/mcp Authorization server metadata: https://optimize.blueskyatg.com/.well-known/oauth-authorization-server
Available MCP capabilities
- Tools:
optimize_estimate,optimize_run,receipt_get,models_list,skills_list. - Resources: receipts, projects, Skills, and models.
- Prompts: audit-this-task, optimize-this-task, and run-with-skill.
Safe write behavior
Read-only actions may run when authorized. Write actions require exact-action approval. Destructive actions are never silently run.
10. Skills walkthrough
Skills package repeatable instructions, references, and assets so users do not have to retype the same setup every time.
- Create a folder with
SKILL.md. - Add optional
references/for supporting docs. - Add optional
assets/for reusable files. - ZIP the folder.
- Upload the ZIP in Multra.ai.
- Multra.ai validates the package without executing scripts.
- Enable the Skill for yourself, a project, or the organization.
- Use
@skillin Chat, or pass the Skill ID through API/MCP.
my-renewal-skill/
SKILL.md
references/
renewal-policy.md
assets/
response-template.md--- name: Renewal reviewer description: Review renewal risk in customer contracts. --- Use this Skill when the user asks about contract renewal risk. Read only the relevant renewal and termination clauses. Return: summary, risk level, dates, and recommended action.
11. Read receipts
Open Analytics → Calls to inspect each request. Receipts are the proof layer: they show selected route, token counts, cache behavior, output controls, and evidence labels.
Savings Receipt
Route
OpenAI → selected model · provider/model evidence
Prompt economics
Compression · session checkpoint · provider cache · exact cache
Evidence label
MEASURED, ESTIMATED, MODELED, or UNKNOWN
What each label means
- MEASURED: directly reported by the provider or observed from the completed request.
- ESTIMATED: based on public pricing or known rates, but not directly billed by the provider in the receipt.
- MODELED: a counterfactual comparison that was not separately executed.
- UNKNOWN: pricing or usage evidence was missing. Multra.ai does not turn unknown into zero.
Why savings can be negative
Sometimes the safest or highest-quality path costs more. Multra.ai shows negative savings instead of hiding them because the receipt should be trusted.
12. Plans, billing, and cancellation
- Free Audit: no Multra.ai credit card required. Provider usage may still bill through OpenAI or Anthropic.
- Paid plans: open Account menu → Subscription.
- Checkout: paid checkout goes through Stripe.
- Cancellation: manage cancellation through Stripe. Access continues through the paid period.
- Provider billing: your provider account remains separate from Multra.ai subscription billing.
13. Troubleshooting
Provider key fails
Confirm API billing is active, the key was copied from the provider API platform, and the selected provider matches the key. Then click Test again.
Chat says no eligible route
Open Provider connections and retest the key. Auto needs at least one active tested provider connection with allowed models.
403 creating a project
Your plan may already have the maximum number of projects. Create an API key from an existing project, or upgrade if you need more projects.
API key does not work
Use the Multra.ai project key, not your OpenAI or Anthropic key. The base URL should be https://optimize.blueskyatg.com/v1.
No savings shown
Check the receipt label. Pricing may be unknown, or the safest route may be the original route. Negative savings are shown when they happen.
MCP opens a web page
Use /mcp for product info and /api/mcp for MCP clients.
