Number + optional brand/type
Part to vehicle applications
Resolve one exact catalog product and fan out its paged ACES application rows with vehicle identity, quantity, notes, and qualifiers intact.
Follow the implementation from request to evidence.
Every node corresponds to a real resolver, operation, validation boundary, or response surface in the current code.
01 inputPart query- validated evidence
02 getAutoCareSearchResultsExact identityResolve or return choices
- validated evidence
03 getAutoCarePartApplicationsApplication pagesACES rows and continuation
- validated evidence
04 gateCompleteness boundaryTotal · returned · cursor/page
- validated evidence
05 outputVehicle fan-outApplications grouped without losing qualifiers
The exact arguments the MCP server accepts.
This schema is generated from the registered Python tool. Required fields, defaults, nested models, and constraints are not maintained by hand.
requestPartFitmentsInputrequired
brandstring | nulloptional
nullcursor_markstring | nulloptional
nullmax_resultsintegeroptional
100min 1max 200pageinteger | nulloptional
nullpart_numberstringrequired
part_typestring | nulloptional
Optional readable part-type hint (e.g. 'Engine Oil Filter'). Used to prefer the intended category when a part number exists in multiple unrelated categories; best effort, never erases evidence.
nullpart_type_idinteger | nulloptional
null{
"request": {
"part_number": "9619",
"brand": "Bosch",
"max_results": 100
}
} What cars does Bosch 9619 fit?What each upstream call needs—and earns.
Conditional calls are labeled. Validation describes the exact rule that allows evidence to advance to the next stage.
getAutoCareSearchResultsResolve brand, number, and optional part type to one exact catalog identity.- Requires
- part_number · optional brand/part type
- Produces
- brandCode · part identity · reverse references · choices
- Validation
- Punctuation is normalized; bounded or ambiguous identity sets remain explicit.
getAutoCarePartApplicationsPage ACES applications for the resolved product.- Requires
- brandCode · partNumber · optional continuation
- Produces
- vehicle rows · qualifiers · quantity · notes · total/paging
- Validation
- Every row retains configuration evidence; paging limits prevent all-vehicles claims.
Every important branch has a named outcome.
These are response decisions in the implemented service—not possible future behavior.
Carry catalog IDs in the choices.
Return referencing products and guidance, not fabricated applications.
The returned page is never described as all vehicles.
Return the exact part with its fitment collection.
A negative is grounded only after completeness is established.
One shared schema, highlighted for this tool.
Bright fields are populated by this path. Dimmed fields remain part of CatalogResponse but are not a normal output of this tool.
statusResultStatusrequired
summarystringrequired
reason_codeReasonCode | null
queryobject
metadataobject
completenessCompleteness
next_cursorstring | nulloptional
nullpages_fetchedintegeroptional
0paging_modenone | page | cursor | capped | unknownoptional
"none"5 allowed valuesreturnedintegeroptional
0totalinteger | nulloptional
nulltruncatedbooleanoptional
falsevehiclesVehicleIdentity[]
partsPartRecord[]
relationshipsRelationshipRecord[]
relationship_outcomeRelationshipOutcome | null
fitmentFitmentDecision | null
interchange_validationsInterchangeValidation[]
clarificationClarification | null
pending_clarificationsClarification[]
Every open clarification dimension in one round (clarification stays = the first). Ask them together instead of one round trip per dimension.
warningsstring[]
errorCatalogError | null
evidenceEvidenceRecord[]
- Identity selection precedes applications
- Reverse references are not direct products
- A first page is never described as complete
get_part_fitmentspoc/opticat-mcp-v2/src/opticat_mcp_v2/service.pyPartResolver.resolvepoc/opticat-mcp-v2/src/opticat_mcp_v2/resolvers.pymcpToolForPlan · part_fitmentlib/mcp.tsWhat is known, and what could become possible.
Current gaps stay separate from product concepts so the visual never implies that an idea has already shipped.
- 01
Account behavior for totals without continuation needs confirmation
- 02
Vehicle assets are not enriched on demand
Visualize application density by year, model, engine, and position without flattening qualifiers.
Compare the verified vehicle coverage of two exact catalog products.