Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

Wheel Fitment API

PYPI · WHEEL-SIZE-MCP · SCANNED SEP 21

Official MCP server for vehicle wheel and tire fitment data from wheel-size.com

Available components

−16 this week 64 Trust /100
Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security50
  • Malware scan not yet available for this package.Unverified
  • No known CVEs affecting this package version or its production dependencies.Pass
  • Runs hatchling.build at install time, a recognised native-build step with no shell scripting around it. View diagnostics → Pass
  • 1 of 23 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency32
Schema Quality & AI Usability74
  • 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 9778 tokens (~425/item across 23 items; 22 tools + 1 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management84
  • Stability check failed: the tool surface changed between 0.5.1 and 0.7.1: 0 tool removals, 1 breaking changes, 1 additions. See how to fix → Fail
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
  • Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • We read all 22 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
  • An AI judge read all 24 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a current MCP spec version (2026-07-28).Pass
Install

How do I install the Wheel Fitment API MCP server?

Wheel Fitment API runs locally as a PyPI package, launched with uvx wheel-size-mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

pypi · wheel-size-mcp

# add to Claude Code
claude mcp add driveate-wheel-size-mcp -- uvx wheel-size-mcp
// .cursor/mcp.json
{
  "mcpServers": {
    "driveate-wheel-size-mcp": {
      "command": "uvx",
      "args": [
        "wheel-size-mcp"
      ]
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "driveate-wheel-size-mcp": {
      "command": "uvx",
      "args": [
        "wheel-size-mcp"
      ]
    }
  }
}
# add to Codex CLI
codex mcp add driveate-wheel-size-mcp -- uvx wheel-size-mcp
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "driveate-wheel-size-mcp": {
      "type": "local",
      "command": [
        "uvx",
        "wheel-size-mcp"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add driveate-wheel-size-mcp --command uvx --arg wheel-size-mcp
# ~/.hermes/config.yaml
mcp_servers:
  driveate-wheel-size-mcp:
    command: "uvx"
    args: ["wheel-size-mcp"]
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "driveate-wheel-size-mcp": {
      "Transport": "stdio",
      "Command": "uvx",
      "Arguments": [
        "wheel-size-mcp"
      ]
    }
  }
}
# add to Vellum
assistant mcp add driveate-wheel-size-mcp -t stdio -c uvx -a wheel-size-mcp
// mcp.json
{
  "mcpServers": {
    "driveate-wheel-size-mcp": {
      "command": "uvx",
      "args": [
        "wheel-size-mcp"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 19 Sept 26 −2

    No change was recorded against any check on this day. Stability & Change Management went from 98 to 78.

  • 18 Sept 26 −15
    • Malware scan: pass → unverified security
  • 17 Sept 26 +15
    • Stability: 0.93 → unverified security
    • Tool safety: pass → unverified security
    • Stability: 0.93 → fail security
    • Malware scan: unverified → pass security
    • Schema quality: 385 → 425 functional
    • Schema quality: 8470 → 9526 functional
    • Capabilities: pass → unverified functional
    • Tool coverage: 100 → unverified functional
    • Schema quality: 100 → unverified functional
    • Package version: 0.6.0 → 0.7.1 functional
    • Package version: 0.6.0 → 0.7.0 functional
  • 16 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 90 to 93. That category is still filling its 30-day observation window: 27 days of observed history at the previous scan, 28 at this one. The score rises as the window fills, whether or not the server changes.

  • 15 Sept 26 −15
    • Malware scan: pass → unverified security
    • Schema quality: 337 → 385 functional
    • Package version: 0.5.1 → 0.6.0 functional
  • 13 Sept 26 +16
    • Malware scan: unverified → pass security
  • 12 Sept 26 −3
    • Stability: pass → 0.80 functional
  • 11 Sept 26 +1
    • Stability: 0.97 → pass security
Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 21 Sept 2026 · Analysed pypi/wheel-size-mcp@0.7.1

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem pypi

Background: How many MCP packages publish verified provenance →

Install scripts 1 script
Hook Tier Command
build_backend allowlisted hatchling.build

Background: Why install scripts are a supply-chain risk →

Dependencies 23 packages
Packages resolved 23
Stale 1
Tree resolution Complete

Background: SBOMs and build attestations, explained →

MCP tools · 22 exposed · ~8,634 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
ws_calculate_upsteps ~736

Calculate plus/minus sizing candidates for an OE wheel/tire combo. Given the OE rim and tire, enumerates rim diameters from steps_min to steps_max around OE (e.g. steps_min=-1, steps_max=2 with an 18-inch OE covers 17-20 inches in one call; the OE diameter is always included) and returns the tire/rim combinations whose design section width and overall diameter stay within s_max / do_max of OE. Tighten do_max for "without changing the overall diameter" requests. Each option carries step = rim diameter minus OE diameter in whole inches (0 = OE diameter; 17.5 counts as 17). Exactly one option has is_oe=true (step 0) — it echoes the requested OE combo. by_diameter lists every enumerated diameter in order, including those with count 0, as {"17": {"step": -1, "count": 12}, ...} — use it to build -1 / OE / +1 tabs. by_rim counts options per rim designation. Both summarise the WHOLE candidate list; total counts tire-rim combinations. The option rows are paginated MCP-side (limit/offset, API order: by diameter, then rim width) — a wide range with loose tolerances can exceed 300 options, so page through has_more. This is a geometric calculator only: it does not check load or speed ratings, brake/arch clearance, staggered setups or high-flotation sizes. Can be called freely without user initiation.

NameTypeReqDescription
aspect_ratiointegeryesOE tire nominal aspect ratio, %; a multiple of 5 (82 for legacy 82-series sizes).
do_maxMax relative difference of the overall diameter from OE, % (default 5). Use 2-3 to keep the speedometer accurate.
limitintegerOptions per page (default 50)
offsetintegerPagination offset into the option list
rim_diameternumberyesOE rim diameter in inches — a catalog diameter (10, 12-26 incl. 16.5/17.5/19.5/22.5, 28, 30); other values are a 400 that lists the valid ones.
rim_offsetnumberyesOE rim offset (ET) in mm
rim_widthnumberyesOE rim width in inches (e.g. 7.5)
s_maxMax relative difference of the design section width from OE, % (default 10)
section_widthintegeryesOE tire nominal section width in mm; must end in 5 (ISO 4000-1, e.g. 235). The size must exist in the metric tire catalog for that rim diameter.
stepsDEPRECATED — use steps_min/steps_max. steps=n (n>0) = steps_max=n; steps=-n = steps_min=-n and steps_max=0; steps=0 = OE diameter only. Cannot be combined with steps_min/steps_max.
steps_maxHighest rim diameter step above OE, 1-inch steps (default 2). Defaults are independent: steps_min=-1 alone means -1..+2.
steps_minLowest rim diameter step below OE, 1-inch steps (default 0 = OE only downwards). E.g. -1 with an 18-inch OE starts the range at 17 inches.

Structured output declared, but exposes no named fields.

No examples provided.

ws_check_hf_tire_fitment_for_vehicle ~402

Check whether a high-flotation (LT) tire size fits a specific vehicle. Answers "do 31x10.50R15 tires fit my 2000 Chevy Blazer?" in one call: returns the vehicle's modifications (trims) where this HF tire size appears as a documented fitment. An EMPTY result means no documented fitment for that combination. Inch-based HF sizes only — for metric sizes use ws_check_tire_fitment_for_vehicle. The API has no year parameter, so 'year' is filtered MCP-side against each modification's production range (start_year/end_year); each row echoes its range so near-misses can be explained. Each row carries engine {fuel, capacity, hp} and a powertrain summary (field vocabulary in ws_list_modifications). IMPORTANT: This is a Search method — only call when a user explicitly requests a fitment check. Do not call in autonomous loops.

NameTypeReqDescription
limitintegerResults per page
makestringyesMake slug (e.g. 'chevrolet'). Use ws_list_makes to find valid slugs.
modeAxle mode
modelstringyesModel slug (e.g. 'blazer'). Use ws_list_models to find valid slugs.
offsetintegerPagination offset
overall_diameternumberyesOverall tire diameter in inches (e.g. 31 for 31x10.50R15)
regionRegion slug(s) (e.g. ['usdm'] or ['eudm', 'audm']).
rim_diameternumberyesRim diameter in inches (e.g. 15)
section_widthnumberyesTire section width in inches (e.g. 10.5)
yearModel year — filters to modifications in production that year

Structured output declared, but exposes no named fields.

No examples provided.

ws_check_rim_fitment_for_vehicle ~437

Check whether specific rims fit a specific vehicle (make + model, optionally year). Answers "will 5x114.3 17x7 ET40 rims fit my 2020 Honda Civic?" in one call: returns the vehicle's modifications (trims) where this rim appears as a documented fitment. An EMPTY result means no documented fitment for that combination — the rim is likely incompatible or undocumented. The API has no year parameter, so 'year' is filtered MCP-side against each modification's production range (start_year/end_year); each row echoes its range so near-misses can be explained. Each row carries engine {fuel, capacity, hp} and a powertrain summary (field vocabulary in ws_list_modifications). Prefer this over ws_search_by_rim + ws_search_by_vehicle comparison when the user names a specific vehicle. IMPORTANT: This is a Search method — only call when a user explicitly requests a fitment check. Do not call in autonomous loops.

NameTypeReqDescription
bolt_patternstringyesBolt pattern of the rim (e.g. '5x114.3')
cbCentre bore in mm (e.g. 64.1)
limitintegerResults per page
makestringyesMake slug (e.g. 'honda'). Use ws_list_makes to find valid slugs.
modeAxle mode
modelstringyesModel slug (e.g. 'civic'). Use ws_list_models to find valid slugs.
offsetintegerPagination offset
regionRegion slug(s) (e.g. ['usdm'] or ['eudm', 'audm']).
rim_diameternumberyesRim diameter in inches (e.g. 17)
rim_offsetRim offset ET in mm (e.g. 40)
rim_widthnumberyesRim width in inches (e.g. 7)
yearModel year — filters to modifications in production that year

Structured output declared, but exposes no named fields.

No examples provided.

ws_check_tire_fitment_for_vehicle ~390

Check whether a specific tire size fits a specific vehicle (make + model, optionally year). Answers "do 225/45R17 tires fit my 2020 Honda Civic?" in one call: returns the vehicle's modifications (trims) where this tire size appears as a documented fitment. An EMPTY result means no documented fitment for that combination. Metric sizes only. The API has no year parameter, so 'year' is filtered MCP-side against each modification's production range (start_year/end_year); each row echoes its range so near-misses can be explained. Each row carries engine {fuel, capacity, hp} and a powertrain summary (field vocabulary in ws_list_modifications). Prefer this over ws_search_by_tire + ws_search_by_vehicle comparison when the user names a specific vehicle. IMPORTANT: This is a Search method — only call when a user explicitly requests a fitment check. Do not call in autonomous loops.

NameTypeReqDescription
aspect_ratiointegeryesTire aspect ratio (e.g. 45)
limitintegerResults per page
makestringyesMake slug (e.g. 'honda'). Use ws_list_makes to find valid slugs.
modeAxle mode
modelstringyesModel slug (e.g. 'civic'). Use ws_list_models to find valid slugs.
offsetintegerPagination offset
regionRegion slug(s) (e.g. ['usdm'] or ['eudm', 'audm']).
rim_diameternumberyesRim diameter in inches (e.g. 17)
section_widthintegeryesTire section width in mm (e.g. 225)
yearModel year — filters to modifications in production that year

Structured output declared, but exposes no named fields.

No examples provided.

ws_find_tires_for_rim ~366

Find compatible tire sizes for a given rim specification. Returns tire sizes (e.g. '245/70R17') with the number of vehicle generations that use each tire on this rim. Set diameter_range to also include tires for ±N inch rim diameters. Useful for tire product recommendations on wheel product pages. IMPORTANT: This is a Classified method — only call when a user explicitly requests tire recommendations for a rim. Do not call in autonomous loops or for bulk generation.

NameTypeReqDescription
bolt_patternstringyesBolt pattern (e.g. '5x114.3')
bs_pushBackspace push tolerance in mm (default 2)
cbCentre bore diameter in mm
diameter_rangeWiden rim diameter search ±N inches (0 = exact match)
fdWheel fastener thread diameter in mm (e.g. 12 for M12)
fs_pokeFrontspace poke tolerance in mm (default 2)
limitintegerResults per page
od_toleranceOverall diameter tolerance fraction (default 0.01)
offsetintegerPagination offset
ow_toleranceOverall width tolerance fraction (default 0)
rim_bst_fromBackspace tolerance lower bound in mm (default 2)
rim_bst_toBackspace tolerance upper bound in mm (default 2)
rim_diameternumberyesRim diameter in inches
rim_offsetnumberyesRim offset in mm
rim_widthnumberyesRim width in inches
sortSort: name (A-Z), fitment (closest FS delta first), load (heaviest first)

Structured output declared, but exposes no named fields.

No examples provided.

ws_find_vehicle_modifications_for_package ~483

Drill down into individual trims for a generation from ws_find_vehicles_for_package. PREREQUISITES — call ws_find_vehicles_for_package first to get: - make, model, generation slugs (from the results) - Use the same rim AND tire parameters and tolerances as the parent search Returns per-vehicle rows with OEM wheel specs (rim, tire) and fitment deltas vs the searched rim + tire package. Completes the e-commerce chain: package search → generations → specific trims. IMPORTANT: This is a Classified method — only call when a user explicitly requests the trims behind a package compatibility result. Do not call in autonomous loops or for bulk generation.

NameTypeReqDescription
aspect_ratiointegeryesTire aspect ratio
bolt_patternstringyesBolt pattern (e.g. '5x114.3')
bs_pushBackspace push tolerance in mm (default 2)
cbCentre bore diameter in mm
diameter_rangeWiden rim diameter search ±N inches (0 = exact match)
fdWheel fastener thread diameter in mm (e.g. 12 for M12)
fs_pokeFrontspace poke tolerance in mm (default 2)
generationstringyesGeneration slug from ws_find_vehicles_for_package results
limitintegerResults per page
makestringyesMake slug from ws_find_vehicles_for_package results
modelstringyesModel slug from ws_find_vehicles_for_package results
od_toleranceOverall diameter tolerance fraction (default 0.01)
offsetintegerPagination offset
ow_toleranceOverall width tolerance fraction (default 0)
rim_bst_fromBackspace tolerance lower bound in mm (default 2)
rim_bst_toBackspace tolerance upper bound in mm (default 2)
rim_diameternumberyesRim diameter in inches
rim_offsetnumberyesRim offset in mm
rim_widthnumberyesRim width in inches
section_widthintegeryesTire section width in mm
sortSort: name (A-Z), fitment (closest FS delta first), load (heaviest first)

Structured output declared, but exposes no named fields.

No examples provided.

ws_find_vehicle_modifications_for_rim ~449

Drill down into individual trims for a generation from ws_find_vehicles_for_rim. PREREQUISITES — call ws_find_vehicles_for_rim first to get: - make, model, generation slugs (from the results) - Use the same rim parameters and tolerances as the parent search Returns per-vehicle rows with OEM wheel specs (rim, tire, frontspace, backspace) and fitment deltas vs the searched rim. IMPORTANT: This is a Classified method — only call when a user explicitly requests the trims behind a rim compatibility result. Do not call in autonomous loops or for bulk generation.

NameTypeReqDescription
bolt_patternstringyesBolt pattern (e.g. '5x114.3')
bs_pushBackspace push tolerance in mm (default 2)
cbCentre bore diameter in mm
diameter_rangeWiden rim diameter search ±N inches (0 = exact match)
fdWheel fastener thread diameter in mm (e.g. 12 for M12)
fs_pokeFrontspace poke tolerance in mm (default 2)
generationstringyesGeneration slug from ws_find_vehicles_for_rim results
limitintegerResults per page
makestringyesMake slug from ws_find_vehicles_for_rim results
modelstringyesModel slug from ws_find_vehicles_for_rim results
od_toleranceOverall diameter tolerance fraction (default 0.01)
offsetintegerPagination offset
ow_toleranceOverall width tolerance fraction (default 0)
rim_bst_fromBackspace tolerance lower bound in mm (default 2)
rim_bst_toBackspace tolerance upper bound in mm (default 2)
rim_diameternumberyesRim diameter in inches
rim_offsetnumberyesRim offset in mm
rim_widthnumberyesRim width in inches
sortSort: name (A-Z), fitment (closest FS delta first), load (heaviest first)

Structured output declared, but exposes no named fields.

No examples provided.

ws_find_vehicle_modifications_for_tire ~524

Drill down into individual trims for a generation from ws_find_vehicles_for_tire. PREREQUISITES — call ws_find_vehicles_for_tire first to get: - make, model, generation slugs (from the results; the catalog slugs from ws_list_generations are the same and work here too) - Use the same tire parameters (section_width, aspect_ratio, rim_diameter) as the parent search. There are no tolerance or sort parameters: matching is the same as the parent — exact rim diameter, tire width and overall diameter within a fixed ±2 mm. Returns per-trim rows: production years, regions, the closest OEM rim/tire pair (oem_rim, oem_tire, oem_rim_diameter/width/offset, oem_tire_width_mm/diameter_mm/aspect_ratio), the match deltas against that pair (ow_delta_mm, od_delta_mm, od_delta_percent, ar_delta) and load data (load_kg, load_index). The mm deltas are the match precision against the nearest OEM pair (always within ±2 mm) — NOT how far the tire departs from stock. For upsize/downsize (plus/minus sizing) use ws_calculate_upsteps. oem_tire_aspect_ratio and ar_delta are null for high-flotation and alpha-numeric OEM tires (e.g. 37x12.50R17LT, G78-14). The result can be empty with HTTP 200 for a wrong slug or tire params that differ from the parent search — re-check those first. A genuinely empty drill-down also happens briefly after a catalog update (parent and drill-down are cached independently); that is not an error. IMPORTANT: This is a Classified method — only call when a user explicitly requests the trims behind a tire compatibility result. Do not call in autonomous loops or for bulk generation.

NameTypeReqDescription
aspect_ratiointegeryesTire aspect ratio
generationstringyesGeneration slug from ws_find_vehicles_for_tire results
limitintegerResults per page
makestringyesMake slug from ws_find_vehicles_for_tire results
modelstringyesModel slug from ws_find_vehicles_for_tire results
offsetintegerPagination offset
rim_diameternumberyesRim diameter in inches
section_widthintegeryesTire section width in mm

Structured output declared, but exposes no named fields.

No examples provided.

ws_find_vehicles_for_package ~400

Find vehicles compatible with a rim + tire package. Most precise classified search — considers both physical wheel fitment (backspace) and tire size compatibility simultaneously. Use sort='fitment' to put the closest matches first. For e-commerce combo/bundle product pages. To drill into a specific generation, use ws_find_vehicle_modifications_for_package. IMPORTANT: This is a Classified method — only call when a user explicitly requests a compatibility list or product card for a rim + tire package. Do not call in autonomous loops or for bulk generation.

NameTypeReqDescription
aspect_ratiointegeryesTire aspect ratio
bolt_patternstringyesBolt pattern (e.g. '5x114.3')
bs_pushBackspace push tolerance in mm (default 2)
cbCentre bore diameter in mm
diameter_rangeWiden rim diameter search ±N inches (0 = exact match)
fdWheel fastener thread diameter in mm (e.g. 12 for M12)
fs_pokeFrontspace poke tolerance in mm (default 2)
limitintegerResults per page
od_toleranceOverall diameter tolerance fraction (default 0.01)
offsetintegerPagination offset
ow_toleranceOverall width tolerance fraction (default 0)
rim_bst_fromBackspace tolerance lower bound in mm (default 2)
rim_bst_toBackspace tolerance upper bound in mm (default 2)
rim_diameternumberyesRim diameter in inches
rim_offsetnumberyesRim offset in mm
rim_widthnumberyesRim width in inches
section_widthintegeryesTire section width in mm
sortSort: name (A-Z), fitment (closest FS delta first), load (heaviest first)

Structured output declared, but exposes no named fields.

No examples provided.

ws_find_vehicles_for_rim ~498

Find vehicle generations compatible with a given rim via geometric backspace calculations. Unlike ws_search_by_rim (which does direct 1:1 wheel pair matching), this endpoint uses advanced 2D geometric filtering based on frontspace/backspace calculations to determine physical fitment. This yields broader results — any vehicle where the rim physically fits the wheel housing, even if this exact spec isn't in the OEM database. Returns make/model/generation with fitment deltas (frontspace/backspace), load capacity, and OEM ratio ranges. Use sort='fitment' to put the closest matches first on product pages. Note: in some cases spacers or special bolts/nuts may be required. Always verify rims don't interfere with brake calipers or extend beyond the wheel arch. For e-commerce product pages: "This wheel fits: BMW X5, Audi Q7..." To drill into a specific generation, use ws_find_vehicle_modifications_for_rim. IMPORTANT: This is a Classified method — only call when a user explicitly requests a compatibility list or product card for a rim. Do not call in autonomous loops or for bulk generation.

NameTypeReqDescription
bolt_patternstringyesBolt pattern (e.g. '5x114.3')
bs_pushBackspace push tolerance in mm (default 2)
cbCentre bore diameter in mm
diameter_rangeWiden rim diameter search ±N inches (0 = exact match)
fdWheel fastener thread diameter in mm (e.g. 12 for M12)
fs_pokeFrontspace poke tolerance in mm (default 2)
limitintegerResults per page
od_toleranceOverall diameter tolerance fraction (default 0.01)
offsetintegerPagination offset
ow_toleranceOverall width tolerance fraction (default 0)
rim_bst_fromBackspace tolerance lower bound in mm (default 2)
rim_bst_toBackspace tolerance upper bound in mm (default 2)
rim_diameternumberyesRim diameter in inches
rim_offsetnumberyesRim offset in mm
rim_widthnumberyesRim width in inches
sortSort: name (A-Z), fitment (closest FS delta first), load (heaviest first)

Structured output declared, but exposes no named fields.

No examples provided.

ws_find_vehicles_for_tire ~167

Find vehicle generations that use a specific tire size. Simplest classified search — matches tire dimensions only, no bolt pattern or backspace filtering. For e-commerce: "This tire fits: Honda Civic, Toyota Camry..." To drill into a specific generation, use ws_find_vehicle_modifications_for_tire. IMPORTANT: This is a Classified method — only call when a user explicitly requests a compatibility list or product card for a tire. Do not call in autonomous loops or for bulk generation.

NameTypeReqDescription
aspect_ratiointegeryesTire aspect ratio
limitintegerResults per page
offsetintegerPagination offset
rim_diameternumberyesRim diameter in inches
section_widthintegeryesTire section width in mm

Structured output declared, but exposes no named fields.

No examples provided.

ws_get_spec_metadata ~322

Get computed geometry, population stats, and hints for a wheel/tire spec. Auto-detects mode from parameters: - rim: rim_diameter + rim_width (optionally rim_offset) - tire: section_width [mm] + aspect_ratio + rim_diameter - hf_tire: overall_diameter + section_width [inches] + rim_diameter - package: rim + tire params combined Use before search or classified calls to understand whether a spec is common or unusual, what tolerances to use, and what to expect. This is a utility tool — can be called freely without user initiation.

NameTypeReqDescription
aspect_ratioTire aspect ratio (e.g. 45)
bolt_patternBolt pattern (e.g. '5x114.3'). Narrows population stats.
cbCentre bore in mm (e.g. 71.6). Passed to suggested classified params.
overall_diameterOverall tire diameter in inches (e.g. 33). HF mode.
rim_diameterRim diameter in inches (e.g. 18)
rim_offsetOffset ET in mm (e.g. 45). Enables geometry.
rim_widthRim width in inches (e.g. 8.0)
section_widthTire section width. Metric tires: mm (95-405, e.g. 225). HF tires (when overall_diameter is set): inches (4.5-14, e.g. 12.5).

Structured output declared, but exposes no named fields.

No examples provided.

ws_list_generations ~116

List generations for a make/model. Returns generation slugs, names, platform codes, and production spans. Alternative to ws_list_years for models with many generations (e.g. BMW 3 Series). After getting a generation, use ws_list_modifications with the generation slug.

NameTypeReqDescription
makestringyesMake slug
modelstringyesModel slug
regionRegion slug(s) (e.g. ['eudm']). Filter generations sold in these regions.
yearFilter by year

Structured output declared, but exposes no named fields.

No examples provided.

ws_list_makes ~191

List all vehicle manufacturers (makes). Returns slugs and names for all car brands in the database. Common starting point for vehicle fitment lookups, but not the only one — ws_list_years can also be called first (without params) to start from year. After getting a make slug, use ws_list_models to find models.

NameTypeReqDescription
brandsOnly these make slugs (e.g. ['toyota', 'nissan']). For curated storefronts.
brands_excludeExclude these make slugs (e.g. ['geely', 'great-wall']).
langTranslate names (e.g. 'ru'). name_en keeps the English original.
regionRegion slug(s) (e.g. ['usdm', 'jdm']). Filter makes sold in these regions.
yearFilter by year (e.g. 2024)

Structured output declared, but exposes no named fields.

No examples provided.

ws_list_models ~147

List models for a given make. Returns model slugs, names, and production year ranges. Can be filtered by year to narrow results (e.g. "which Toyota models existed in 2020?"). After getting a model slug, use ws_list_years or ws_list_generations next.

NameTypeReqDescription
langTranslate names (e.g. 'ru'). name_en keeps the English original.
makestringyesMake slug (e.g. 'toyota'). Use ws_list_makes to find valid slugs.
regionRegion slug(s) (e.g. ['usdm']). Filter models sold in these regions.
yearFilter by year

Structured output declared, but exposes no named fields.

No examples provided.

ws_list_modifications ~1,159

List modifications (trims) for a specific vehicle. Returns trim names, engine and powertrain specs, and production years. One of year or generation is required. Filter by power via horsepower (exact ±2.7 hp) or horsepower_min/max (e.g. "trims over 300 hp" → horsepower_min=300). After getting a modification slug, use ws_search_by_vehicle for fitment data. Each row carries two sibling blocks: - engine: legacy {fuel, capacity, type, power, code}. engine.power is the headline figure whose source depends on the electrification level: the combustion engine for combustion-only cars and mild hybrids; system power (else sum of motors, else engine) for full and plug-in hybrids; sum of motors (else engine) for range-extenders; system power (else sum of motors) for BEV/FCEV. engine.fuel is a display string (renamed without notice, e.g. 'Natural gas' → 'CNG'); group on powertrain fuel codes instead. - powertrain: combustion_engine, electrification_level, primary_fuel and secondary_fuel (fuel codes — a real code can be passed back as the fuel filter; the absence words cannot), engine_power_hp, system_power_hp, engine_power_secondary_hp, and motors [{axle, hp, code}]. The full block with kW/PS/hp and fuel titles is returned by ws_search_by_vehicle. Powertrain semantics: - engine_power_hp = the combustion engine alone on its primary fuel, excluding any electric motor. This is what most other vehicle-data providers publish as "power"; use it to reconcile hybrids against other datasets. On bi-fuel vehicles it may still be the higher of the engine's two ratings rather than the primary-fuel one (splitting them into engine_power_secondary is editorial work in progress). - system_power_hp = manufacturer-declared total of the whole powertrain. A distinct quantity only on full hybrids, plug-in hybrids and EVs with a motor on each axle; normally null on a single-motor EV, a mild hybrid, a range-extender and a pure combustion vehicle. NEVER recon…

NameTypeReqDescription
fuelFuel code — one of: biodiesel_blend, cng, diesel, e100, electric, ethanol_blend, flex_fuel, h2, hybrid, lpg, petrol, petrol_cng, petrol_lpg. One value matches the legacy engine.fuel OR powertrain.pri…
generationGeneration slug (alternative to year)
horsepowerHorsepower, ±2.7 hp band (e.g. 150). Matches the headline engine.power figure, whose source depends on the electrification level — not always the system total, not always the combustion engine.
horsepower_maxMaximum horsepower. Same headline figure as horsepower.
horsepower_minMinimum horsepower (e.g. 300). Same headline figure as horsepower.
langTranslate names (e.g. 'ru'). name_en keeps the English original.
makestringyesMake slug
modelstringyesModel slug
regionRegion slug(s) (e.g. ['usdm'] or ['eudm', 'audm']). Multiple regions give a more comprehensive view.
trimFuzzy engine/trim name search (e.g. '2.0T', 'V6')
trim_levelCase-insensitive trim level (e.g. 'EX-L', 'Touring', 'Sport')
yearModel year

Structured output declared, but exposes no named fields.

No examples provided.

ws_list_regions ~56

List all market regions where vehicles are sold. Returns region slugs and display names (e.g. usdm=USA, eudm=Europe, jdm=Japan). Use region slugs to filter results in other tools.

Input schema present but exposes no named parameters.

Structured output declared, but exposes no named fields.

No examples provided.

ws_list_years ~119

List available years, optionally filtered by make and model. Can be called without params to get all years globally — this makes it an alternative starting point for navigation (Scenario 3: years first). Can also be called with make only to get years for that brand (Scenario 2). After getting a year, use ws_list_modifications to get trims.

NameTypeReqDescription
makeMake slug
modelModel slug
regionRegion slug(s) (e.g. ['usdm']). Filter years available in these regions.

Structured output declared, but exposes no named fields.

No examples provided.

ws_search_by_hf_tire ~242

Find vehicles compatible with a high-flotation (LT) tire size. HF tires use inch-based sizing like 31x10.50R15: overall diameter x section width R rim diameter, all in inches. Common on trucks, SUVs, and offroad vehicles. For metric sizes (e.g. 225/45R17) use ws_search_by_tire instead. IMPORTANT: This is a Search method — only call when a user explicitly requests a tire compatibility search. Do not call in autonomous loops.

NameTypeReqDescription
limitintegerResults per page
modeAxle mode
offsetintegerPagination offset
overall_diameternumberyesOverall tire diameter in inches (e.g. 31 for 31x10.50R15)
regionRegion slug(s) (e.g. ['usdm'] or ['eudm', 'audm']).
rim_diameternumberyesRim diameter in inches (e.g. 15)
section_widthnumberyesTire section width in inches (e.g. 10.5)

Structured output declared, but exposes no named fields.

No examples provided.

ws_search_by_rim ~478

Find vehicles compatible with given rim specs via direct 1:1 wheel pair matching. Uses a direct mapping of existing wheel pair data to vehicle specs — returns only vehicles where this exact rim (or close offset) appears in the database as an OEM or documented fitment. Does NOT calculate whether the rim would physically fit based on wheel housing geometry. Diameter and width accept either an exact value (rim_diameter, rim_width) or a min/max range pair — e.g. "18-19 inch, ET30-45" → rim_diameter_min=18, rim_diameter_max=19, rim_offset_min=30, rim_offset_max=45. One of exact or range is required per dimension. IMPORTANT: This is a Search method — only call when a user explicitly requests a rim compatibility search. Do not call in autonomous loops. For e-commerce product cards, use ws_find_vehicles_for_rim instead — it uses geometric backspace calculations for broader, physics-based matching.

NameTypeReqDescription
bolt_patternstringyesBolt pattern (e.g. '5x114.3')
cbCentre bore in mm (e.g. 64.1)
cb_maxRange search: max centre bore
cb_minRange search: min centre bore
fdWheel fastener thread diameter in mm (e.g. 12 for M12)
limitintegerResults per page
modeAxle mode
offsetintegerPagination offset
regionRegion slug(s) (e.g. ['usdm'] or ['eudm', 'audm']).
rim_diameterExact rim diameter in inches (e.g. 18)
rim_diameter_maxRange search: max diameter
rim_diameter_minRange search: min diameter (use with _max)
rim_offsetRim offset in mm
rim_offset_maxRange search: max offset
rim_offset_minRange search: min offset
rim_widthExact rim width in inches (e.g. 8)
rim_width_maxRange search: max width
rim_width_minRange search: min width (use with _max)

Structured output declared, but exposes no named fields.

No examples provided.

ws_search_by_tire ~395

Find vehicles compatible with a given tire size (metric). The response includes 'facets' (per-value car counts for speed_symbol, load_index, region, fitment — use them to offer refinements) and 'summary' (feature counts like runflat/winter + physical tire data). Echo a facet value back as a filter to drill down. IMPORTANT: This is a Search method — only call when a user explicitly requests a tire compatibility search. Do not call in autonomous loops. This tool accepts metric sizes only. For high-flotation (LT) tires with inch-based sizing (e.g. 31x10.50R15), use ws_search_by_hf_tire.

NameTypeReqDescription
aspect_ratiointegeryesTire aspect ratio (e.g. 55)
fitmentsquare = same size all around, staggered = rear differs from front
limitintegerResults per page
load_indexLoad index(es), OR-combined (e.g. [91, 94]). Counts in facets.load_index.
load_index_maxMaximum load index
load_index_minMinimum load index (e.g. 91)
modeAxle mode
offsetintegerPagination offset
regionRegion slug(s) (e.g. ['usdm'] or ['eudm', 'audm']).
rim_diameternumberyesRim diameter in inches (e.g. 17)
section_widthintegeryesTire section width in mm (e.g. 225)
speed_symbolSpeed rating(s), OR-combined (e.g. ['V', 'W']). Counts in facets.speed_symbol.
speed_symbol_maxMaximum speed rating
speed_symbol_minMinimum speed rating (e.g. 'V' = V or faster)

Structured output declared, but exposes no named fields.

No examples provided.

ws_search_by_vehicle ~557

Get wheel and tire fitment data for a specific vehicle. REQUIRED parameter combination: 1. Either 'modification' OR 'region' (to narrow fitment results) 2. Either 'year' OR 'generation' (to identify the vehicle) — not required when 'modification' is provided PREREQUISITES — you MUST have valid slugs before calling: - make: lowercase slug from ws_list_makes (e.g. 'toyota', 'land-rover') - model: lowercase slug from ws_list_models (e.g. 'camry', '3-series') - modification or region: from ws_list_modifications / ws_list_regions - year or generation: from ws_list_years / ws_list_generations (skip when modification is provided) - NOTE: this endpoint accepts only ONE region (unlike other tools) Do NOT guess these values. Call the prerequisite tools first. Returns OEM and optional wheel/tire specs including rim diameter, width, offset, bolt pattern, tire sizes, and tire pressure. Each wheel has setup='symmetric' (same front/rear) or 'staggered' (different). Each row also carries the legacy engine block and the full powertrain block as the API returns them: combustion_engine, electrification_level, primary_fuel / secondary_fuel as {code, title}, engine_power / system_power / engine_power_secondary as {kW, PS, hp} or null, and motors [{axle, power, code}]. The field vocabulary, the absence words (not_applicable / not_reported / unknown) and the power semantics are described in ws_list_modifications. IMPORTANT: This is a Search method — only call when a user explicitly requests fitment information. Do not call in autonomous loops.

NameTypeReqDescription
detail_levelstring'concise' = key specs only, 'full' = all wheel/tire details
generationGeneration slug (alternative to year). From ws_list_generations.
langTranslate make/model/region names (e.g. 'ru').
limitintegerResults per page
makestringyesMake slug (e.g. 'toyota'). Use ws_list_makes to find valid slugs.
modelstringyesModel slug (e.g. 'camry'). Use ws_list_models to find valid slugs.
modificationModification slug from ws_list_modifications. Alternative to region.
offsetintegerPagination offset
regionSingle region slug (e.g. 'usdm'). Only ONE region allowed here.
yearModel year

Structured output declared, but exposes no named fields.

No examples provided.

Common questions

What is the Wheel Fitment API MCP server?

Wheel Fitment API is an MCP server listed in the public MCP registry as io.github.driveate/wheel-size-mcp. Official MCP server for vehicle wheel and tire fitment data from wheel-size.com. This page covers its PyPI package (wheel-size-mcp).

Is the Wheel Fitment API MCP server safe to use?

Wheel Fitment API scores 64 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 21 September 2026. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the Wheel Fitment API MCP server expose?

Wheel Fitment API exposes 22 tools: ws_list_makes, ws_list_models, ws_list_years, ws_list_generations, ws_list_modifications, and 17 more. Their descriptions and schemas cost roughly 8,634 tokens of context every time the server is loaded.

Is the Wheel Fitment API MCP server still maintained?

Wheel Fitment API is still listed as active in the MCP registry. We last reached this channel on 21 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.