MCP integration
MCP integration
FRCTools Orders provides an authenticated Model Context Protocol (MCP) endpoint at /mcp. Connect it to an MCP-compatible AI client to look up your team's work and manage orders without leaving the conversation.
The endpoint uses OAuth. When your client connects, sign in with your FRCTools Orders account and approve access. The client can only see or change organizations that your account belongs to.
/mcp as the remote MCP server URL. For example: https://orders.frctools.com/mcp.Finding an organization
Start with list_organizations. Its response includes each organization's id, which is required by all organization-scoped tools.
Use list_projects to find a project's id before creating or filtering orders. Use list_tags to get tag IDs for an order.
Managing projects
| Tool | What it does |
|---|---|
list_projects | Lists active projects in an organization. |
create_project | Creates a project with a name and optional description and color. |
update_project | Changes a project's name, description, color, or archive state. |
Every project tool requires organizationId. Project names are automatically converted into unique slugs. An organization must keep at least one active project, so the final active project cannot be archived.
Managing orders
| Tool | What it does |
|---|---|
list_orders | Lists recent orders, optionally filtered by projectId and status. |
create_order | Creates a new order in the to_order state. |
update_order | Updates an order's details, tags, price, vendor, URL, quantity, or status. |
delete_order | Permanently deletes an order. |
create_order needs a partName; it accepts optional projectId, description, quantity, unitPriceCents, vendor and variant details, externalUrl, and tagIds. If no project is specified, the organization's default project is used.
Use update_order to move an order through to_order, ordered, and arrived. Order and arrival timestamps are maintained automatically when you change status. Pass null for optional fields such as unitPriceCents, externalUrl, or vendorId when you want to clear them.
delete_order cannot be undone. Ask for confirmation before using it in an automated workflow.Managing tags
| Tool | What it does |
|---|---|
list_tags | Lists tags in an organization. |
create_tag | Creates a tag with a name and optional hex color. |
Use the IDs returned by list_tags or create_tag in an order's tagIds. Tags from another organization are rejected.
Looking up products
Use search_products to search the indexed vendor catalog by product name, SKU, or description. It accepts:
query(required): the words or SKU to search for.limit: number of matches to return, from 1 to 100; defaults to 10.vendorNames: an optional list of vendors to limit the results to.sort:relevance(default),price-asc, orprice-desc.
Search results include product details that can be used to prefill create_order, such as the product name, price, vendor, variant, and product URL.
Example requests
After calling list_organizations, an assistant can follow a workflow like this:
- Call
search_productswithquery: "NEO Vortex motor". - Call
create_orderwith the chosen product's title, URL, price in cents, and the targetprojectId. - Call
update_orderwithstatus: "ordered"after the purchase is placed.
All write operations validate the signed-in user's organization membership before making a change.