MCP server · New Zealand

Connect to YardStock

Live used-vehicle stock from named New Zealand dealer groups, read off those groups’ own yard websites. Roughly 30,000 live listings across 200+ dealer yards, New Zealand-wide. Not Trade Me, not AutoTrader, not a national roster.

Endpoint https://stock.yardstock.nz/mcp Transport streamable-http Health https://stock.yardstock.nz/health

Auth in one paragraph

You can connect with no credentials. Anonymous callers get initialize, tools/list and all three tools, with two limits: search_stock returns at most 5 results per call whatever limit you send, and vin/plate are omitted. An API key lifts both — send it as Authorization: Bearer <key> or X-Api-Key: <key>. Keys are issued manually for now; ask via yardstock.nz.

The three tools

ToolArgumentsReturns
coverage none Which dealer groups are in the index — legal_name, listing_count, cities[]. Call it first.
search_stock make, model, year_min, year_max, price_min_nzd, price_max_nzd, city, fuel, limit (default 20, max 50, anonymous 5) results[] sorted by price ascending: source_url, year, make, model, price_nzd, odometer_km, fuel, yard_label, city, trader_name, last_seen.
get_listing source_url (required) One listing, plus vin/plate when stored and keyed.

Every response carries a coverage block — groups_with_stock, live_listings, last_seen_max, not_included[]. Agents should never invent stock for a group that is not listed there.

Install

Claude Code

claude mcp add --transport http yardstock https://stock.yardstock.nz/mcp

With a key: append --header "Authorization: Bearer <key>"

Claude (web & desktop)

Add it as a custom connector — one click:

Add YardStock to Claude

Or manually: Settings → Connectors → Add custom connector, name YardStock, URL https://stock.yardstock.nz/mcp.

Cursor

Add YardStock to Cursor

Or edit ~/.cursor/mcp.json:

{
  "mcpServers": {
    "yardstock": {
      "url": "https://stock.yardstock.nz/mcp"
    }
  }
}

VS Code (Copilot / MCP)

Install in VS Code

Or from a terminal:

code --add-mcp '{"name":"yardstock","type":"http","url":"https://stock.yardstock.nz/mcp"}'

ChatGPT (developer mode)

  1. Enable Settings → Connectors → Advanced → Developer mode.
  2. Settings → Connectors → Create.
  3. Name YardStock, MCP server URL https://stock.yardstock.nz/mcp.
  4. Authentication: No authentication for the free tier, or API key / custom header Authorization: Bearer <key> for full access.
  5. Create, then enable YardStock from the composer’s tools menu in a chat.

Perplexity

  1. Open Settings → Connectors → Add connector and choose a custom / remote MCP connector.
  2. Name YardStock, server URL https://stock.yardstock.nz/mcp, transport HTTP (streamable).
  3. Leave auth empty for the free tier, or add header Authorization: Bearer <key>.
  4. Save, then select YardStock as a source when you ask about NZ used cars.

Microsoft Copilot Studio

  1. In your agent, open Tools → Add a tool → New tool → Model Context Protocol.
  2. Server name YardStock, description “Live used-car stock on named NZ dealer yards”.
  3. Server URL https://stock.yardstock.nz/mcp, transport Streamable HTTP.
  4. Authentication No authentication for the free tier, or API key in the Authorization header as Bearer <key>.
  5. Create, then add the connection to your agent and publish.

Raw JSON-RPC (curl)

No client needed — the endpoint is a plain JSON-RPC 2.0 POST. These work anonymously; add -H "Authorization: Bearer <key>" for full results.

List the tools

curl -sS https://stock.yardstock.nz/mcp \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

Who is covered

curl -sS https://stock.yardstock.nz/mcp \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/call",
       "params":{"name":"coverage","arguments":{}}}'

Search: Ford Ranger under $30,000 in Auckland

curl -sS https://stock.yardstock.nz/mcp \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","id":3,"method":"tools/call",
       "params":{"name":"search_stock","arguments":{
         "make":"Ford","model":"Ranger",
         "price_max_nzd":30000,"city":"Auckland","limit":20}}}'

One listing by URL

curl -sS https://stock.yardstock.nz/mcp \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer YOUR_KEY' \
  -d '{"jsonrpc":"2.0","id":4,"method":"tools/call",
       "params":{"name":"get_listing","arguments":{
         "source_url":"https://example.co.nz/vehicle/12345"}}}'

Health

curl -sS https://stock.yardstock.nz/health
# {"ok": true, "service": "nz-yard-stock"}

Rate expectations

One origin in New Zealand behind Cloudflare. Keep it under about 60 requests per minute. Back off once on 429 or 5xx. Fetching a source_url to show a user is expected; crawling the dealer sites is not — that is what this server is for.