Studio tools
Studio MCP tools cover Studio sites, forms, email templates, redirects, webhooks, SDK keys, API keys, custom domains, and integrations. Studio is the CX delivery layer and does not render HTML.
This page is generated from the checked MCP catalog inventory. Run pnpm generate:mcp-catalog after platform catalog changes, then run pnpm generate:mcp-pages to refresh these reference tables. Do not add UI/API counterpart claims here unless a source file verifies the shared capability.
Catalog source
| Source | Value |
|---|---|
| Catalog | apps/ai-coo-cf/src/tools/catalog.ts |
| Manifest schema | 2026-05-01 |
| Generated inventory | docs/src/generated/mcp-catalog.json |
| Pillar | studio |
| Total tools | 31 |
| Read tools | 11 |
| Write tools | 10 |
| Simulate tools | 10 |
Scope
unlimited scope can see Studio tools. accounting and full scopes do not expose Studio tools.
T4 tools default to the internal surface only. Public and internal surface visibility still depends on auth, tenant context, entitlements, roles, permissions, feature gates, and model policy. Error codes below are generated from catalog overrides or the catalog default error profiles.
Read tools
| Tool | Tier | Surfaces | Pagination | Error codes |
|---|---|---|---|---|
inblack_get_storefront_site | T1 | public, internal | none | INBLACK_UNAUTHORIZED, INBLACK_FORBIDDEN, INBLACK_VALIDATION_ERROR, INBLACK_NOT_FOUND, INBLACK_RATE_LIMITED, INBLACK_BACKEND_ERROR |
inblack_get_storefront_theme_config | T1 | public, internal | none | INBLACK_UNAUTHORIZED, INBLACK_FORBIDDEN, INBLACK_VALIDATION_ERROR, INBLACK_NOT_FOUND, INBLACK_RATE_LIMITED, INBLACK_BACKEND_ERROR |
inblack_get_studio_email_template | T1 | public, internal | none | INBLACK_UNAUTHORIZED, INBLACK_FORBIDDEN, INBLACK_VALIDATION_ERROR, INBLACK_NOT_FOUND, INBLACK_RATE_LIMITED, INBLACK_BACKEND_ERROR |
inblack_get_studio_email_template_preview | T1 | public, internal | none | INBLACK_UNAUTHORIZED, INBLACK_FORBIDDEN, INBLACK_VALIDATION_ERROR, INBLACK_NOT_FOUND, INBLACK_RATE_LIMITED, INBLACK_BACKEND_ERROR |
inblack_get_studio_form_definition | T1 | public, internal | none | INBLACK_UNAUTHORIZED, INBLACK_FORBIDDEN, INBLACK_VALIDATION_ERROR, INBLACK_NOT_FOUND, INBLACK_RATE_LIMITED, INBLACK_BACKEND_ERROR |
inblack_get_studio_sdk_quickstart | T1 | public, internal | none | INBLACK_UNAUTHORIZED, INBLACK_FORBIDDEN, INBLACK_VALIDATION_ERROR, INBLACK_NOT_FOUND, INBLACK_RATE_LIMITED, INBLACK_BACKEND_ERROR |
inblack_list_storefront_sites | T1 | public, internal | cursor | INBLACK_UNAUTHORIZED, INBLACK_FORBIDDEN, INBLACK_VALIDATION_ERROR, INBLACK_NOT_FOUND, INBLACK_RATE_LIMITED, INBLACK_BACKEND_ERROR |
inblack_list_studio_api_keys | T1 | public, internal | cursor | INBLACK_UNAUTHORIZED, INBLACK_FORBIDDEN, INBLACK_VALIDATION_ERROR, INBLACK_NOT_FOUND, INBLACK_RATE_LIMITED, INBLACK_BACKEND_ERROR |
inblack_list_studio_email_templates | T1 | public, internal | cursor | INBLACK_UNAUTHORIZED, INBLACK_FORBIDDEN, INBLACK_VALIDATION_ERROR, INBLACK_NOT_FOUND, INBLACK_RATE_LIMITED, INBLACK_BACKEND_ERROR |
inblack_list_studio_forms | T1 | public, internal | cursor | INBLACK_UNAUTHORIZED, INBLACK_FORBIDDEN, INBLACK_VALIDATION_ERROR, INBLACK_NOT_FOUND, INBLACK_RATE_LIMITED, INBLACK_BACKEND_ERROR |
inblack_validate_studio_form_submission | T1 | public, internal | none | INBLACK_UNAUTHORIZED, INBLACK_FORBIDDEN, INBLACK_VALIDATION_ERROR, INBLACK_NOT_FOUND, INBLACK_RATE_LIMITED, INBLACK_BACKEND_ERROR |
Write tools
Every catalog write tool has a generated simulate counterpart listed in the Simulated by column. Customer-facing agent writes that mutate financial state remain MCP-first, including inside code-mode.
| Tool | Tier | Surfaces | Pagination | Simulated by | Error codes |
|---|---|---|---|---|---|
inblack_configure_studio_form_webhook | T3 | public, internal | none | inblack_simulate_configure_studio_form_webhook | INBLACK_UNAUTHORIZED, INBLACK_FORBIDDEN, INBLACK_VALIDATION_ERROR, INBLACK_NOT_FOUND, INBLACK_RATE_LIMITED, INBLACK_BACKEND_ERROR, INBLACK_CONFLICT, INBLACK_IDEMPOTENCY_CONFLICT, INBLACK_CONFIRMATION_REQUIRED, INBLACK_AUDIT_UNAVAILABLE |
inblack_create_storefront_site | T3 | public, internal | none | inblack_simulate_create_storefront_site | INBLACK_UNAUTHORIZED, INBLACK_FORBIDDEN, INBLACK_VALIDATION_ERROR, INBLACK_NOT_FOUND, INBLACK_RATE_LIMITED, INBLACK_BACKEND_ERROR, INBLACK_CONFLICT, INBLACK_IDEMPOTENCY_CONFLICT, INBLACK_CONFIRMATION_REQUIRED, INBLACK_AUDIT_UNAVAILABLE |
inblack_revoke_studio_api_key | T2 | public, internal | none | inblack_simulate_revoke_studio_api_key | INBLACK_UNAUTHORIZED, INBLACK_FORBIDDEN, INBLACK_VALIDATION_ERROR, INBLACK_NOT_FOUND, INBLACK_RATE_LIMITED, INBLACK_BACKEND_ERROR, INBLACK_CONFLICT, INBLACK_IDEMPOTENCY_CONFLICT, INBLACK_CONFIRMATION_REQUIRED, INBLACK_AUDIT_UNAVAILABLE |
inblack_rotate_studio_api_key | T2 | public, internal | none | inblack_simulate_rotate_studio_api_key | INBLACK_UNAUTHORIZED, INBLACK_FORBIDDEN, INBLACK_VALIDATION_ERROR, INBLACK_NOT_FOUND, INBLACK_RATE_LIMITED, INBLACK_BACKEND_ERROR, INBLACK_CONFLICT, INBLACK_IDEMPOTENCY_CONFLICT, INBLACK_CONFIRMATION_REQUIRED, INBLACK_AUDIT_UNAVAILABLE |
inblack_save_studio_email_template | T3 | public, internal | none | inblack_simulate_save_studio_email_template | INBLACK_UNAUTHORIZED, INBLACK_FORBIDDEN, INBLACK_VALIDATION_ERROR, INBLACK_NOT_FOUND, INBLACK_RATE_LIMITED, INBLACK_BACKEND_ERROR, INBLACK_CONFLICT, INBLACK_IDEMPOTENCY_CONFLICT, INBLACK_CONFIRMATION_REQUIRED, INBLACK_AUDIT_UNAVAILABLE |
inblack_save_studio_form_definition | T3 | public, internal | none | inblack_simulate_save_studio_form_definition | INBLACK_UNAUTHORIZED, INBLACK_FORBIDDEN, INBLACK_VALIDATION_ERROR, INBLACK_NOT_FOUND, INBLACK_RATE_LIMITED, INBLACK_BACKEND_ERROR, INBLACK_CONFLICT, INBLACK_IDEMPOTENCY_CONFLICT, INBLACK_CONFIRMATION_REQUIRED, INBLACK_AUDIT_UNAVAILABLE |
inblack_set_storefront_theme_config | T3 | public, internal | none | inblack_simulate_set_storefront_theme_config | INBLACK_UNAUTHORIZED, INBLACK_FORBIDDEN, INBLACK_VALIDATION_ERROR, INBLACK_NOT_FOUND, INBLACK_RATE_LIMITED, INBLACK_BACKEND_ERROR, INBLACK_CONFLICT, INBLACK_IDEMPOTENCY_CONFLICT, INBLACK_CONFIRMATION_REQUIRED, INBLACK_AUDIT_UNAVAILABLE |
inblack_set_studio_email_template_status | T3 | public, internal | none | inblack_simulate_set_studio_email_template_status | INBLACK_UNAUTHORIZED, INBLACK_FORBIDDEN, INBLACK_VALIDATION_ERROR, INBLACK_NOT_FOUND, INBLACK_RATE_LIMITED, INBLACK_BACKEND_ERROR, INBLACK_CONFLICT, INBLACK_IDEMPOTENCY_CONFLICT, INBLACK_CONFIRMATION_REQUIRED, INBLACK_AUDIT_UNAVAILABLE |
inblack_set_studio_form_active | T3 | public, internal | none | inblack_simulate_set_studio_form_active | INBLACK_UNAUTHORIZED, INBLACK_FORBIDDEN, INBLACK_VALIDATION_ERROR, INBLACK_NOT_FOUND, INBLACK_RATE_LIMITED, INBLACK_BACKEND_ERROR, INBLACK_CONFLICT, INBLACK_IDEMPOTENCY_CONFLICT, INBLACK_CONFIRMATION_REQUIRED, INBLACK_AUDIT_UNAVAILABLE |
inblack_upsert_studio_email_template_invocation | T3 | public, internal | none | inblack_simulate_upsert_studio_email_template_invocation | INBLACK_UNAUTHORIZED, INBLACK_FORBIDDEN, INBLACK_VALIDATION_ERROR, INBLACK_NOT_FOUND, INBLACK_RATE_LIMITED, INBLACK_BACKEND_ERROR, INBLACK_CONFLICT, INBLACK_IDEMPOTENCY_CONFLICT, INBLACK_CONFIRMATION_REQUIRED, INBLACK_AUDIT_UNAVAILABLE |
Simulate tools
Generated simulate tools are kind: "simulate" and tier: "T1". Standalone simulate tools are explicitly declared in the catalog.
| Tool | Tier | Surfaces | Simulates | Error codes |
|---|---|---|---|---|
inblack_simulate_configure_studio_form_webhook | T1 | public, internal | inblack_configure_studio_form_webhook | INBLACK_UNAUTHORIZED, INBLACK_FORBIDDEN, INBLACK_VALIDATION_ERROR, INBLACK_NOT_FOUND, INBLACK_RATE_LIMITED, INBLACK_BACKEND_ERROR, INBLACK_NOT_IMPLEMENTED, INBLACK_AUDIT_UNAVAILABLE |
inblack_simulate_create_storefront_site | T1 | public, internal | inblack_create_storefront_site | INBLACK_UNAUTHORIZED, INBLACK_FORBIDDEN, INBLACK_VALIDATION_ERROR, INBLACK_NOT_FOUND, INBLACK_RATE_LIMITED, INBLACK_BACKEND_ERROR, INBLACK_NOT_IMPLEMENTED, INBLACK_AUDIT_UNAVAILABLE |
inblack_simulate_revoke_studio_api_key | T1 | public, internal | inblack_revoke_studio_api_key | INBLACK_UNAUTHORIZED, INBLACK_FORBIDDEN, INBLACK_VALIDATION_ERROR, INBLACK_NOT_FOUND, INBLACK_RATE_LIMITED, INBLACK_BACKEND_ERROR, INBLACK_NOT_IMPLEMENTED, INBLACK_AUDIT_UNAVAILABLE |
inblack_simulate_rotate_studio_api_key | T1 | public, internal | inblack_rotate_studio_api_key | INBLACK_UNAUTHORIZED, INBLACK_FORBIDDEN, INBLACK_VALIDATION_ERROR, INBLACK_NOT_FOUND, INBLACK_RATE_LIMITED, INBLACK_BACKEND_ERROR, INBLACK_NOT_IMPLEMENTED, INBLACK_AUDIT_UNAVAILABLE |
inblack_simulate_save_studio_email_template | T1 | public, internal | inblack_save_studio_email_template | INBLACK_UNAUTHORIZED, INBLACK_FORBIDDEN, INBLACK_VALIDATION_ERROR, INBLACK_NOT_FOUND, INBLACK_RATE_LIMITED, INBLACK_BACKEND_ERROR, INBLACK_NOT_IMPLEMENTED, INBLACK_AUDIT_UNAVAILABLE |
inblack_simulate_save_studio_form_definition | T1 | public, internal | inblack_save_studio_form_definition | INBLACK_UNAUTHORIZED, INBLACK_FORBIDDEN, INBLACK_VALIDATION_ERROR, INBLACK_NOT_FOUND, INBLACK_RATE_LIMITED, INBLACK_BACKEND_ERROR, INBLACK_NOT_IMPLEMENTED, INBLACK_AUDIT_UNAVAILABLE |
inblack_simulate_set_storefront_theme_config | T1 | public, internal | inblack_set_storefront_theme_config | INBLACK_UNAUTHORIZED, INBLACK_FORBIDDEN, INBLACK_VALIDATION_ERROR, INBLACK_NOT_FOUND, INBLACK_RATE_LIMITED, INBLACK_BACKEND_ERROR, INBLACK_NOT_IMPLEMENTED, INBLACK_AUDIT_UNAVAILABLE |
inblack_simulate_set_studio_email_template_status | T1 | public, internal | inblack_set_studio_email_template_status | INBLACK_UNAUTHORIZED, INBLACK_FORBIDDEN, INBLACK_VALIDATION_ERROR, INBLACK_NOT_FOUND, INBLACK_RATE_LIMITED, INBLACK_BACKEND_ERROR, INBLACK_NOT_IMPLEMENTED, INBLACK_AUDIT_UNAVAILABLE |
inblack_simulate_set_studio_form_active | T1 | public, internal | inblack_set_studio_form_active | INBLACK_UNAUTHORIZED, INBLACK_FORBIDDEN, INBLACK_VALIDATION_ERROR, INBLACK_NOT_FOUND, INBLACK_RATE_LIMITED, INBLACK_BACKEND_ERROR, INBLACK_NOT_IMPLEMENTED, INBLACK_AUDIT_UNAVAILABLE |
inblack_simulate_upsert_studio_email_template_invocation | T1 | public, internal | inblack_upsert_studio_email_template_invocation | INBLACK_UNAUTHORIZED, INBLACK_FORBIDDEN, INBLACK_VALIDATION_ERROR, INBLACK_NOT_FOUND, INBLACK_RATE_LIMITED, INBLACK_BACKEND_ERROR, INBLACK_NOT_IMPLEMENTED, INBLACK_AUDIT_UNAVAILABLE |