Skip to main content

// developers · partner tools

Your MCP server, inside the merchant's allowlist.

A partner supplies facts, never actions. You run an MCP server on your own infrastructure; the merchant approves it and names which of its tools Magistry may call.

// register

One source per server.

register a source
curl -X POST https://app.magistry.io/api/v1/partner-tools \
  -H "Authorization: Bearer mag_sk_live_…" \
  -H "Content-Type: application/json" \
  -d '{ "label": "Supplier stock levels",
        "endpoint_url": "https://mcp.your-company.example/mcp",
        "allowed_tools": ["get_stock_level"] }'

Registering a source needs automation:write. The endpoint must be https, carry no credentials in its URL and resolve to a public address. allowed_tools must name at least one tool: an empty allowlist is refused rather than read as “everything”.

Today the Theme Studio agent loads a store’s approved partner tools into its sessions. A lookup that fails is logged and the session carries on without them.

// bounds

The limits a source runs inside.

Sources per store
5
Timeout per call
8,000 ms by default (timeout_ms)
Calls per day
500 by default (max_calls_per_day)
Response size
64 KB at most
Disabled after
25 consecutive failures

Read-only, by constraint

A partner source can only ever be read-only: the database refuses any other kind, so it is not a setting that can be switched. A partner tool cannot declare intent, publish an event or reach an executor. Anything that changes a store still goes through Magistry’s own tools and approvals.

Build on the same tools the product uses.

Create a sandbox key on demo data, or start free and connect a real store.

MCP + REST · OAuth 2.1 or API keys · every call audited