Guide

Is this car a good deal?

A used car is a fair deal when its asking price sits inside the expected band from comparable dealer listings, and you can check that by asking Claude or ChatGPT to call DealScore.

What score_deal returns

score_deal returns these fields.

FieldMeaning
gradeGreat, Good, Fair, High, or Overpriced. Null when coverage is cannot_score.
score0 to 100. Each grade has its own range, so the score always matches the grade. Null when coverage is cannot_score.
expected_priceMarket value estimate from comps, in USD.
expected_price_lowLow end of the comp price band, in USD.
expected_price_highHigh end of the comp price band, in USD.
delta_pct(asking price minus expected price) divided by expected price.
confidence0 to 1, from comp count and data source.
coveragescored, partial, or cannot_score. Only scored is billed.
comps_countHow many comparable dealer listings the score used.
rubric_versionWhich rubric mapped delta_pct to a grade. The current rubric is score_v2.
data_sourcelive, mock, or error on real responses, and "example" only on the illustrative example shown on this site.

Example output, illustrative numbers

A generic 2019 sedan, asking $20,000. These numbers are round and made up.

{
  "grade": "Good",
  "score": 87,
  "expected_price": 22000,
  "expected_price_low": 20000,
  "expected_price_high": 24000,
  "delta_pct": -0.09,
  "comps_count": 20,
  "data_source": "example"
}

Those figures are illustrative, and numbers for a real listing come from a live, per-request score. Score a real listing.

score_v2 grade bands

Rubric version score_v2 maps delta_pct to a grade and a score. delta_pct is (asking price minus expected price) divided by expected price. Each grade has its own score range: Great 90 to 100, Good 75 to 89, Fair 60 to 74, High 40 to 59, Overpriced 0 to 39. Inside a range, a lower price scores higher, and only a price 20% or more under expected scores 100.

Gradedelta_pctScoreMeaning
Great≤ -10%90 to 100Asking well below expected market value.
Good≤ -3%75 to 89Asking modestly below market.
Fair≤ +3%60 to 74Roughly in line with comps.
High≤ +10%40 to 59Asking above market, but not wildly so.
Overpriced> +10%0 to 39Asking well above what comps support.

Set up Claude

  1. Connect DealScore in Claude Desktop. Full steps are on /integrations/claude-desktop.
  2. Ask Claude to call score_deal with the year, make, model, asking price, and mileage.

Set up ChatGPT

  1. Turn on Developer mode and add the DealScore MCP URL. Full steps are on /integrations/chatgpt.
  2. Ask ChatGPT to call score_deal with the year, make, model, asking price, and mileage.

Cursor, VS Code, Claude Code, Codex, and n8n use the same MCP server. Each client has a setup page. Cursor, VS Code, Claude Code, Claude Desktop, Codex, ChatGPT, n8n.

FAQ

How do I know if a used car price is fair?
A used car price is fair when the asking price sits inside the expected band from comparable dealer listings. Ask Claude or ChatGPT to call DealScore. score_deal returns a grade, a 0 to 100 score, and that band.
What does a Fair grade mean?
Fair means delta_pct is greater than -3% and at most +3%. The asking price is roughly in line with comps.
Does DealScore use KBB or Edmunds values?
No. DealScore does not use KBB or Edmunds values. Comps are current dealer listings from a licensed listings data provider. If you send a trim, the score does not use a different trim. The default comps are national. A ZIP narrows them to a local market.
Can I check a private-party listing?
Yes. Paste the listing text into the chat. The agent reads the year, make, model, asking price, and mileage, then calls score_deal. DealScore does not fetch Facebook Marketplace or Craigslist URLs. Comps are US dealer listings, so a private-party price is judged against dealer prices for comparable cars.
Is it free?
Free is 5 scored calls a month. No card. Builder is $19/mo (founding price) for 1,000 scored calls a month.

Get a free API key

Get a free API key, or connect the same account over MCP.

Connect over MCP