Two to four identities
Compare exact catalog products
Compare two to four exact identities with original and normalized units, field outcomes and optional vehicle verification.
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 inputSelected products- validated evidence
02 gateCompare evidenceNormalize comparable units
- validated evidence
03 outputComparison tableMatching, conflicting, missing, incomparable
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.
interactionInteractionContext | nulloptional
nullrequestComparePartsInputrequired
partsPartLookupInput[]required
brandstring | 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
nullrequested_fieldsattributes | dimensions | descriptions | country_of_origin | lifecycle | relationships | images | fitment | packaging | kits[]optional
vehicleComparisonVehicle | nulloptional
null{
"request": {
"parts": [
{
"part_number": "WPK-822",
"brand": "Aisin"
},
{
"part_number": "WPK-823",
"brand": "Aisin"
}
]
}
} Compare Aisin WPK-822 and WPK-823 attributesWhat 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 each requested exact identity.- Requires
- parts
- Produces
- identities · clarifications
- Validation
- No implicit first-match selection.
getAutoCarePartDetailsRetrieve comparable product fields.- Requires
- exact identity
- Produces
- original values · units · relationships
- Validation
- Compare only returned data.
getAutoCarePartApplicationsOptionally verify each part for a vehicle.- Requires
- vehicle · exact identity
- Produces
- fitment decision
- Validation
- Specification agreement is not fitment.
Every important branch has a named outcome.
These are response decisions in the implemented service—not possible future behavior.
Preserve the other products and identify the unavailable one.
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
nullnext_pageinteger | nulloptional
nullpages_fetchedintegeroptional
0paging_modenone | page | cursor | capped | unknownoptional
"none"5 allowed valuesreturnedintegeroptional
0source_end_reachedbooleanoptional
This response reached the known end of the source query, even when earlier pages were returned separately.
falsetotalinteger | 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[]
- No interchangeability inference
- Missing products remain visible
- One shared execution budget
compare_partspoc/opticat-mcp-v2/src/opticat_mcp_v2/expansion.pycompare_valuespoc/opticat-mcp-v2/src/opticat_mcp_v2/units.pyfinalResultFromCataloglib/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
Known entitled comparison examples require live adjudication
Choose the most useful specifications after domain review.