# Connect DealScore to Codex

You connect DealScore to Codex by running codex mcp add dealscore --url https://cardealscore.com/api/mcp, then running codex mcp login dealscore to finish the email sign-in. The server is Streamable HTTP at `https://cardealscore.com/api/mcp`. `codex mcp login` runs the OAuth sign-in.

Page: https://cardealscore.com/integrations/codex

Get a free API key: https://cardealscore.com/login?next=%2Fkeys. Used car price API: https://cardealscore.com/used-car-price-api

## Add the server and sign in

1. Run `codex mcp add` with the URL below. That writes `[mcp_servers.dealscore]` to `~/.codex/config.toml`.
2. Run `codex mcp login dealscore`. The browser opens the DealScore email sign-in.
3. Approve access.
4. Ask Codex to call `score_deal` with a year, make, model, asking price, and mileage.

terminal:

```bash
codex mcp add dealscore --url https://cardealscore.com/api/mcp
codex mcp login dealscore
```

This writes [mcp_servers.dealscore] to ~/.codex/config.toml and runs the OAuth sign-in. Full setup: /integrations/codex.

## Quick answers

### Where does Codex store the DealScore config?

In ~/.codex/config.toml, under [mcp_servers.dealscore]. codex mcp add writes that section.

### Does the Codex setup use an API key?

No. Both commands use OAuth. An API key is for POST /api/score, and you create one on /keys.

### Which tools does Codex get, and what do they cost?

score_deal, explain_grade, and health. Free includes 5 scored calls a month. Only results with coverage: scored count, and explain_grade and health are never metered.

## Keys stay on REST

These commands use OAuth. An API key is for `POST /api/score`. Create one on https://cardealscore.com/keys and see the curl example on https://cardealscore.com/used-car-price-api.

## If the tool is missing

- Both commands have to succeed. `codex mcp add` writes the URL. `codex mcp login dealscore` stores the OAuth grant.
- The config section is `[mcp_servers.dealscore]` in `~/.codex/config.toml`.
- `coverage: cannot_score` means the connection worked and the comps were too thin to grade.

## What the agent can call

`score_deal` grades a deal. Send `asking_price` and `mileage`, plus a VIN or year, make, and model. `trim` and `zip` are optional. `explain_grade` maps a `delta_pct` to a grade without fetching comps. `health` reports coverage and limits. Free includes 5 scored calls a month and Builder is $19/mo (founding price) for 1,000 scored calls a month. Only `coverage: scored` counts, and `explain_grade` and `health` are never metered. Plans: https://cardealscore.com/pricing. Argument details: https://cardealscore.com/docs/api. Test arguments in the browser first: https://cardealscore.com/try.

## Other clients

[Cursor](https://cardealscore.com/integrations/cursor), [VS Code](https://cardealscore.com/integrations/vs-code), [Claude Code](https://cardealscore.com/integrations/claude-code), [Claude Desktop](https://cardealscore.com/integrations/claude-desktop), [ChatGPT](https://cardealscore.com/integrations/chatgpt), [n8n](https://cardealscore.com/integrations/n8n). The REST call and a recorded response are on https://cardealscore.com/used-car-price-api. Every client is also listed on https://cardealscore.com/agents.
