EnCarAPI MCP server: Korean and Chinese used car data for AI assistants
Model Context Protocol server for
EnCarAPI. Lets Claude, Cursor, ChatGPT and other MCP clients search
live used car listings from South Korea (Encar, KB Chachacha, K Car) and
(Dongchedi, Che168), and pull full details, inspection reports and accident records.
Live used car listings from China (Dongchedi, Che168) in English, with inspection reports.
2026-11-12
Stars
โ
Tools
โ
Uptime
โ
China
An API key is required. Get one (5-day trial) at encarapi.com.
Chinese data works with a ChinaCarAPI key or an EnCarAPI key
with the China add-on. ChinaCarAPI customers: see For ChinaCarAPI customers.
Tools
Tool
What it does
search_korean_cars
Search Korean listings (brand, model, year, price in 10,000 KRW, mileage, fuel, accident-free, seller region and city, source: encar / kbc / kcar / all)
search_korean_excavators
Search Korean used excavators (maker, model, operating hours, weight class, region; Business/Scale key)
search_korean_trucks
Search Korean trucks, buses and special vehicles (body type, payload in tons, use, region; Business/Scale key)
find_korean_car_by_vin
All Encar / K Car listings of one VIN, incl. removed ones (Business/Scale key)
get_korean_truck
Full record for one truck: detail, inspection report, cargo box, VIN and plate (Business/Scale key)
get_korean_car
Full detail for one listing (specs, options, photos, price history, seller)
get_korean_inspection
Official Korean inspection report
get_korean_accident_record
Insurance accident history and ownership changes
find_korean_models
Model name autocomplete across brands
korean_filter_values
Valid filter values
search_chinese_cars
Search Chinese listings (brand, model, model year, registration year, price in CNY, mileage, power, city, fuel, source, export-ready)
get_chinese_car
Full record for one Chinese listing
get_chinese_car_by_url
Full record by Che168/Dongchedi listing link (desktop, mobile or app)
get_chinese_inspection
Chinese inspection report (accident, flood, fire, EV battery)
get_chinese_specs
Autohome specification sheet of a Che168 trim (cc, kW, hp, torque, emission standard, weights, EV battery)
chinese_filter_values
Valid makes, fuels, cities and sources with listing counts
chinese_models
Models of a brand with listing counts
All tools are read-only.
Option 1: hosted (no install)
Add this URL as a remote MCP server:
https://mcp.encarapi.com/mcp
In clients with OAuth support the URL is all you need. On first use a browser window opens,
you paste your EnCarAPI key once, and the client is connected:
Claude (claude.ai, desktop, mobile): Settings - Connectors - Add custom connector, paste the URL
ChatGPT (developer mode): Settings - Connectors - create a connector with the URL
Cursor: {"mcpServers": {"encarapi": {"url": "https://mcp.encarapi.com/mcp"}}} in .cursor/mcp.json
VS Code: "MCP: Add Server" - HTTP - paste the URL
Claude Code:
claude mcp add --transport http encarapi https://mcp.encarapi.com/mcp
The key is checked once and is not stored on the server: it is encrypted into the token
your client receives. To disconnect, remove the server in your client; to cut off access
everywhere, rotate your key at encarapi.com.
Alternative: send the key yourself
Clients without OAuth support, scripts and gateways can send the key directly:
The x-api-key: YOUR_ENCARAPI_KEY header works as well. Clients that only accept a URL and
have no OAuth support can use https://mcp.encarapi.com/mcp?key=YOUR_ENCARAPI_KEY (a header
is preferred, since URLs can end up in logs). A separate ChinaCarAPI key goes into the
x-china-key header, or into the second field of the browser form.
For ChinaCarAPI customers
ChinaCarAPI has its own address:
https://mcp.chinacarapi.com/mcp
Add it as a remote MCP server exactly as above. On first use a browser window opens and you
paste your ChinaCarAPI key once. The form detects which key it is, so an EnCarAPI key works
there as well; customers with both keys put the EnCarAPI key into the optional second field.
Claude (claude.ai, desktop, mobile): Settings - Connectors - Add custom connector, paste the URL
Cursor: {"mcpServers": {"chinacarapi": {"url": "https://mcp.chinacarapi.com/mcp"}}} in .cursor/mcp.json
Claude Code:
claude mcp add --transport http chinacarapi https://mcp.chinacarapi.com/mcp
On this address the Chinese tools are listed first. Start with chinese_filter_values to
get valid makes, fuels and cities (the city filter needs the exact value from that list).
Without the browser login, send the key as a header. On mcp.chinacarapi.com a key in
Authorization: Bearer or x-api-key counts as a ChinaCarAPI key:
claude mcp add encarapi -e ENCARAPI_KEY=YOUR_ENCARAPI_KEY -- npx -y encarapi-mcp
Optional: CHINACARAPI_KEY for a separate ChinaCarAPI key.
Example prompts
"Find accident-free Genesis GV80 from 2022 or newer under 50 million KRW and compare the mileage."
"Show the inspection report and accident record for Encar listing 41000001."
"What are the cheapest export-ready BYD Seal listings in China right now?"
Self-hosting the HTTP endpoint
docker build -t encarapi-mcp .
docker run -p 3000:3000 encarapi-mcp # POST /mcp, GET /health
Stateless: every request carries its own key, nothing is stored.
To enable the OAuth flow ("connect by URL only"), set two environment variables:
Variable
Meaning
MCP_OAUTH_SECRET
At least 32 random characters, e.g. openssl rand -base64 48. Enables OAuth; without it the server only accepts keys sent by the client.
MCP_PUBLIC_URL
Public origin of the server, e.g. https://mcp.example.com (default https://mcp.encarapi.com). Tokens are bound to <MCP_PUBLIC_URL>/mcp.
MCP_PUBLIC_URLS
Optional, several public origins separated by commas, e.g. https://mcp.encarapi.com,https://mcp.chinacarapi.com. Replaces MCP_PUBLIC_URL. The Host header picks the origin (unknown hosts get the first one); each origin has its own issuer and branding, and its tokens are not accepted on the others. Origins whose host contains chinacarapi. get the ChinaCarAPI branding.
This adds /.well-known/oauth-protected-resource, /.well-known/oauth-authorization-server,
/register, /authorize and /token (OAuth 2.1 with PKCE, dynamic client registration).
There is still no database: client ids, authorization codes and tokens are encrypted,
self-contained values (AES-256-GCM) that carry the key. Consequences:
Changing MCP_OAUTH_SECRET signs out all OAuth clients (they reconnect through the browser).
Access tokens last 1 hour, refresh tokens 90 days and are replaced on every use.
Single use of authorization codes and of replaced refresh tokens is tracked in memory, so
it is best-effort: it does not survive a restart and is not shared between instances.
A single token cannot be revoked on the server. Rotating the EnCarAPI key cuts off all access.