Manage your catalog from Claude
Foundry IMS is a connector in Claude's directory. Connect it once and you can ask Claude to search, audit, and edit your catalog in plain English — no admin screens, no spreadsheet round-trip, no API code to write.
What you'll get
- • Ask questions of your catalog and get answers, not a CSV export
- • Bulk edits by description — "every variant missing a UPC" — without writing a filter
- • Real BOM work: what uses this part, what can I build, swap it everywhere
- • Works in claude.ai, Claude Desktop, and Claude Code
- • Scoped by your own API key or login — Claude can only reach what you've granted
What it does — and what it doesn't
This connector covers catalog administration: the product data itself. It is a thin, permission-scoped wrapper over the same Foundry API the admin app uses — so nothing here is a shortcut around your normal access rules.
In scope today
- • Products and variants — search, create, edit, trash, restore
- • Assemblies and bills of materials, including buildability and reverse lookups
- • Bundle components
- • Brands and categories
- • Variant images, by URL
- • Custom field definitions and values
Not in scope
- • Orders, invoices, and purchase orders
- • Stock adjustments and physical counts
- • Channel listings and pushes to your storefronts
- • Users, roles, and billing
Stock adjustments and purchase orders are the next surfaces planned. If you want one of these sooner, tell us — demand decides the order.
Connect it
Pick by where you work — all three reach the same server.
claude.ai and Claude Desktop — log in
Open Settings → Connectors, find Foundry IMS in the directory, and click Connect. You'll sign in with your normal Foundry account and approve the connection. No keys to copy.
Your session covers every organization your account belongs to. Say "switch to DieselPowerSource" and Claude moves — or just name the org in your request. Sessions renew on their own for about a day at a time.
Claude Code — use an API key
Create a key in Foundry under Settings → API Keys → Create API Key, then add the server:
claude mcp add --transport http foundry https://mcp.foundryims.com/mcp \
--header "Authorization: Bearer fims_your_key_here"
An API key is bound to exactly one organization. To work across several, add the
connector once per org under distinct names — foundry-rigcables,
foundry-dps — and Claude will route by the name you say.
Claude API — build it into your own app
Claude can reach the connector directly from the Messages API. Declare the server and grant access to its tools — both halves are required:
client.beta.messages.create(
model="claude-opus-5",
max_tokens=4096,
betas=["mcp-client-2025-11-20"],
mcp_servers=[{
"type": "url",
"url": "https://mcp.foundryims.com/mcp",
"name": "foundry-ims",
"authorization_token": "fims_your_key_here",
}],
tools=[{"type": "mcp_toolset", "mcp_server_name": "foundry-ims"}],
messages=[{"role": "user", "content": "Which variants are missing a UPC?"}],
)
The mcp_server_name must match the server's
name. Declaring the server without the matching
mcp_toolset entry is rejected as a validation error.
What Claude is allowed to touch
Access is decided by your credential, not by the connector. The MCP server holds no credentials of its own — it forwards yours upstream and returns whatever the API says, including a refusal.
Grant only what the job needs
For catalog work, the Catalog Editor preset is the clean choice — or
tick exactly products.read/write and
variants.read/write. A products-only key physically cannot
reach orders, invoices, or users, even if a model tries. Want Claude to look but never
edit? Issue a read-only key.
Deletes are recoverable
delete_product moves a product to the trash rather than
destroying it, and restore_product brings it back. Claude
is instructed to confirm with you before deleting a product or replacing a BOM, since
both are significant changes.
Storefront keys are rejected
Public storefront keys (fims_sf_*) can't be used here.
This is an admin surface and expects an admin key.
The 33 tools
You never call these by name — Claude picks them. They're listed so you can see exactly what the connector can do before you connect it.
Find things
Search matches identifiers, not just names — paste a SKU, UPC, GTIN, MPN, or a channel/supplier SKU straight in.
search_productsget_productsearch_variantsget_variant Products & variants
A product holds one or more variants; the variant is the sellable SKU that carries price, cost, and identifiers.
create_productupdate_productupdate_variantdelete_productrestore_product Assemblies & bills of materials
Inspect a recipe, ask what you could build from stock on hand, or swap a component everywhere it appears.
get_bomset_bomdelete_bombom_can_buildflatten_bomfind_where_usedreplace_bom_component Bundles
Kits assembled at the point of sale rather than on the shop floor.
get_bundle_componentsadd_bundle_componentupdate_bundle_componentremove_bundle_component Brands & categories
Resolve or create the brand and category records a product needs.
list_brandscreate_brandlist_categoriescreate_categoryreorder_categories Images
Add images by URL — Foundry re-hosts them, so a vendor link going dead later does not empty your listing.
add_variant_imageremove_variant_imagereorder_variant_images Custom fields
Read the field definitions, then read or write values on a product or variant.
list_custom_fieldsget_custom_valuesset_custom_values Organizations
Only relevant if your login covers more than one Foundry organization.
list_orgsset_org Things worth asking
The connector earns its keep on the jobs that are tedious in a grid — cross-referencing, finding gaps, and changing one part in many places.
- “Which assemblies use the 6-inch stainless clamp, and how many of each could I build right now?”
- “Find every variant with no UPC and no MPN, and list them by brand.”
- “Set up a new product in the Turbo Housings category with three variants at $249, $289, and $349.”
- “The 90-degree silicone coupler is discontinued — swap it for the new part everywhere it appears in a BOM, but show me the dry run first.”
- “Add these four vendor images to SKU TRB-4421 and make the third one the primary.”
- “What does the preferred_vendor custom field say for the top 20 products by cost?”
Ask for a dry run whenever a change is broad. Tools like
replace_bom_component and flatten_bom
support previewing the effect before committing it.
Good to know
"Invalid or expired session token"
Your saved connection is stale and can't refresh itself. Remove the Foundry IMS connector and add it again — once is enough, and it won't recur.
Claude is reading the wrong organization
Almost always the same stale session. Reconnect, then confirm with "which org are you in?" before making changes. Ask Claude to state the org whenever a request matters.
A tool comes back with 403
Your key or role lacks that permission — the connector surfaces the API's refusal verbatim rather than working around it. Widen the key's permissions if the access is genuinely intended.
Check the edit before you trust it
Claude is capable but not infallible, and catalog data feeds your storefronts and pricing. Treat a bulk edit the way you'd treat one from a new team member: review what changed. Every write lands in Foundry's normal activity log.
Not a Foundry customer yet? Book a demo. Already running Foundry and something here isn't behaving? Email support.