FINN Auto - Car Subscription

Search and browse cars for all-inclusive subscription on FINN. Prices, specs, and checkout links.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
82%
Naming quality
100%
Poisoning risk
100%
Permission match
90%
Protocol compliance
100%

Findings (1)

  • LOWTool 'get_internal_link_url' suggests web access but openWorldHint=falsein get_internal_link_url

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,767Tokens (tool definitions)
~2.1 KBTypical response size
Moderate attention impact (1.38% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "auto": {
      "url": "https://www.finn.com/api/mcp"
    }
  }
}

Remote endpoints

https://www.finn.com/api/mcpstreamable-http

What it can do

Tool inventory

Tools (5)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢search_vehicles(brands, models, cartypes, fuels, colors, ...)

Search available cars on FINN with filters. Returns matching vehicles with prices, images, and links. All filter values use German names (e.g. "Elektro" not "Electric", "Schwarz" not "Black"). IMPORTANT: Always show detail_url as a clickable link for each vehicle. The vehicle_id field is an internal API identifier for get_vehicle_details — never display it to users.

Input Schema

{
  "type": "object",
  "properties": {
    "brands": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Car brands (e.g. [\"BMW\", \"Audi\", \"Mercedes-Benz\"])"
    },
    "models": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Car models (e.g. [\"iX1\", \"3er Limousine\"])"
    },
    "cartypes": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Car types in German (e.g. [\"SUV\", \"Kombi\", \"Kleinwagen\", \"Van\"])"
    },
    "fuels": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Fuel types in German (e.g. [\"Elektro\", \"Benzin\", \"Diesel\", \"Plug-In-Hybrid\"])"
    },
    "colors": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Colors in German (e.g. [\"Schwarz\", \"Weiß\", \"Blau\"])"
    },
    "min_price": {
      "type": "number",
      "description": "Minimum monthly price in EUR"
    },
    "max_price": {
      "type": "number",
      "description": "Maximum monthly price in EUR"
    },
    "min_power": {
      "type": "number",
      "description": "Minimum power in kW"
    },
    "max_power": {
      "type": "number",
      "description": "Maximum power in kW"
    },
    "min_ev_range": {
      "type": "number",
      "description": "Minimum electric range in km"
    },
    "max_ev_range": {
      "type": "number",
      "description": "Maximum electric range in km"
    },
    "has_hitch": {
      "type": "boolean",
      "description": "Filter for cars with hitch"
    },
    "is_young_driver": {
      "type": "boolean",
      "description": "Filter for cars allowing drivers under 23"
    },
    "has_deals": {
      "type": "boolean",
      "description": "Filter for cars with special deals/discounts"
    },
    "terms": {
      "type": "array",
      "items": {
        "type": "number"
      },
      "description": "Subscription term lengths in months (available: 1, 6, 12, 18, 24, 36)"
    },
    "available_from": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Earliest delivery date (YYYY-MM-DD)"
    },
    "available_to": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Latest delivery date (YYYY-MM-DD)"
    },
    "sort": {
      "type": "string",
      "enum": [
        "asc",
        "desc",
        "availability",
        "last_added"
      ],
      "description": "Sort order: asc/desc by price, availability, or last_added"
    },
    "limit": {
      "type": "number",
      "minimum": 1,
      "maximum": 10,
      "description": "Number of results (1-10, default 5)"
    }
  },
  "additionalProperties": false
}
🟢get_vehicle_details(vehicle_id)

Get full specifications, equipment, all images, and pricing per term for a specific vehicle. Use a vehicle_id from search_vehicles results. IMPORTANT: Always show `detail_url` as a clickable link — it points to the FINN configurator where the user picks term and km. To produce a direct checkout link for a specific term + km combination (and optionally a one-time Fahrzeugbereitstellung), call `get_subscription_pricing` and use the `checkout_url` it returns. Never construct checkout URLs yourself. The `vehicle_id` field is an internal API identifier — never display it to users.

Input Schema

{
  "type": "object",
  "properties": {
    "vehicle_id": {
      "type": "string",
      "maxLength": 200,
      "pattern": "^[a-zA-Z0-9-]+$",
      "description": "The vehicle product ID (e.g. \"bmw-ix1-12345-alpinweissuni\")"
    }
  },
  "required": [
    "vehicle_id"
  ],
  "additionalProperties": false
}
🟢get_available_filters

Discover what's currently available in FINN's fleet. Returns all brands (with nested models), car types, fuel types, colors, subscription terms, gearshifts, and price/power/range bounds. Use this to answer questions like 'What brands does FINN offer?' or to validate filter values before searching.

Input Schema

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢get_subscription_pricing(vehicle_id, term_months, km_package, down_payment_amount)

Calculate exact monthly subscription price for a specific vehicle, term, and mileage combination. Returns base price, km add-on, total, and a canonical checkout URL. Checkout URL structure (always use the URL returned in `checkout_url` verbatim — do NOT construct your own): https://www.finn.com/de-DE/checkout/cart/{vehicleId}/{term}/{kmPackage} https://www.finn.com/de-DE/checkout/cart/{vehicleId}/{term}/{kmPackage}?downPaymentAmount={amount} The three positional path segments after `/cart` are vehicle id, term in months, and monthly km package — in that order. About `down_payment_amount` (Fahrzeugbereitstellung): - Fahrzeugbereitstellung is a one-time vehicle provisioning fee. - When `down_payment_amount` is provided, it is paid upfront as Einmalzahlung (one-time payment) and the URL includes `?downPaymentAmount={amount}`. - When omitted, the same fee is spread across the term and absorbed into the monthly price; the URL has no query string.

Input Schema

{
  "type": "object",
  "properties": {
    "vehicle_id": {
      "type": "string",
      "maxLength": 200,
      "pattern": "^[a-zA-Z0-9-]+$",
      "description": "The vehicle product ID"
    },
    "term_months": {
      "description": "Subscription term in months (1, 6, 9, 12, 13, 18, 24, 36)"
    },
    "km_package": {
      "description": "Monthly km package (500, 1000, 1500, 2000, 2500, 3000, 4000, 5000)"
    },
    "down_payment_amount": {
      "type": "number",
      "minimum": 0,
      "description": "Optional one-time Fahrzeugbereitstellung (vehicle provisioning fee) in EUR, paid upfront as Einmalzahlung. When provided, the checkout URL gets `?downPaymentAmount={amount}` and the monthly price drops accordingly. When omitted, the fee is spread across the term inside the monthly price."
    }
  },
  "required": [
    "vehicle_id",
    "term_months",
    "km_package"
  ],
  "additionalProperties": false
}
🟢get_internal_link_url(brand, model)

Get canonical FINN URLs for a brand and its models — for building internal linking blocks on SEO pages. For each model returns three URLs that target DIFFERENT funnels: `mdp_url` (marketing/brand page), `plp_subscribe_url` (subscription product listing, /de-DE/subscribe/{brand}_{model}), and `plp_leasing_url` (leasing product listing, /de-DE/leasing/{brand}_{model}). Use `plp_leasing_url` when linking from a Leasing advisory, `plp_subscribe_url` when linking from subscription content. If `model` is omitted, returns all currently available models for the brand.

Input Schema

{
  "type": "object",
  "properties": {
    "brand": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "Brand name (e.g. \"Ford\", \"Mercedes-Benz\", \"BMW\")"
    },
    "model": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "Optional model name (e.g. \"Puma\", \"iX1\"). If omitted, returns all available models for the brand."
    }
  },
  "required": [
    "brand"
  ],
  "additionalProperties": false
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded5 tools
verifiedversion not recorded5 tools