Brand + number + optional category
Cross-reference validation gates
Return only explicit PIES interchange relationships and validate a bounded candidate set through identity, category, product evidence, and vehicle-verification boundaries.
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 inputSource number- validated evidence
02 getAutoCareSearchResultsIdentity gateDirect product or explicit reverse reference
- validated evidence
03 getAutoCarePartDetailsRelationship gatePIES INTERCHANGE only
- validated evidence
04 gateCategory gateSource and target part type
- validated evidence
05 getAutoCarePartDetailsProduct-evidence gateUnit-aware shared attributes
- validated evidence
06 gateInstallation boundaryVehicle application still required
- validated evidence
07 outputValidated candidatesConfirmed · conditional · rejected
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.
requestInterchangeLookupInputrequired
brandstring | nulloptional
nullmax_validationsintegeroptional
10min 0max 25part_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
nulltarget_brandstring | nulloptional
Optional target brand name or code used to filter returned interchange relationships
nulltarget_brandsstring[]optional
Optional target brand names or codes; combined with target_brand and deduplicated
validate_candidatesbooleanoptional
Retrieve candidate details and validate category/specification evidence for a bounded result set
true{
"request": {
"part_number": "EUR1924",
"brand": "Akebono",
"validate_candidates": true,
"max_validations": 10
}
} Show interchanges for Akebono EUR1924What 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 the direct source or recover explicit reverse references.- Requires
- part_number · optional brand/type
- Produces
- source identity · reverse relationships · decoy categories
- Validation
- Similar digits are irrelevant; only exact product or explicit returned relationship evidence proceeds.
getAutoCarePartDetailsRead typed source relationships and product context.- Requires
- resolved brandCode · partNumber
- Produces
- INTERCHANGE relationships · attributes · part type · assets
- Validation
- Supersession kinds are excluded and target-brand filtering uses returned identities.
getAutoCarePartDetailsValidate a bounded candidate set with target details.- Requires
- candidate identities · max_validations
- Produces
- category agreement · unit-aware comparisons · missing checks
- Validation
- Category conflicts reject; missing product or application checks remain conditional.
Every important branch has a named outcome.
These are response decisions in the implemented service—not possible future behavior.
Still names vehicle application as a missing installation check.
Return matching, conflicting, and missing checks.
The relationship is visible but must not be recommended.
Enumerate it in metadata rather than implying validation.
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[]
- Interchange is not supersession
- Interchange is not vehicle fitment
- Wrong-category exact matches are disclosed
- Validation caps remain visible
lookup_part_interchangespoc/opticat-mcp-v2/src/opticat_mcp_v2/service.py_validate_interchangespoc/opticat-mcp-v2/src/opticat_mcp_v2/service.pyfive validation gatesdiscovery/product/interchange-validation-design.mdWhat 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
The repaired reverse Kia path needs live validation
- 02
OE versus aftermarket ranking has only an initial heuristic
- 03
Vehicle application is not automatically checked for every candidate
Place source and candidate attributes, lifecycle, and missing checks side by side.
Continue selected candidates through fitment verification for a supplied vehicle.