MCP Server
The Model Context Protocol (MCP) lets AI tools like ChatGPT, Claude, and Cursor query Old Cars Data directly. Ask questions in plain English and get auction data, pricing stats, and market trends back — no code required.
Endpoint
https://api.oldcarsdata.com/mcpIntegration with ChatGPT
ChatGPT supports MCP apps natively. OAuth handles authentication automatically — no API key needed.
Plan Requirement: MCP apps require a ChatGPT Business, Enterprise, or Education plan. Pro users have limited access to read/fetch actions only.
Admin Setup
A workspace admin must create and publish the app before members can use it:
- Go to Settings > Apps > Advanced Settings and enable Developer mode
- Click Create to add a new app
- Fill in the app details:
- Name: Old Cars Data
- Description: Query classic car auction data, pricing stats, and market trends
- URL:
https://api.oldcarsdata.com/mcp
- Click Create to save
- You'll be redirected to sign in to your Old Cars Data account and authorize access
- Once tested, publish the app from Workspace Settings > Apps > Drafts
Using in Conversations
Once the app is published, any workspace member can use it:
- Open a new chat
- Click the + button near the message composer
- Select the Old Cars Data app
- Ask questions about auction data in natural language
Integration with Claude
Claude supports MCP connectors on claude.ai, Claude Desktop, and Claude Mobile, allowing direct access to Old Cars Data tools within conversations. OAuth handles authentication automatically — no API key needed.
For Pro and Max Plans
- Navigate to Settings > Connectors in Claude
- Click Add custom connector
- Enter the MCP server URL:
https://api.oldcarsdata.com/mcp - Click Add — you'll be redirected to sign in to your Old Cars Data account and authorize access
For Team and Enterprise Plans
Team and Enterprise plans require an owner to add the connector first:
Owner Setup (Required First):
- Navigate to Admin settings > Connectors
- Click Add custom connector
- Enter the MCP server URL:
https://api.oldcarsdata.com/mcp - Click Add to make the connector available to team members
Member Connection (After Owner Setup):
- Go to Settings > Connectors
- Find the Old Cars Data connector (marked with "Custom" label)
- Click Connect to sign in and authorize access
Using in Conversations
Once connected, enable the connector in any conversation:
- Click the + button in the chat interface
- Select Connectors
- Enable the Old Cars Data connector for that conversation
Developer Integrations
For Claude Code, Cursor, Windsurf, and other MCP clients, you'll need an API key.
Authentication
Uses the same API key as the REST API. Pass it as a Bearer token in headers.
- Sign in or create an account
- Subscribe to a plan
- Generate an API key in your profile
Claude Code
Run this command in your terminal:
claude mcp add --transport http oldcarsdata https://api.oldcarsdata.com/mcp \
--header "Authorization: Bearer YOUR_API_KEY"Use --scope user to make it available across all your projects, or --scope project to share with your team via .mcp.json (see Team Sharing below).
Cursor
One-click install (you'll need to replace YOUR_API_KEY in Settings > MCP after installing):
Or add manually in Settings > MCP:
{
"mcpServers": {
"oldcarsdata": {
"type": "url",
"url": "https://api.oldcarsdata.com/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_KEY"
}
}
}
}Windsurf
Open the MCP config file via Windsurf Settings > Tools > Add Server > View Raw Config, or edit ~/.codeium/mcp_config.json directly:
{
"mcpServers": {
"oldcarsdata": {
"serverUrl": "https://api.oldcarsdata.com/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_KEY"
}
}
}
}Other MCP Clients
Any client that supports the Streamable HTTP transport can connect. Point it at https://api.oldcarsdata.com/mcp and include the Authorization: Bearer YOUR_API_KEY header.
Team Sharing
Share the MCP configuration with your team by committing a config file to version control. Use environment variables so each team member can use their own API key.
Claude Code — add .mcp.json to your project root (or use claude mcp add --scope project):
{
"mcpServers": {
"oldcarsdata": {
"type": "http",
"url": "https://api.oldcarsdata.com/mcp",
"headers": {
"Authorization": "Bearer ${OCD_API_KEY}"
}
}
}
}Cursor — add .cursor/mcp.json to your project:
{
"mcpServers": {
"oldcarsdata": {
"url": "https://api.oldcarsdata.com/mcp",
"headers": {
"Authorization": "Bearer ${env:OCD_API_KEY}"
}
}
}
}Each team member sets OCD_API_KEY in their environment. Commit these files to version control — they contain no secrets.
Available Tools
| Tool | Description |
|---|---|
list_makes | List all vehicle makes in the database |
list_models | List all models for a given make |
search_auctions | Search auction results with filters for make, model, year, price, status, and more |
get_price_stats | Get pricing statistics and 12-month market trends for a make/model |
Tool Reference
list_makes
List all vehicle makes available in the database. No parameters required.
list_models
List all models for a given vehicle make.
| Parameter | Type | Required | Description |
|---|---|---|---|
make | string | Yes | Vehicle make (e.g. "Porsche", "BMW") |
search_auctions
Search auction results for vehicles. Returns listings with prices, status, specs, and details.
| Parameter | Type | Required | Description |
|---|---|---|---|
make | string | Yes | Vehicle make (e.g. "Porsche", "BMW") |
model | string | No | Vehicle model (e.g. "911", "M3") |
year_min | integer | No | Minimum model year |
year_max | integer | No | Maximum model year |
price_min | integer | No | Minimum sale price in USD |
price_max | integer | No | Maximum sale price in USD |
status | enum | No | Auction outcome: "sold", "bid to", "reserve not met", "canceled" |
keyword | string | No | Search in title and description |
sort | enum | No | Sort field: "date" (default), "price", "year", "bids" |
direction | enum | No | Sort direction: "asc", "desc" (default) |
page | integer | No | Page number (default: 1) |
limit | integer | No | Results per page, max 50 (default: 20) |
get_price_stats
Get pricing statistics and market trends for a vehicle make/model. Includes average, median, low/high prices, sell-through rate, and 12-month price trends.
| Parameter | Type | Required | Description |
|---|---|---|---|
make | string | Yes | Vehicle make (e.g. "Porsche", "BMW") |
model | string | No | Vehicle model (e.g. "911", "M3") |
year_min | integer | No | Minimum model year |
year_max | integer | No | Maximum model year |
Paid Plan Required:
get_price_statsis not available on the Starter plan. Upgrade to access pricing statistics.
Plan Limits
The same plan limits that apply to the REST API apply to MCP tools:
| Plan | Auction Results | Stats Access |
|---|---|---|
| Starter | Limited to 20 results | Not available |
| 1k | Full access | Full access |
| 10k | Full access | Full access |
Rate limits are shared across REST API and MCP usage.
Example Queries
Once connected, ask questions in natural language. Here are some examples:
"What Porsche 911s have sold recently?"
Calls search_auctions with make: "Porsche", model: "911", status: "sold" and returns recent sold listings with prices.
"What's the average price of a Toyota Land Cruiser?"
Calls get_price_stats with make: "Toyota", model: "Land Cruiser" and returns average, median, and price range.
"Show me BMW M3s under $50,000 from the last few years"
Calls search_auctions with make: "BMW", model: "M3", price_max: 50000, year_min: 2020 and returns matching listings.
"What car brands do you have data for?"
Calls list_makes and returns the full list of available makes.