MCP tools
Understand how task-oriented MCP tools reuse the same API policies and response contracts.
REST and MCP share one policy pipeline
MCP is a separately deployed, thin adapter over approved HPH Integrations application operations. Choosing MCP does not broaden company authority, content rights, disclosure, quotas, usage accounting, or retention.
- Tool arguments contain task inputs only; organization, user, application, license, and disclosure authority are trusted server context.
- Protected fields are removed before an MCP result enters model context.
- Tool descriptions and titles are guidance, not authority and not executable instructions.
- MCP tools cannot bypass the policies that apply to the equivalent REST operation.
Read-only tools
The read-only tools cover company item content, HPH item details and catalog usage, protected HPH Catalog Item alternatives, mapping requests, current mapping and history, Material Catalog Item search, Company context and usage, and the material vendor directory. Each tool applies the same authority, disclosure, and quota policy as its REST operation.
- get_catalog_item_details retrieves disclosure-reduced product details for one company catalog item.
- get_catalog_item_price_labor retrieves Manufacturer list price and at most one authorized Company-applicable default labor hour.
- get_catalog_item_labor_hours retrieves bounded authorized labor hours with approved filters.
- get_hph_item_details retrieves bounded details for one through ten exact HPH Item Codes.
- list_company_items_by_hph_item_code returns one bounded page of the represented Company's catalog usage.
- get_hph_item_alternatives compares a bounded set of eligible HPH Catalog Item alternatives without returning source or alternative HPH Item Codes.
- get_hph_item_alternatives_by_company_item resolves one represented-Company item privately and returns the same bounded alternative comparison without revealing its mapped HPH Item Code.
- get_current_item_mapping retrieves current mapping metadata for one authorized Company catalog item.
- get_current_item_mapping_associations retrieves the complete empty-or-one current association set when current metadata advertises that protected traversal.
- get_item_mapping_history retrieves one bounded mapping-history page using an opaque continuation.
- get_item_mapping_history_associations retrieves one immutable historical association snapshot when the history entry advertises that protected traversal.
- get_item_mapping_request_result retrieves the current bounded result for one previously submitted mapping request.
- search_catalog_items searches one explicitly selected Company or HPH catalog source under the represented Company's current authority.
- list_material_vendors returns the represented Company's active material-vendor directory.
- list_material_vendor_accounts returns active accounts for one represented-Company vendor using the same concealment and 50-row limit as REST.
- get_current_actor returns the current actor type and enabled public permissions.
- get_company_capabilities returns the stable capabilities derived from the represented Company's current authority.
- get_company_usage returns bounded represented-Company usage and current quota status.
State-changing tools
Nine state-changing tools are available: submit_item_mapping_request, accept_item_mapping_for_review, ignore_item_mapping_request, release_item_mapping_to_production, set_company_item_mapping, restore_company_item_mapping, create_company_catalog_item, select_hph_item_alternative, and submit_autodesk_fabrication_item_mapping. Each MCP tool runs the same operation as its REST counterpart, under the same policy; for example, submit_autodesk_fabrication_item_mapping runs POST /v1/autodesk-fabrication/item-mapping-requests. Every state-changing tool requires an exact permission, current revision where applicable, idempotency identity, fresh authorization, durable audit evidence, and explicit interactive confirmation.
Tool errors
A tool call that cannot complete returns a tool result with isError set to true. Its text content is one JSON object with a stable code, a retryable flag, and the request's correlation_id, the same fields a REST problem body carries. It never contains internal detail.
- code is an UPPER_SNAKE value such as COMPANY_CONTEXT_UNAVAILABLE or QUOTA_EXCEEDED. Treat it as the reason for the failure; the wording of the text is not part of the contract.
- Where the equivalent REST operation returns a stable code for the same failure, the tool returns the same code. The confirmation codes, such as MAPPING_CONFIRMATION_NOT_ACCEPTED, exist only in MCP because REST has no interactive confirmation step.
- retryable is true only when the same call may succeed later, for example when a dependency is briefly unavailable.
- correlation_id identifies the request when you contact HPH support.
- Unauthorized and unknown resources are reported the same way as in REST, so an error does not reveal whether a resource exists.