ChinaCarAPI - Chinese used cars

io.github.ThatMojov1.2.0Updated Oct 5, 2026

Live used car listings from China (Dongchedi, Che168) in English, with inspection reports.

VerifiedStreamable HTTPWeb executableBusiness & Commerce

Overview

AI-generated overview

Lets an assistant search live Chinese used-car listings from Dongchedi and Che168, with full details and inspection reports.

What it does
Provides read-only tools over live Chinese used-car listings from Dongchedi and Che168, translated into English. Tools include search_chinese_cars for filtering by brand, model, model year, registration year, price in CNY, mileage, city, fuel, source and export-ready status; get_chinese_car for a full record; get_chinese_inspection for accident, flood, fire and EV battery reports; plus chinese_filter_values and chinese_models for valid makes, fuels, cities, sources and models with listing counts. The same endpoint also exposes Korean-market tools.
When to use it
Useful when someone wants an assistant to look up current Chinese used-car inventory, compare listings, or pull inspection and accident details without browsing the source sites manually. Best for research and comparison rather than transactions.
Requirements
A remote MCP endpoint at no local install. A ChinaCarAPI key is required, supplied either through the browser OAuth flow on first use or as a header (Authorization: Bearer, x-api-key, or x-china-key). An EnCarAPI key with the China add-on also works. Network access to the endpoint is needed.
Before you install
An API key is required and is a credential; the README notes that a key placed in a URL query string can end up in logs, so headers are preferred. The server is stateless and read-only, but the key is encrypted into the token the client receives, and rotating the key is the way to cut off access. Listing data comes from third-party Chinese sites and the service is not affiliated with them.

Installation

In SourceWeft

  1. Open ChinaCarAPI - Chinese used cars in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "chinacarapi-mcp": {
      "type": "http",
      "url": "https://mcp.chinacarapi.com/mcp"
    }
  }
}

README

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 China (Dongchedi, Che168), and pull full details, inspection reports and accident records.

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

ToolWhat it does
search_korean_carsSearch Korean listings (brand, model, year, price in 10,000 KRW, mileage, fuel, accident-free, source: encar / kbc / kcar / all)
get_korean_carFull detail for one listing (specs, options, photos, price history, seller)
get_korean_inspectionOfficial Korean inspection report
get_korean_accident_recordInsurance accident history and ownership changes
find_korean_modelsModel name autocomplete across brands
korean_filter_valuesValid filter values
search_chinese_carsSearch Chinese listings (brand, model, model year, registration year, price in CNY, mileage, city, fuel, source, export-ready)
get_chinese_carFull record for one Chinese listing
get_chinese_inspectionChinese inspection report (accident, flood, fire, EV battery)
chinese_filter_valuesValid makes, fuels, cities and sources with listing counts
chinese_modelsModels 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:
bash
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:

https://mcp.encarapi.com/mcpAuthorization: Bearer YOUR_ENCARAPI_KEY

Claude Code:

bash
claude mcp add --transport http encarapi https://mcp.encarapi.com/mcp \  --header "Authorization: Bearer YOUR_ENCARAPI_KEY"

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:
bash
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:

bash
claude mcp add --transport http chinacarapi https://mcp.chinacarapi.com/mcp \  --header "Authorization: Bearer YOUR_CHINACARAPI_KEY"

x-china-key: YOUR_CHINACARAPI_KEY works on both addresses; then Authorization can carry an EnCarAPI key for the Korean tools.

Locally (npx), set CHINACARAPI_KEY instead of ENCARAPI_KEY:

bash
claude mcp add chinacarapi -e CHINACARAPI_KEY=YOUR_CHINACARAPI_KEY -- npx -y encarapi-mcp

Option 2: local (npx)

Claude Desktop (claude_desktop_config.json), Cursor (.cursor/mcp.json) and most other clients:

json
{  "mcpServers": {    "encarapi": {      "command": "npx",      "args": ["-y", "encarapi-mcp"],      "env": {        "ENCARAPI_KEY": "YOUR_ENCARAPI_KEY"      }    }  }}

Claude Code:

bash
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

bash
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:

VariableMeaning
MCP_OAUTH_SECRETAt 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_URLPublic 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_URLSOptional, 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.
bash
docker run -p 3000:3000 -e MCP_OAUTH_SECRET="$(openssl rand -base64 48)" \  -e MCP_PUBLIC_URL=https://mcp.example.com encarapi-mcp

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.

Links

EnCarAPI is an independent service and not affiliated with Encar, KB Chachacha, K Car, Dongchedi or Che168.

License

MIT

Source: README.md at commit 1d06c20

Tools

0
Tool metadata has not been indexed yet.

Version history

1
  1. v1.2.0LatestOct 5, 2026