MCP tools

Slab5 MCP tools expose business actions for agents. Tools are not raw database operations; they are tenant-scoped, permissioned, validated, audited operations over the same backend contract as the REST API.

Tool contract

Every MCP tool declares:

  • A stable tool name.
  • The product module it belongs to.
  • Required permission scopes.
  • A strict JSON input schema.
  • An example prompt, example JSON input, and example response.
  • An equivalent REST API operation.
  • Common structured errors.

Write safety

Write tools should be idempotent and auditable. When an agent creates or updates business state, Slab5 must record the workspace, actor, tool name, resource, status, request ID, usage event, and audit event.

Tools that may have higher operational impact can expose a dry_run input. Use dry_run when a tool supports previewing changes before applying them.

Narrow write tools such as complete_task, update_deal_stage, and update_entry_status are deprecated rather than removed. They remain callable for compatibility, but new agents should use update_task, update_deal, and update_entry.

Update examples

Use the generic update tools when an agent may change more than one field on an existing resource.

Update a task status and completion note:

{
  "jsonrpc": "2.0",
  "id": "update-task-1",
  "method": "tools/call",
  "params": {
    "name": "update_task",
    "arguments": {
      "task_id": "task_123",
      "status": "completed",
      "completed_note": "Jane replied and confirmed the next call."
    }
  }
}

Update a deal amount, currency, and pipeline stage:

{
  "jsonrpc": "2.0",
  "id": "update-deal-1",
  "method": "tools/call",
  "params": {
    "name": "update_deal",
    "arguments": {
      "deal_id": "deal_123",
      "stage": "proposal",
      "amount_cents": 750000,
      "currency": "USD"
    }
  }
}

Update CMS entry content and move it to review:

{
  "jsonrpc": "2.0",
  "id": "update-entry-1",
  "method": "tools/call",
  "params": {
    "name": "update_entry",
    "arguments": {
      "entry_id": "ent_123",
      "title": "AI follow-up workflows",
      "fields": {
        "slug": "ai-follow-up-workflows",
        "body": "Updated draft content..."
      },
      "status": "review"
    }
  }
}

Register an asset upload for a CMS entry:

{
  "jsonrpc": "2.0",
  "id": "asset-upload-1",
  "method": "tools/call",
  "params": {
    "name": "create_asset_upload_intent",
    "arguments": {
      "asset_type": "image",
      "file_name": "case-study-hero.png",
      "mime_type": "image/png",
      "related_resource_type": "cms_entry",
      "related_resource_id": "ent_123"
    }
  }
}

Tool reference

ToolModuleScopesAPI equivalent
create_contactcrm
crm:write
POST /v1/contacts
search_contactscrm
crm:read
GET /v1/contacts
create_companycrm
crm:write
POST /v1/companies
search_companiescrm
crm:read
GET /v1/companies
create_leadcrm
crm:write
POST /v1/leads
list_leadscrm
crm:read
GET /v1/leads
convert_leadcrm
crm:write
POST /v1/leads/{lead_id}/convert
create_deal_stagecrm
crm:write
POST /v1/deal-stages
list_deal_stagescrm
crm:read
GET /v1/deal-stages
create_dealcrm
crm:write
POST /v1/deals
update_deal_stagecrm
crm:write
PATCH /v1/deals/{deal_id}
update_dealcrm
crm:write
PATCH /v1/deals/{deal_id}
create_invoicecrm
crm:write
POST /v1/invoices
list_invoicescrm
crm:read
GET /v1/invoices
record_paymentcrm
crm:write
POST /v1/payments
create_accounting_accountcrm
crm:write
POST /v1/accounting/accounts
list_accounting_accountscrm
crm:read
GET /v1/accounting/accounts
create_journal_entrycrm
crm:write
POST /v1/accounting/journal-entries
list_journal_entriescrm
crm:read
GET /v1/accounting/journal-entries
create_tasktasks
tasks:write
POST /v1/tasks
list_taskstasks
tasks:read
GET /v1/tasks
complete_tasktasks
tasks:write
PATCH /v1/tasks/{task_id}
update_tasktasks
tasks:write
PATCH /v1/tasks/{task_id}
log_activityactivity_log
activity:write
POST /v1/activities
search_activityactivity_log
activity:read
GET /v1/activities
create_support_queuesupport
support:write
POST /v1/support/queues
list_support_queuessupport
support:read
GET /v1/support/queues
create_support_ticketsupport
support:write
POST /v1/support/tickets
list_support_ticketssupport
support:read
GET /v1/support/tickets
update_support_ticketsupport
support:write
PATCH /v1/support/tickets/{ticket_id}
add_support_ticket_messagesupport
support:write
POST /v1/support/tickets/{ticket_id}/messages
list_support_ticket_messagessupport
support:read
GET /v1/support/tickets/{ticket_id}/messages
add_support_ticket_commentsupport
support:write
POST /v1/support/tickets/{ticket_id}/comments
list_support_ticket_commentssupport
support:read
GET /v1/support/tickets/{ticket_id}/comments
create_collectioncms
cms:write
POST /v1/cms/collections
create_cms_sitecms
cms:write
POST /v1/cms/sites
list_cms_sitescms
cms:read
GET /v1/cms/sites
create_entrycms
cms:write
POST /v1/cms/entries
search_entriescms
cms:read
GET /v1/cms/entries
update_entry_statuscms
cms:write
PATCH /v1/cms/entries/{entry_id}
update_entrycms
cms:write
PATCH /v1/cms/entries/{entry_id}
create_marketing_campaigncms
cms:write
POST /v1/marketing/campaigns
list_marketing_campaignscms
cms:read
GET /v1/marketing/campaigns
create_marketing_postcms
cms:write
POST /v1/marketing/posts
list_marketing_postscms
cms:read
GET /v1/marketing/posts
create_asset_upload_intentassets
assets:write
POST /v1/assets
complete_asset_uploadassets
assets:write
POST /v1/assets/{asset_id}/complete
search_assetsassets
assets:read
GET /v1/assets
get_asset_download_urlassets
assets:read
GET /v1/assets/{asset_id}
archive_assetassets
assets:write
DELETE /v1/assets/{asset_id}
define_eventanalytics_governance
analytics:write
POST /v1/analytics/events
list_eventsanalytics_governance
analytics:read
GET /v1/analytics/events
define_propertyanalytics_governance
analytics:write
POST /v1/analytics/properties
validate_eventanalytics_governance
analytics:read
POST /v1/analytics/events/validate
list_integration_event_typesintegrations
integrations:read
GET /v1/integrations/events
register_integration_event_typeintegrations
integrations:write
POST /v1/integrations/events
create_webhook_endpointintegrations
integrations:write
POST /v1/webhooks
list_webhook_endpointsintegrations
integrations:read
GET /v1/webhooks
update_webhook_endpointintegrations
integrations:write
PATCH /v1/webhooks/{webhook_id}
send_test_webhook_eventintegrations
integrations:write
POST /v1/webhooks/{webhook_id}/test
list_webhook_deliveriesintegrations
integrations:read
GET /v1/webhooks/{webhook_id}/deliveries
list_bi_dashboardsproduct_analytics_bi
bi:read
GET /v1/bi/dashboards
create_bi_dashboardproduct_analytics_bi
bi:write
POST /v1/bi/dashboards
list_bi_reportsproduct_analytics_bi
bi:read
GET /v1/bi/reports
create_bi_reportproduct_analytics_bi
bi:write
POST /v1/bi/reports
list_bi_datasetsproduct_analytics_bi
bi:read
GET /v1/bi/datasets
create_bi_datasetproduct_analytics_bi
bi:write
POST /v1/bi/datasets
list_bi_metricsproduct_analytics_bi
bi:read
GET /v1/bi/metrics
create_bi_metricproduct_analytics_bi
bi:write
POST /v1/bi/metrics
run_bi_queryproduct_analytics_bi
bi:write
POST /v1/bi/queries/run
create_bi_exportproduct_analytics_bi
bi:write
POST /v1/bi/exports
update_bi_objectproduct_analytics_bi
bi:write
PATCH /v1/bi/{collection}/{id}
archive_bi_objectproduct_analytics_bi
bi:write
DELETE /v1/bi/{collection}/{id}
get_workspace_assistant_summarydata_agents
data_agents:read
GET /v1/assistants/workspace/summary
create_workspace_assistant_rundata_agents
data_agents:write
POST /v1/assistants/workspace/runs
create_slab5_guide_sessiondata_agents
data_agents:read
POST /v1/assistants/slab5-guide/sessions
get_workspace_summaryworkspace
crm:readsupport:readtasks:readactivity:readcms:readassets:readintegrations:readanalytics:readbi:read
GET /v1/workspace

create_contact

Create a CRM contact in the current workspace.

MVP
Idempotent writesNo dry runStrict schema
Required scopes
crm:write
API equivalent
POST /v1/contacts

Example prompt

Create a contact named Jane Doe at Acme Corp with email jane@acme.com.

Input schema

PropertyTypeRequiredDescription
namestringYesFull display name for the contact.
emailstring · emailNoEmail address used for matching, follow-up, and deduplication.
phonestringNoOptional phone number in a user-provided format.
company_idstringNoExisting Slab5 company ID to link the contact to.
company_namestringNoCompany name to record when no company ID is available yet.
notesstringNoOptional free-form context about the relationship or source.
idempotency_keystringNoStable client-generated key that makes retries safe for this write.

Additional properties are rejected.

Example input

{
  "name": "Jane Doe",
  "email": "jane@acme.com",
  "company_name": "Acme Corp",
  "idempotency_key": "contact_jane_doe_acme"
}

Example response

{
  "contact": {
    "id": "con_123",
    "name": "Jane Doe",
    "email": "jane@acme.com",
    "company_name": "Acme Corp"
  },
  "request_id": "req_123"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The idempotency key was reused with a different request body.

search_contacts

Search contacts by name, email, company, or free-text query.

MVP
Read operationNo dry runStrict schema
Required scopes
crm:read
API equivalent
GET /v1/contacts

Example prompt

Find contacts at Acme Corp.

Input schema

PropertyTypeRequiredDescription
querystringNoFree-text search across contact name, email, company, and notes.
company_idstringNoRestrict results to contacts linked to this company.
limitinteger · min 1 · max 100NoMaximum number of contacts to return.
cursorstringNoOpaque cursor from a previous response's next_cursor.

Additional properties are rejected.

Example input

{
  "query": "Acme Corp",
  "limit": 10
}

Example response

{
  "contacts": [
    {
      "id": "con_123",
      "name": "Jane Doe",
      "email": "jane@acme.com"
    }
  ],
  "request_id": "req_124"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

create_company

Create a company account in the CRM module.

MVP
Idempotent writesNo dry runStrict schema
Required scopes
crm:write
API equivalent
POST /v1/companies

Example prompt

Create a company called Acme Corp with domain acme.com.

Input schema

PropertyTypeRequiredDescription
namestringYesCompany or account display name.
domainstringNoPrimary company domain, such as acme.com.
websitestringNoCanonical website URL for the company.
notesstringNoOptional free-form account context.
idempotency_keystringNoStable client-generated key that makes retries safe for this write.

Additional properties are rejected.

Example input

{
  "name": "Acme Corp",
  "domain": "acme.com"
}

Example response

{
  "company": {
    "id": "com_123",
    "name": "Acme Corp",
    "domain": "acme.com"
  },
  "request_id": "req_125"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The idempotency key was reused with a different request body.

search_companies

Search company accounts by name, domain, or free-text query.

MVP
Read operationNo dry runStrict schema
Required scopes
crm:read
API equivalent
GET /v1/companies

Example prompt

Find companies matching Acme.

Input schema

PropertyTypeRequiredDescription
querystringNoFree-text search across company name, domain, website, and notes.
limitinteger · min 1 · max 100NoMaximum number of companies to return.
cursorstringNoOpaque cursor from a previous response's next_cursor.

Additional properties are rejected.

Example input

{
  "query": "Acme",
  "limit": 10
}

Example response

{
  "companies": [
    {
      "id": "com_123",
      "name": "Acme Corp",
      "domain": "acme.com"
    }
  ],
  "request_id": "req_126"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

create_lead

Create a CRM lead before it is converted into a contact, company, or deal.

MVP
Idempotent writesNo dry runStrict schema
Required scopes
crm:write
API equivalent
POST /v1/leads

Example prompt

Create a website lead for Priya at Northstar Studio.

Input schema

PropertyTypeRequiredDescription
namestringYesNo description yet.
emailstring · emailNoNo description yet.
phonestringNoNo description yet.
company_namestringNoNo description yet.
titlestringNoNo description yet.
sourcestring · manual | website | referral | campaign | import | api | mcp | otherNoNo description yet.
scoreinteger · min 0NoNo description yet.
custom_fieldsobjectNoUser-defined queryable JSON fields.
idempotency_keystringNoNo description yet.

Additional properties are rejected.

Example input

{
  "name": "Priya Shah",
  "company_name": "Northstar Studio",
  "source": "website"
}

Example response

{
  "lead": {
    "id": "lead_123",
    "name": "Priya Shah",
    "status": "new"
  },
  "request_id": "req_200"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The idempotency key was reused with a different request body.

list_leads

List leads by status, source, search text, or custom field.

MVP
Read operationNo dry runStrict schema
Required scopes
crm:read
API equivalent
GET /v1/leads

Example prompt

Show website leads.

Input schema

PropertyTypeRequiredDescription
querystringNoNo description yet.
statusstring · new | working | qualified | disqualified | convertedNoNo description yet.
sourcestring · manual | website | referral | campaign | import | api | mcp | otherNoNo description yet.
custom_field_keystringNoNo description yet.
custom_field_valuestringNoNo description yet.
limitinteger · min 1 · max 100NoNo description yet.
cursorstringNoNo description yet.

Additional properties are rejected.

Example input

{
  "source": "website",
  "limit": 10
}

Example response

{
  "leads": [
    {
      "id": "lead_123",
      "name": "Priya Shah"
    }
  ],
  "request_id": "req_201"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

convert_lead

Convert a lead into contact, company, and optionally deal records.

MVP
Idempotent writesNo dry runStrict schema
Required scopes
crm:write
API equivalent
POST /v1/leads/{lead_id}/convert

Example prompt

Convert lead_123 and create a services deal.

Input schema

PropertyTypeRequiredDescription
lead_idstringYesNo description yet.
company_idstringNoNo description yet.
contact_idstringNoNo description yet.
create_dealbooleanNoNo description yet.
deal_namestringNoNo description yet.
stage_keystringNoNo description yet.
amount_centsinteger · min 0NoNo description yet.
currencystringNoNo description yet.
conversion_reasonstringNoNo description yet.

Additional properties are rejected.

Example input

{
  "lead_id": "lead_123",
  "create_deal": true,
  "deal_name": "Website redesign"
}

Example response

{
  "lead": {
    "id": "lead_123",
    "status": "converted"
  },
  "request_id": "req_202"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

create_deal_stage

Create a custom deal stage for the workspace pipeline.

MVP
Idempotent writesNo dry runStrict schema
Required scopes
crm:write
API equivalent
POST /v1/deal-stages

Example prompt

Add a Discovery deal stage.

Input schema

PropertyTypeRequiredDescription
keystringYesNo description yet.
namestringYesNo description yet.
positioninteger · min 0NoNo description yet.
kindstring · open | won | lostNoNo description yet.
probabilityinteger · min 0NoNo description yet.
colorstringNoNo description yet.
custom_fieldsobjectNoNo description yet.
idempotency_keystringNoNo description yet.

Additional properties are rejected.

Example input

{
  "key": "discovery",
  "name": "Discovery",
  "position": 10
}

Example response

{
  "stage": {
    "id": "stage_123",
    "key": "discovery"
  },
  "request_id": "req_203"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The idempotency key was reused with a different request body.

list_deal_stages

List workspace deal stages, including custom stages.

MVP
Read operationNo dry runStrict schema
Required scopes
crm:read
API equivalent
GET /v1/deal-stages

Example prompt

List CRM pipeline stages.

Input schema

PropertyTypeRequiredDescription
querystringNoNo description yet.
limitinteger · min 1 · max 100NoNo description yet.
cursorstringNoNo description yet.

Additional properties are rejected.

Example input

{
  "limit": 25
}

Example response

{
  "stages": [
    {
      "id": "stage_123",
      "key": "discovery"
    }
  ],
  "request_id": "req_204"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

create_deal

Create a deal associated with a company or contact.

MVP
Idempotent writesNo dry runStrict schema
Required scopes
crm:write
API equivalent
POST /v1/deals

Example prompt

Create a qualified deal for Acme called Pilot subscription worth $5,000.

Input schema

PropertyTypeRequiredDescription
namestringYesShort deal name visible in the CRM pipeline.
company_idstringNoExisting company ID associated with the opportunity.
contact_idstringNoExisting contact ID associated with the opportunity.
stagestringNoBuilt-in or custom pipeline stage key to assign when the deal is created.
stage_keystringNoPreferred stage key field for built-in or custom stages.
amount_centsinteger · min 0NoDeal value in the smallest currency unit.
currencystring · default USDNoISO currency code for the deal amount.
custom_fieldsobjectNoUser-defined queryable JSON fields.
idempotency_keystringNoStable client-generated key that makes retries safe for this write.

Additional properties are rejected.

Example input

{
  "name": "Pilot subscription",
  "company_id": "com_123",
  "stage": "qualified",
  "amount_cents": 500000,
  "currency": "USD"
}

Example response

{
  "deal": {
    "id": "deal_123",
    "name": "Pilot subscription",
    "stage": "qualified"
  },
  "request_id": "req_127"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

update_deal_stage

Move an existing deal to a new pipeline stage. Deprecated in favor of update_deal.

Deprecated
Idempotent writesSupports dry runStrict schema
Use update_deal for stage, amount, and currency changes through one PATCH-compatible tool. Use update_deal for new integrations.
Required scopes
crm:write
API equivalent
PATCH /v1/deals/{deal_id}

Example prompt

Move deal_123 to proposal stage.

Input schema

PropertyTypeRequiredDescription
deal_idstringYesDeal ID to update.
stagestring · new | qualified | proposal | won | lostYesTarget pipeline stage.
dry_runboolean · default falseNoPreview validation and audit effects without changing the deal.
idempotency_keystringNoStable client-generated key that makes retries safe for this write.

Additional properties are rejected.

Example input

{
  "deal_id": "deal_123",
  "stage": "proposal"
}

Example response

{
  "deal": {
    "id": "deal_123",
    "stage": "proposal"
  },
  "request_id": "req_128"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

update_deal

Update deal stage, amount, or currency.

MVP
Idempotent writesNo dry runStrict schema
Required scopes
crm:write
API equivalent
PATCH /v1/deals/{deal_id}

Example prompt

Update deal_123 to proposal stage with a $7,500 USD amount.

Input schema

PropertyTypeRequiredDescription
deal_idstringYesDeal ID to update.
stagestringNoOptional built-in or custom target pipeline stage key.
stage_keystringNoPreferred stage key field for built-in or custom stages.
amount_centsinteger · min 0NoOptional deal value in the smallest currency unit.
currencystringNoOptional ISO currency code for the deal amount.
custom_fieldsobjectNoUser-defined queryable JSON fields.
idempotency_keystringNoStable client-generated key that makes retries safe for this write.

Additional properties are rejected.

Example input

{
  "deal_id": "deal_123",
  "stage": "proposal",
  "amount_cents": 750000,
  "currency": "USD"
}

Example response

{
  "deal": {
    "id": "deal_123",
    "stage": "proposal",
    "amount_cents": 750000,
    "currency": "USD"
  },
  "request_id": "req_128"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

create_invoice

Create an invoice with product or service line items.

MVP
Idempotent writesNo dry runStrict schema
Required scopes
crm:write
API equivalent
POST /v1/invoices

Example prompt

Create an invoice for the website redesign service.

Input schema

PropertyTypeRequiredDescription
invoice_numberstringYesNo description yet.
company_idstringNoNo description yet.
contact_idstringNoNo description yet.
deal_idstringNoNo description yet.
currencystring · default USDNoNo description yet.
due_datestring · date-timeNoNo description yet.
line_itemsarrayYesNo description yet.
custom_fieldsobjectNoNo description yet.
idempotency_keystringNoNo description yet.

Additional properties are rejected.

Example input

{
  "invoice_number": "INV-1001",
  "line_items": [
    {
      "kind": "service",
      "name": "Website redesign",
      "unit_amount_cents": 500000
    }
  ]
}

Example response

{
  "invoice": {
    "id": "inv_123",
    "invoice_number": "INV-1001"
  },
  "request_id": "req_205"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

list_invoices

List invoices by status, customer, deal, or custom field.

MVP
Read operationNo dry runStrict schema
Required scopes
crm:read
API equivalent
GET /v1/invoices

Example prompt

List open invoices.

Input schema

PropertyTypeRequiredDescription
statusstringNoNo description yet.
company_idstringNoNo description yet.
contact_idstringNoNo description yet.
deal_idstringNoNo description yet.
limitinteger · min 1 · max 100NoNo description yet.
cursorstringNoNo description yet.

Additional properties are rejected.

Example input

{
  "status": "sent",
  "limit": 10
}

Example response

{
  "invoices": [
    {
      "id": "inv_123",
      "status": "sent"
    }
  ],
  "request_id": "req_206"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

record_payment

Record a payment against an invoice.

MVP
Idempotent writesNo dry runStrict schema
Required scopes
crm:write
API equivalent
POST /v1/payments

Example prompt

Record a $2,500 payment for inv_123.

Input schema

PropertyTypeRequiredDescription
invoice_idstringNoNo description yet.
amount_centsinteger · min 1YesNo description yet.
currencystringNoNo description yet.
paid_atstring · date-timeNoNo description yet.
providerstringNoNo description yet.
provider_reference_idstringNoNo description yet.
custom_fieldsobjectNoNo description yet.
idempotency_keystringNoNo description yet.

Additional properties are rejected.

Example input

{
  "invoice_id": "inv_123",
  "amount_cents": 250000
}

Example response

{
  "payment": {
    "id": "pay_123",
    "amount_cents": 250000
  },
  "request_id": "req_207"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

create_accounting_account

Create a basic chart-of-accounts account.

MVP
Idempotent writesNo dry runStrict schema
Required scopes
crm:write
API equivalent
POST /v1/accounting/accounts

Example prompt

Create a services revenue account.

Input schema

PropertyTypeRequiredDescription
codestringYesNo description yet.
namestringYesNo description yet.
typestring · asset | liability | equity | revenue | expenseYesNo description yet.
descriptionstringNoNo description yet.
custom_fieldsobjectNoNo description yet.
idempotency_keystringNoNo description yet.

Additional properties are rejected.

Example input

{
  "code": "4000",
  "name": "Services revenue",
  "type": "revenue"
}

Example response

{
  "account": {
    "id": "acct_123",
    "code": "4000"
  },
  "request_id": "req_208"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The idempotency key was reused with a different request body.

list_accounting_accounts

List chart-of-accounts records.

MVP
Read operationNo dry runStrict schema
Required scopes
crm:read
API equivalent
GET /v1/accounting/accounts

Example prompt

List revenue accounts.

Input schema

PropertyTypeRequiredDescription
typestringNoNo description yet.
querystringNoNo description yet.
limitinteger · min 1 · max 100NoNo description yet.
cursorstringNoNo description yet.

Additional properties are rejected.

Example input

{
  "type": "revenue"
}

Example response

{
  "accounts": [
    {
      "id": "acct_123",
      "name": "Services revenue"
    }
  ],
  "request_id": "req_209"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

create_journal_entry

Create a balanced accounting journal entry.

MVP
Idempotent writesNo dry runStrict schema
Required scopes
crm:write
API equivalent
POST /v1/accounting/journal-entries

Example prompt

Post a balanced payment journal entry.

Input schema

PropertyTypeRequiredDescription
entry_numberstringNoNo description yet.
statusstring · draft | postedNoNo description yet.
memostringNoNo description yet.
linesarrayYesNo description yet.
custom_fieldsobjectNoNo description yet.
idempotency_keystringNoNo description yet.

Additional properties are rejected.

Example input

{
  "status": "posted",
  "lines": [
    {
      "account_id": "acct_cash",
      "debit_cents": 10000
    },
    {
      "account_id": "acct_ar",
      "credit_cents": 10000
    }
  ]
}

Example response

{
  "journal_entry": {
    "id": "je_123",
    "status": "posted"
  },
  "request_id": "req_210"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

list_journal_entries

List accounting journal entries.

MVP
Read operationNo dry runStrict schema
Required scopes
crm:read
API equivalent
GET /v1/accounting/journal-entries

Example prompt

List posted journal entries.

Input schema

PropertyTypeRequiredDescription
statusstringNoNo description yet.
querystringNoNo description yet.
limitinteger · min 1 · max 100NoNo description yet.
cursorstringNoNo description yet.

Additional properties are rejected.

Example input

{
  "status": "posted"
}

Example response

{
  "journal_entries": [
    {
      "id": "je_123",
      "status": "posted"
    }
  ],
  "request_id": "req_211"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

create_task

Create a task for a user, agent, contact, company, or deal.

MVP
Idempotent writesNo dry runStrict schema
Required scopes
tasks:write
API equivalent
POST /v1/tasks

Example prompt

Create a follow-up task for Jane Doe next Friday.

Input schema

PropertyTypeRequiredDescription
titlestringYesShort task title written for a human operator.
descriptionstringNoOptional task details or completion criteria.
due_atstring · date-timeNoOptional ISO 8601 due date and time.
assignee_idstringNoUser or agent ID responsible for the task.
related_resource_typestring · contact | company | deal | support_ticketNoResource type the task should be attached to.
related_resource_idstringNoResource ID matching related_resource_type.
idempotency_keystringNoStable client-generated key that makes retries safe for this write.

Additional properties are rejected.

Example input

{
  "title": "Follow up with Jane Doe",
  "related_resource_type": "contact",
  "related_resource_id": "con_123"
}

Example response

{
  "task": {
    "id": "task_123",
    "title": "Follow up with Jane Doe",
    "status": "open"
  },
  "request_id": "req_129"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

list_tasks

List tasks by status, assignee, due date, or related resource.

MVP
Read operationNo dry runStrict schema
Required scopes
tasks:read
API equivalent
GET /v1/tasks

Example prompt

Show my open tasks.

Input schema

PropertyTypeRequiredDescription
statusstring · open | completed | canceledNoFilter tasks by lifecycle status.
assignee_idstringNoRestrict results to tasks assigned to this user or agent.
limitinteger · min 1 · max 100NoMaximum number of tasks to return.
cursorstringNoOpaque cursor from a previous response's next_cursor.

Additional properties are rejected.

Example input

{
  "status": "open",
  "limit": 25
}

Example response

{
  "tasks": [
    {
      "id": "task_123",
      "title": "Follow up with Jane Doe",
      "status": "open"
    }
  ],
  "request_id": "req_130"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

complete_task

Mark a task complete in the current workspace. Deprecated in favor of update_task.

Deprecated
Idempotent writesNo dry runStrict schema
Use update_task with status completed and an optional completed_note. Use update_task for new integrations.
Required scopes
tasks:write
API equivalent
PATCH /v1/tasks/{task_id}

Example prompt

Complete task_123 and note that Jane replied.

Input schema

PropertyTypeRequiredDescription
task_idstringYesTask ID to mark complete.
completed_notestringNoOptional note describing the completion outcome.
idempotency_keystringNoStable client-generated key that makes retries safe for this write.

Additional properties are rejected.

Example input

{
  "task_id": "task_123",
  "completed_note": "Jane replied."
}

Example response

{
  "task": {
    "id": "task_123",
    "status": "completed"
  },
  "request_id": "req_131"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

update_task

Update a task status, including canceling or reopening it.

MVP
Idempotent writesNo dry runStrict schema
Required scopes
tasks:write
API equivalent
PATCH /v1/tasks/{task_id}

Example prompt

Complete task_123 and note that Jane confirmed the next call.

Input schema

PropertyTypeRequiredDescription
task_idstringYesTask ID to update.
statusstring · open | completed | canceledNoTarget task status.
completed_notestringNoOptional completion note.
idempotency_keystringNoStable client-generated key that makes retries safe for this write.

Additional properties are rejected.

Example input

{
  "task_id": "task_123",
  "status": "completed",
  "completed_note": "Jane confirmed the next call."
}

Example response

{
  "task": {
    "id": "task_123",
    "status": "completed",
    "completed_note": "Jane confirmed the next call."
  },
  "request_id": "req_131"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

log_activity

Record a workspace activity such as a note, call, email, meeting, or agent action.

MVP
Idempotent writesNo dry runStrict schema
Required scopes
activity:write
API equivalent
POST /v1/activities

Example prompt

Log that Jane asked for pricing details by email.

Input schema

PropertyTypeRequiredDescription
typestring · note | call | email | meeting | agent_actionYesActivity category used for filtering and audit review.
summarystringYesShort human-readable activity summary.
bodystringNoOptional detailed note, transcript excerpt, or structured context.
related_resource_typestring · contact | company | deal | task | support_ticketNoResource type this activity should be attached to.
related_resource_idstringNoResource ID matching related_resource_type.
occurred_atstring · date-timeNoOptional ISO 8601 timestamp when the activity happened.
idempotency_keystringNoStable client-generated key that makes retries safe for this write.

Additional properties are rejected.

Example input

{
  "type": "email",
  "summary": "Jane asked for pricing details",
  "related_resource_type": "contact",
  "related_resource_id": "con_123"
}

Example response

{
  "activity": {
    "id": "act_123",
    "type": "email",
    "summary": "Jane asked for pricing details"
  },
  "request_id": "req_132"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

search_activity

Search activity records by text, type, date, or related resource.

MVP
Read operationNo dry runStrict schema
Required scopes
activity:read
API equivalent
GET /v1/activities

Example prompt

Find recent activity about pricing.

Input schema

PropertyTypeRequiredDescription
querystringNoFree-text search across activity summary and body.
typestring · note | call | email | meeting | agent_actionNoRestrict results to one activity category.
limitinteger · min 1 · max 100NoMaximum number of activities to return.
cursorstringNoOpaque cursor from a previous response's next_cursor.

Additional properties are rejected.

Example input

{
  "query": "pricing",
  "limit": 10
}

Example response

{
  "activities": [
    {
      "id": "act_123",
      "summary": "Jane asked for pricing details"
    }
  ],
  "request_id": "req_133"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

create_support_queue

Create a support queue or inbox with default assignment and SLA targets.

MVP
Idempotent writesNo dry runStrict schema
Required scopes
support:write
API equivalent
POST /v1/support/queues

Example prompt

Create a priority support inbox with a two hour first response target.

Input schema

PropertyTypeRequiredDescription
keystringYesNo description yet.
namestringYesNo description yet.
descriptionstringNoNo description yet.
statusstring · active | paused | archivedNoNo description yet.
default_assignee_idstringNoNo description yet.
default_prioritystring · low | normal | high | urgentNoNo description yet.
first_response_target_minutesinteger · min 0NoNo description yet.
next_response_target_minutesinteger · min 0NoNo description yet.
resolution_target_minutesinteger · min 0NoNo description yet.
custom_fieldsobjectNoUser-defined queryable JSON fields.
idempotency_keystringNoNo description yet.

Additional properties are rejected.

Example input

{
  "key": "priority",
  "name": "Priority Support",
  "first_response_target_minutes": 120
}

Example response

{
  "queue": {
    "id": "queue_123",
    "key": "priority"
  },
  "request_id": "req_300"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The idempotency key was reused with a different request body.

list_support_queues

List support queues by status, search text, or custom field.

MVP
Read operationNo dry runStrict schema
Required scopes
support:read
API equivalent
GET /v1/support/queues

Example prompt

List active support queues.

Input schema

PropertyTypeRequiredDescription
querystringNoNo description yet.
statusstring · active | paused | archivedNoNo description yet.
custom_field_keystringNoNo description yet.
custom_field_valuestringNoNo description yet.
limitinteger · min 1 · max 100NoNo description yet.
cursorstringNoNo description yet.

Additional properties are rejected.

Example input

{
  "status": "active",
  "limit": 10
}

Example response

{
  "queues": [
    {
      "id": "queue_123",
      "name": "Priority Support"
    }
  ],
  "request_id": "req_301"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

create_support_ticket

Create a support ticket linked to customers, CRM records, invoices, and SLA targets.

MVP
Idempotent writesNo dry runStrict schema
Required scopes
support:write
API equivalent
POST /v1/support/tickets

Example prompt

Create an urgent support ticket for a billing issue.

Input schema

PropertyTypeRequiredDescription
ticket_numberstringNoNo description yet.
subjectstringYesNo description yet.
descriptionstringNoNo description yet.
statusstring · new | open | pending | waiting_on_customerNoNo description yet.
prioritystring · low | normal | high | urgentNoNo description yet.
sourcestring · manual | email | chat | phone | web | api | mcp | slack | otherNoNo description yet.
categorystringNoNo description yet.
tagsarrayNoNo description yet.
queue_idstringNoNo description yet.
assignee_idstringNoNo description yet.
owner_idstringNoNo description yet.
contact_idstringNoNo description yet.
company_idstringNoNo description yet.
deal_idstringNoNo description yet.
lead_idstringNoNo description yet.
invoice_idstringNoNo description yet.
external_referencestringNoNo description yet.
first_response_due_atstring · date-timeNoNo description yet.
next_response_due_atstring · date-timeNoNo description yet.
resolution_due_atstring · date-timeNoNo description yet.
custom_fieldsobjectNoUser-defined queryable JSON fields.
idempotency_keystringNoNo description yet.

Additional properties are rejected.

Example input

{
  "subject": "Customer cannot download invoice",
  "priority": "urgent",
  "category": "billing"
}

Example response

{
  "ticket": {
    "id": "ticket_123",
    "subject": "Customer cannot download invoice",
    "status": "new"
  },
  "request_id": "req_302"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

The idempotency key was reused with a different request body.

list_support_tickets

List support tickets by status, priority, queue, owner, customer links, search text, or custom field.

MVP
Read operationNo dry runStrict schema
Required scopes
support:read
API equivalent
GET /v1/support/tickets

Example prompt

Show urgent open support tickets.

Input schema

PropertyTypeRequiredDescription
querystringNoNo description yet.
statusstring · new | open | pending | waiting_on_customer | resolved | closedNoNo description yet.
prioritystring · low | normal | high | urgentNoNo description yet.
sourcestring · manual | email | chat | phone | web | api | mcp | slack | otherNoNo description yet.
categorystringNoNo description yet.
queue_idstringNoNo description yet.
assignee_idstringNoNo description yet.
contact_idstringNoNo description yet.
company_idstringNoNo description yet.
deal_idstringNoNo description yet.
lead_idstringNoNo description yet.
invoice_idstringNoNo description yet.
custom_field_keystringNoNo description yet.
custom_field_valuestringNoNo description yet.
limitinteger · min 1 · max 100NoNo description yet.
cursorstringNoNo description yet.

Additional properties are rejected.

Example input

{
  "status": "open",
  "priority": "urgent",
  "limit": 10
}

Example response

{
  "tickets": [
    {
      "id": "ticket_123",
      "priority": "urgent"
    }
  ],
  "request_id": "req_303"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

update_support_ticket

Update support ticket status, priority, queue, assignment, tags, category, SLA targets, or custom fields.

MVP
Idempotent writesNo dry runStrict schema
Required scopes
support:write
API equivalent
PATCH /v1/support/tickets/{ticket_id}

Example prompt

Assign ticket_123 to the priority queue and mark it open.

Input schema

PropertyTypeRequiredDescription
ticket_idstringYesNo description yet.
statusstring · new | open | pending | waiting_on_customer | resolved | closedNoNo description yet.
prioritystring · low | normal | high | urgentNoNo description yet.
queue_idstringNoNo description yet.
assignee_idstringNoNo description yet.
owner_idstringNoNo description yet.
categorystringNoNo description yet.
tagsarrayNoNo description yet.
first_response_due_atstring · date-timeNoNo description yet.
next_response_due_atstring · date-timeNoNo description yet.
resolution_due_atstring · date-timeNoNo description yet.
custom_fieldsobjectNoNo description yet.
idempotency_keystringNoNo description yet.

Additional properties are rejected.

Example input

{
  "ticket_id": "ticket_123",
  "status": "open",
  "queue_id": "queue_123"
}

Example response

{
  "ticket": {
    "id": "ticket_123",
    "status": "open"
  },
  "request_id": "req_304"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

add_support_ticket_message

Add an inbound, outbound, or internal message to a support ticket conversation.

MVP
Idempotent writesNo dry runStrict schema
Required scopes
support:write
API equivalent
POST /v1/support/tickets/{ticket_id}/messages

Example prompt

Add the customer's latest email to ticket_123.

Input schema

PropertyTypeRequiredDescription
ticket_idstringYesNo description yet.
directionstring · inbound | outbound | internalNoNo description yet.
visibilitystring · public | internalNoNo description yet.
channelstring · manual | email | chat | phone | web | api | mcp | slack | otherNoNo description yet.
subjectstringNoNo description yet.
bodystringYesNo description yet.
author_namestringNoNo description yet.
author_emailstringNoNo description yet.
external_message_idstringNoNo description yet.
occurred_atstring · date-timeNoNo description yet.
custom_fieldsobjectNoNo description yet.
idempotency_keystringNoNo description yet.

Additional properties are rejected.

Example input

{
  "ticket_id": "ticket_123",
  "direction": "inbound",
  "channel": "email",
  "body": "I still cannot access the invoice."
}

Example response

{
  "message": {
    "id": "msg_123",
    "ticket_id": "ticket_123"
  },
  "request_id": "req_305"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

The idempotency key was reused with a different request body.

list_support_ticket_messages

List conversation messages for a support ticket.

MVP
Read operationNo dry runStrict schema
Required scopes
support:read
API equivalent
GET /v1/support/tickets/{ticket_id}/messages

Example prompt

Show the conversation for ticket_123.

Input schema

PropertyTypeRequiredDescription
ticket_idstringYesNo description yet.
querystringNoNo description yet.
custom_field_keystringNoNo description yet.
custom_field_valuestringNoNo description yet.
limitinteger · min 1 · max 100NoNo description yet.
cursorstringNoNo description yet.

Additional properties are rejected.

Example input

{
  "ticket_id": "ticket_123",
  "limit": 25
}

Example response

{
  "messages": [
    {
      "id": "msg_123",
      "body": "I still cannot access the invoice."
    }
  ],
  "request_id": "req_306"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

add_support_ticket_comment

Add an internal note or pinned comment to a support ticket.

MVP
Idempotent writesNo dry runStrict schema
Required scopes
support:write
API equivalent
POST /v1/support/tickets/{ticket_id}/comments

Example prompt

Add an internal note to ticket_123 that finance is checking the invoice.

Input schema

PropertyTypeRequiredDescription
ticket_idstringYesNo description yet.
bodystringYesNo description yet.
pinnedbooleanNoNo description yet.
custom_fieldsobjectNoNo description yet.
idempotency_keystringNoNo description yet.

Additional properties are rejected.

Example input

{
  "ticket_id": "ticket_123",
  "body": "Finance is checking the invoice export.",
  "pinned": true
}

Example response

{
  "comment": {
    "id": "comment_123",
    "pinned": true
  },
  "request_id": "req_307"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

The idempotency key was reused with a different request body.

list_support_ticket_comments

List internal comments and notes for a support ticket.

MVP
Read operationNo dry runStrict schema
Required scopes
support:read
API equivalent
GET /v1/support/tickets/{ticket_id}/comments

Example prompt

Show internal notes for ticket_123.

Input schema

PropertyTypeRequiredDescription
ticket_idstringYesNo description yet.
querystringNoNo description yet.
custom_field_keystringNoNo description yet.
custom_field_valuestringNoNo description yet.
limitinteger · min 1 · max 100NoNo description yet.
cursorstringNoNo description yet.

Additional properties are rejected.

Example input

{
  "ticket_id": "ticket_123",
  "limit": 25
}

Example response

{
  "comments": [
    {
      "id": "comment_123",
      "body": "Finance is checking the invoice export."
    }
  ],
  "request_id": "req_308"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

create_collection

Create a CMS collection that defines a content type for entries.

MVP
Idempotent writesNo dry runStrict schema
Required scopes
cms:write
API equivalent
POST /v1/cms/collections

Example prompt

Create a blog posts collection with title, slug, and body fields.

Input schema

PropertyTypeRequiredDescription
namestringYesHuman-readable collection name.
keystringYesStable collection key used by API and MCP clients.
descriptionstringNoOptional description of the collection purpose.
schemaobjectNoJSON schema-like field definition for entries in this collection.
idempotency_keystringNoStable client-generated key that makes retries safe for this write.

Additional properties are rejected.

Example input

{
  "name": "Blog Posts",
  "key": "blog_posts",
  "schema": {
    "fields": [
      {
        "key": "title",
        "type": "string",
        "required": true
      },
      {
        "key": "slug",
        "type": "string",
        "required": true
      },
      {
        "key": "body",
        "type": "markdown",
        "required": true
      }
    ]
  }
}

Example response

{
  "collection": {
    "id": "col_123",
    "key": "blog_posts",
    "name": "Blog Posts"
  },
  "request_id": "req_135"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The idempotency key was reused with a different request body.

create_cms_site

Create a website or marketing site managed by the CMS.

MVP
Idempotent writesNo dry runStrict schema
Required scopes
cms:write
API equivalent
POST /v1/cms/sites

Example prompt

Create a CMS site for slab5.com.

Input schema

PropertyTypeRequiredDescription
keystringYesNo description yet.
namestringYesNo description yet.
primary_domainstringNoNo description yet.
descriptionstringNoNo description yet.
settingsobjectNoNo description yet.
custom_fieldsobjectNoNo description yet.
idempotency_keystringNoNo description yet.

Additional properties are rejected.

Example input

{
  "key": "slab5_com",
  "name": "slab5.com",
  "primary_domain": "slab5.com"
}

Example response

{
  "site": {
    "id": "site_123",
    "key": "slab5_com"
  },
  "request_id": "req_212"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The idempotency key was reused with a different request body.

list_cms_sites

List CMS-managed websites.

MVP
Read operationNo dry runStrict schema
Required scopes
cms:read
API equivalent
GET /v1/cms/sites

Example prompt

List CMS sites.

Input schema

PropertyTypeRequiredDescription
querystringNoNo description yet.
limitinteger · min 1 · max 100NoNo description yet.
cursorstringNoNo description yet.

Additional properties are rejected.

Example input

{
  "limit": 10
}

Example response

{
  "sites": [
    {
      "id": "site_123",
      "name": "slab5.com"
    }
  ],
  "request_id": "req_213"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

create_entry

Create a CMS entry in a collection.

MVP
Idempotent writesNo dry runStrict schema
Required scopes
cms:write
API equivalent
POST /v1/cms/entries

Example prompt

Create a draft blog post about AI follow-up workflows.

Input schema

PropertyTypeRequiredDescription
collection_idstringYesCollection ID where the entry should be created.
site_idstringNoOptional CMS site this content belongs to.
campaign_idstringNoOptional marketing campaign this content supports.
content_typestring · website_page | landing_page | blog_post | article | social_post | email | case_study | asset_brief | otherNoNo description yet.
slugstringNoNo description yet.
titlestringNoOptional display title for the entry.
excerptstringNoNo description yet.
fieldsobjectYesEntry field values keyed by collection schema field key.
statusstring · draft | review | published | archivedNoInitial publishing status.
seoobjectNoNo description yet.
custom_fieldsobjectNoUser-defined queryable JSON fields.
idempotency_keystringNoStable client-generated key that makes retries safe for this write.

Additional properties are rejected.

Example input

{
  "collection_id": "col_123",
  "title": "AI follow-up workflows",
  "status": "draft",
  "fields": {
    "slug": "ai-follow-up-workflows",
    "body": "Draft content..."
  }
}

Example response

{
  "entry": {
    "id": "ent_123",
    "collection_id": "col_123",
    "status": "draft"
  },
  "request_id": "req_136"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

search_entries

Search CMS entries by collection, status, title, or free-text query.

MVP
Read operationNo dry runStrict schema
Required scopes
cms:read
API equivalent
GET /v1/cms/entries

Example prompt

Find draft blog posts about follow-up.

Input schema

PropertyTypeRequiredDescription
collection_idstringNoRestrict results to one collection.
site_idstringNoNo description yet.
campaign_idstringNoNo description yet.
content_typestring · website_page | landing_page | blog_post | article | social_post | email | case_study | asset_brief | otherNoNo description yet.
statusstring · draft | review | published | archivedNoRestrict results by publishing status.
querystringNoFree-text search across title and fields.
custom_field_keystringNoNo description yet.
custom_field_valuestringNoNo description yet.
limitinteger · min 1 · max 100NoMaximum number of entries to return.
cursorstringNoOpaque cursor from a previous response's next_cursor.

Additional properties are rejected.

Example input

{
  "query": "follow-up",
  "status": "draft",
  "limit": 10
}

Example response

{
  "entries": [
    {
      "id": "ent_123",
      "title": "AI follow-up workflows",
      "status": "draft"
    }
  ],
  "request_id": "req_137"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

update_entry_status

Move a CMS entry between draft, review, published, and archived states. Deprecated in favor of update_entry.

Deprecated
Idempotent writesSupports dry runStrict schema
Use update_entry for status, title, and field changes through one revision-writing tool. Use update_entry for new integrations.
Required scopes
cms:write
API equivalent
PATCH /v1/cms/entries/{entry_id}

Example prompt

Move ent_123 to review.

Input schema

PropertyTypeRequiredDescription
entry_idstringYesEntry ID to update.
statusstring · draft | review | published | archivedYesTarget publishing status.
dry_runboolean · default falseNoPreview validation and audit effects without changing the entry.
idempotency_keystringNoStable client-generated key that makes retries safe for this write.

Additional properties are rejected.

Example input

{
  "entry_id": "ent_123",
  "status": "review"
}

Example response

{
  "entry": {
    "id": "ent_123",
    "status": "review"
  },
  "request_id": "req_138"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

update_entry

Update a CMS entry title, fields, or publishing status and create a revision.

MVP
Idempotent writesNo dry runStrict schema
Required scopes
cms:write
API equivalent
PATCH /v1/cms/entries/{entry_id}

Example prompt

Update ent_123 with a revised title, fields, and review status.

Input schema

PropertyTypeRequiredDescription
entry_idstringYesEntry ID to update.
slugstringNoNo description yet.
excerptstringNoNo description yet.
content_typestring · website_page | landing_page | blog_post | article | social_post | email | case_study | asset_brief | otherNoNo description yet.
titlestringNoOptional display title for the entry.
fieldsobjectNoOptional replacement field values keyed by collection schema field key.
statusstring · draft | review | published | archivedNoOptional target publishing status.
seoobjectNoNo description yet.
custom_fieldsobjectNoNo description yet.
idempotency_keystringNoStable client-generated key that makes retries safe for this write.

Additional properties are rejected.

Example input

{
  "entry_id": "ent_123",
  "title": "AI follow-up workflows",
  "fields": {
    "slug": "ai-follow-up-workflows",
    "body": "Updated draft content..."
  },
  "status": "review"
}

Example response

{
  "entry": {
    "id": "ent_123",
    "title": "AI follow-up workflows",
    "status": "review"
  },
  "request_id": "req_138"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

create_marketing_campaign

Create a marketing campaign for website, blog, email, social, or paid channels.

MVP
Idempotent writesNo dry runStrict schema
Required scopes
cms:write
API equivalent
POST /v1/marketing/campaigns

Example prompt

Create the slab5.com beta launch campaign.

Input schema

PropertyTypeRequiredDescription
keystringYesNo description yet.
namestringYesNo description yet.
statusstring · planned | active | paused | completed | archivedNoNo description yet.
channelstring · website | blog | email | linkedin | x | youtube | paid_ads | partner | otherNoNo description yet.
objectivestringNoNo description yet.
budget_centsinteger · min 0NoNo description yet.
custom_fieldsobjectNoNo description yet.
idempotency_keystringNoNo description yet.

Additional properties are rejected.

Example input

{
  "key": "slab5_beta_launch",
  "name": "Slab5 beta launch",
  "channel": "website"
}

Example response

{
  "campaign": {
    "id": "camp_123",
    "key": "slab5_beta_launch"
  },
  "request_id": "req_214"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The idempotency key was reused with a different request body.

list_marketing_campaigns

List marketing campaigns by status, channel, or custom field.

MVP
Read operationNo dry runStrict schema
Required scopes
cms:read
API equivalent
GET /v1/marketing/campaigns

Example prompt

List active marketing campaigns.

Input schema

PropertyTypeRequiredDescription
statusstringNoNo description yet.
channelstringNoNo description yet.
querystringNoNo description yet.
limitinteger · min 1 · max 100NoNo description yet.
cursorstringNoNo description yet.

Additional properties are rejected.

Example input

{
  "status": "active"
}

Example response

{
  "campaigns": [
    {
      "id": "camp_123",
      "name": "Slab5 beta launch"
    }
  ],
  "request_id": "req_215"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

create_marketing_post

Create a social, blog, email, or website marketing post linked to an optional campaign or CMS entry.

MVP
Idempotent writesNo dry runStrict schema
Required scopes
cms:write
API equivalent
POST /v1/marketing/posts

Example prompt

Draft a LinkedIn post for the beta launch.

Input schema

PropertyTypeRequiredDescription
campaign_idstringNoNo description yet.
entry_idstringNoNo description yet.
channelstring · website | blog | email | linkedin | x | youtube | paid_ads | partner | otherYesNo description yet.
statusstring · draft | review | published | archivedNoNo description yet.
titlestringNoNo description yet.
bodystringYesNo description yet.
scheduled_atstring · date-timeNoNo description yet.
external_urlstringNoNo description yet.
custom_fieldsobjectNoNo description yet.
idempotency_keystringNoNo description yet.

Additional properties are rejected.

Example input

{
  "channel": "linkedin",
  "title": "Beta launch",
  "body": "We are opening Slab5 private beta."
}

Example response

{
  "post": {
    "id": "post_123",
    "channel": "linkedin"
  },
  "request_id": "req_216"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

list_marketing_posts

List marketing posts by channel, status, campaign, or custom field.

MVP
Read operationNo dry runStrict schema
Required scopes
cms:read
API equivalent
GET /v1/marketing/posts

Example prompt

List draft LinkedIn posts.

Input schema

PropertyTypeRequiredDescription
campaign_idstringNoNo description yet.
channelstringNoNo description yet.
statusstringNoNo description yet.
querystringNoNo description yet.
limitinteger · min 1 · max 100NoNo description yet.
cursorstringNoNo description yet.

Additional properties are rejected.

Example input

{
  "channel": "linkedin",
  "status": "draft"
}

Example response

{
  "posts": [
    {
      "id": "post_123",
      "channel": "linkedin"
    }
  ],
  "request_id": "req_217"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

create_asset_upload_intent

Register workspace asset metadata and create a signed upload URL.

MVP
Idempotent writesNo dry runStrict schema
Required scopes
assets:write
API equivalent
POST /v1/assets

Example prompt

Create an upload intent for the hero image attached to the case study draft.

Input schema

PropertyTypeRequiredDescription
asset_typestring · document | image | video | attachmentYesHigh-level asset category used for filtering and workflows.
namestringNoHuman-readable asset name. Defaults to file_name.
descriptionstringNoOptional context for the asset.
file_namestringYesOriginal or desired upload filename.
mime_typestringYesContent MIME type, such as image/png or application/pdf.
byte_sizeinteger · min 0NoExpected object size in bytes.
checksum_sha256stringNoOptional SHA-256 checksum for the object.
related_resource_typestring · lead | contact | company | deal | task | cms_entry | invoice | marketing_campaign | marketing_postNoOptional workspace resource this asset supports.
related_resource_idstringNoResource ID matching related_resource_type.
metadataobjectNoOptional client metadata.
custom_fieldsobjectNoUser-defined queryable JSON fields.
idempotency_keystringNoStable client-generated key that makes retries safe for this write.

Additional properties are rejected.

Example input

{
  "asset_type": "image",
  "file_name": "acme-hero.png",
  "mime_type": "image/png",
  "related_resource_type": "cms_entry",
  "related_resource_id": "ent_123"
}

Example response

{
  "asset": {
    "id": "asset_123",
    "asset_type": "image",
    "upload_url": "https://storage.local.slab5.test/upload/..."
  },
  "request_id": "req_140"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

The idempotency key was reused with a different request body.

complete_asset_upload

Mark an uploaded workspace asset as available after the client uploads the object to the signed URL.

MVP
Idempotent writesNo dry runStrict schema
Required scopes
assets:write
API equivalent
POST /v1/assets/{asset_id}/complete

Example prompt

Complete the upload for asset_123 after uploading the hero image.

Input schema

PropertyTypeRequiredDescription
asset_idstringYesAsset ID returned by create_asset_upload_intent.
byte_sizeinteger · min 0NoActual uploaded object size in bytes.
checksum_sha256stringNoOptional SHA-256 checksum for the uploaded object.
mime_typestringNoOptional final content MIME type.
content_typestringNoOptional alias for mime_type.
idempotency_keystringNoStable client-generated key that makes retries safe for this write.

Additional properties are rejected.

Example input

{
  "asset_id": "asset_123",
  "byte_size": 2048,
  "checksum_sha256": "..."
}

Example response

{
  "asset": {
    "id": "asset_123",
    "asset_type": "image",
    "status": "available"
  },
  "request_id": "req_140b"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

search_assets

Search workspace asset metadata by text, type, status, or linked resource.

MVP
Read operationNo dry runStrict schema
Required scopes
assets:read
API equivalent
GET /v1/assets

Example prompt

Find images attached to ent_123.

Input schema

PropertyTypeRequiredDescription
querystringNoFree-text search across asset name, file name, description, and MIME type.
asset_typestring · document | image | video | attachmentNoRestrict results to one asset category.
statusstring · upload_pending | available | archivedNoRestrict results by asset lifecycle status.
related_resource_typestring · lead | contact | company | deal | task | cms_entry | invoice | marketing_campaign | marketing_postNoRestrict results to assets linked to this resource type.
related_resource_idstringNoRestrict results to assets linked to this resource ID.
custom_field_keystringNoNo description yet.
custom_field_valuestringNoNo description yet.
limitinteger · min 1 · max 100NoMaximum number of assets to return.
cursorstringNoOpaque cursor from a previous response's next_cursor.

Additional properties are rejected.

Example input

{
  "asset_type": "image",
  "related_resource_type": "cms_entry",
  "related_resource_id": "ent_123",
  "limit": 10
}

Example response

{
  "assets": [
    {
      "id": "asset_123",
      "name": "acme-hero.png",
      "asset_type": "image"
    }
  ],
  "request_id": "req_141"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

get_asset_download_url

Retrieve asset metadata with a signed download URL.

MVP
Read operationNo dry runStrict schema
Required scopes
assets:read
API equivalent
GET /v1/assets/{asset_id}

Example prompt

Get a download URL for asset_123.

Input schema

PropertyTypeRequiredDescription
asset_idstringYesAsset ID to retrieve.

Additional properties are rejected.

Example input

{
  "asset_id": "asset_123"
}

Example response

{
  "asset": {
    "id": "asset_123",
    "download_url": "https://storage.local.slab5.test/download/..."
  },
  "request_id": "req_142"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

archive_asset

Archive an asset in the current workspace without deleting its metadata.

MVP
Idempotent writesNo dry runStrict schema
Required scopes
assets:write
API equivalent
DELETE /v1/assets/{asset_id}

Example prompt

Archive asset_123.

Input schema

PropertyTypeRequiredDescription
asset_idstringYesAsset ID to archive.
idempotency_keystringNoStable client-generated key that makes retries safe for this write.

Additional properties are rejected.

Example input

{
  "asset_id": "asset_123"
}

Example response

{
  "asset": {
    "id": "asset_123",
    "status": "archived"
  },
  "request_id": "req_143"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

define_event

Define an analytics event in the workspace tracking plan.

MVP
Idempotent writesNo dry runStrict schema
Required scopes
analytics:write
API equivalent
POST /v1/analytics/events

Example prompt

Define an activation event called first_contact_created.

Input schema

PropertyTypeRequiredDescription
namestringYesEvent name, such as workspace_created.
descriptionstringNoHuman-readable event purpose.
ownerstringNoPerson or team responsible for the event definition.
propertiesarrayNoProperty keys expected on the event.
idempotency_keystringNoStable client-generated key that makes retries safe for this write.

Additional properties are rejected.

Example input

{
  "name": "first_contact_created",
  "description": "A workspace created its first CRM contact.",
  "owner": "growth",
  "properties": [
    "tenant_id",
    "workspace_id",
    "source"
  ]
}

Example response

{
  "event": {
    "id": "evt_123",
    "name": "first_contact_created"
  },
  "request_id": "req_139"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The idempotency key was reused with a different request body.

list_events

List analytics event definitions in the workspace tracking plan.

MVP
Read operationNo dry runStrict schema
Required scopes
analytics:read
API equivalent
GET /v1/analytics/events

Example prompt

List activation events owned by growth.

Input schema

PropertyTypeRequiredDescription
querystringNoFree-text search across event names and descriptions.
ownerstringNoRestrict results to one owner.
limitinteger · min 1 · max 100NoMaximum number of events to return.
cursorstringNoOpaque cursor from a previous response's next_cursor.

Additional properties are rejected.

Example input

{
  "owner": "growth",
  "limit": 25
}

Example response

{
  "events": [
    {
      "id": "evt_123",
      "name": "first_contact_created",
      "owner": "growth"
    }
  ],
  "request_id": "req_140"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

define_property

Define a reusable analytics property for the tracking plan.

MVP
Idempotent writesNo dry runStrict schema
Required scopes
analytics:write
API equivalent
POST /v1/analytics/properties

Example prompt

Define workspace_id as a required string property.

Input schema

PropertyTypeRequiredDescription
keystringYesProperty key used in tracked events.
typestring · string | number | boolean | datetime | object | arrayYesExpected property value type.
descriptionstringNoHuman-readable property meaning.
requiredboolean · default falseNoWhether this property is required when associated with an event.
idempotency_keystringNoStable client-generated key that makes retries safe for this write.

Additional properties are rejected.

Example input

{
  "key": "workspace_id",
  "type": "string",
  "description": "Workspace identifier associated with the event.",
  "required": true
}

Example response

{
  "property": {
    "id": "prop_123",
    "key": "workspace_id",
    "type": "string"
  },
  "request_id": "req_141"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The idempotency key was reused with a different request body.

validate_event

Validate an event payload against the workspace tracking plan.

MVP
Read operationNo dry runStrict schema
Required scopes
analytics:read
API equivalent
POST /v1/analytics/events/validate

Example prompt

Validate a first_contact_created event payload.

Input schema

PropertyTypeRequiredDescription
namestringYesEvent name to validate.
propertiesobjectYesEvent payload properties to validate.

Additional properties are rejected.

Example input

{
  "name": "first_contact_created",
  "properties": {
    "tenant_id": "ten_123",
    "workspace_id": "wrk_123",
    "source": "mcp"
  }
}

Example response

{
  "valid": true,
  "errors": [],
  "request_id": "req_142"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

list_integration_event_types

List subscribable integration and webhook event types.

MVP
Read operationNo dry runStrict schema
Required scopes
integrations:read
API equivalent
GET /v1/integrations/events

Example prompt

List webhook event types for CRM changes.

Input schema

PropertyTypeRequiredDescription
querystringNoFree-text search across event keys and descriptions.
categorystringNoRestrict results to a category such as crm, cms, assets, or usage.

Additional properties are rejected.

Example input

{
  "category": "crm"
}

Example response

{
  "event_types": [
    {
      "key": "contact.created",
      "category": "crm"
    }
  ],
  "request_id": "req_143"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

register_integration_event_type

Register a workspace-specific integration event type.

MVP
Idempotent writesNo dry runStrict schema
Required scopes
integrations:write
API equivalent
POST /v1/integrations/events

Example prompt

Register a publishing integration event type.

Input schema

PropertyTypeRequiredDescription
keystringYesStable event key such as external.publish.completed.
categorystringYesGrouping for discovery and filtering.
descriptionstringYesHuman-readable event purpose.
schemaobjectNoOptional JSON schema for event payloads.
idempotency_keystringNoStable client-generated key that makes retries safe for this write.

Additional properties are rejected.

Example input

{
  "key": "external.publish.completed",
  "category": "publishing",
  "description": "External publishing workflow completed."
}

Example response

{
  "event_type": {
    "id": "iet_123",
    "key": "external.publish.completed"
  },
  "request_id": "req_144"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The idempotency key was reused with a different request body.

create_webhook_endpoint

Create a signed webhook endpoint subscription.

MVP
Idempotent writesNo dry runStrict schema
Required scopes
integrations:write
API equivalent
POST /v1/webhooks

Example prompt

Create a webhook for CRM contact events.

Input schema

PropertyTypeRequiredDescription
namestringYesDisplay name for the endpoint.
urlstringYesHTTP or HTTPS delivery URL.
event_typesarrayYesEvent types to subscribe to.
statusstring · active | paused | disabledNoEndpoint lifecycle state.
max_attemptsinteger · min 1 · max 10NoBounded delivery attempts per event.
metadataobjectNoEndpoint metadata.
idempotency_keystringNoStable client-generated key that makes retries safe for this write.

Additional properties are rejected.

Example input

{
  "name": "CRM Ops Webhook",
  "url": "https://example.com/slab5/webhooks",
  "event_types": [
    "contact.created"
  ]
}

Example response

{
  "webhook": {
    "id": "wh_123",
    "status": "active",
    "signing_secret_preview": "whsec_abcd...wxyz"
  },
  "request_id": "req_145"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The idempotency key was reused with a different request body.

list_webhook_endpoints

List workspace webhook endpoint subscriptions.

MVP
Read operationNo dry runStrict schema
Required scopes
integrations:read
API equivalent
GET /v1/webhooks

Example prompt

List active webhooks for contact.created.

Input schema

PropertyTypeRequiredDescription
querystringNoFree-text search across names and URLs.
statusstring · active | paused | disabledNoEndpoint status filter.
event_typestringNoOnly endpoints subscribed to this event type.
limitinteger · min 1 · max 100NoMaximum number of endpoints to return.
cursorstringNoOpaque cursor from a previous response's next_cursor.

Additional properties are rejected.

Example input

{
  "event_type": "contact.created",
  "status": "active"
}

Example response

{
  "webhooks": [
    {
      "id": "wh_123",
      "name": "CRM Ops Webhook"
    }
  ],
  "request_id": "req_146"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

update_webhook_endpoint

Update webhook endpoint configuration or lifecycle state.

MVP
Read operationNo dry runStrict schema
Required scopes
integrations:write
API equivalent
PATCH /v1/webhooks/{webhook_id}

Example prompt

Pause webhook wh_123.

Input schema

PropertyTypeRequiredDescription
webhook_idstringYesWebhook endpoint identifier.
namestringNoNo description yet.
urlstringNoNo description yet.
statusstring · active | paused | disabledNoNo description yet.
event_typesarrayNoNo description yet.
max_attemptsinteger · min 1 · max 10NoNo description yet.
metadataobjectNoNo description yet.

Additional properties are rejected.

Example input

{
  "webhook_id": "wh_123",
  "status": "paused"
}

Example response

{
  "webhook": {
    "id": "wh_123",
    "status": "paused"
  },
  "request_id": "req_147"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

send_test_webhook_event

Queue a signed test delivery for a webhook endpoint.

MVP
Read operationNo dry runStrict schema
Required scopes
integrations:write
API equivalent
POST /v1/webhooks/{webhook_id}/test

Example prompt

Send a test event to wh_123.

Input schema

PropertyTypeRequiredDescription
webhook_idstringYesWebhook endpoint identifier.
payloadobjectNoOptional test payload data.

Additional properties are rejected.

Example input

{
  "webhook_id": "wh_123"
}

Example response

{
  "delivery": {
    "id": "whd_123",
    "event_type": "webhook.test",
    "status": "pending"
  },
  "request_id": "req_148"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

list_webhook_deliveries

List webhook delivery attempts and retry state.

MVP
Read operationNo dry runStrict schema
Required scopes
integrations:read
API equivalent
GET /v1/webhooks/{webhook_id}/deliveries

Example prompt

Show failed webhook deliveries.

Input schema

PropertyTypeRequiredDescription
webhook_idstringNoWebhook endpoint identifier.
event_typestringNoDelivery event type filter.
statusstring · pending | retrying | succeeded | failedNoNo description yet.
limitinteger · min 1 · max 100NoNo description yet.
cursorstringNoNo description yet.

Additional properties are rejected.

Example input

{
  "status": "failed",
  "limit": 25
}

Example response

{
  "deliveries": [
    {
      "id": "whd_123",
      "status": "failed",
      "attempt_count": 3
    }
  ],
  "request_id": "req_149"
}

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

list_bi_dashboards

List Product Analytics and BI dashboards in the current workspace.

Experimental
Read operationNo dry runStrict schema
Required scopes
bi:read
API equivalent
GET /v1/bi/dashboards

Input schema

PropertyTypeRequiredDescription
querystringNoNo description yet.
statusstring · draft | active | archivedNoNo description yet.
limitinteger · min 1 · max 100NoNo description yet.
cursorstringNoNo description yet.

Additional properties are rejected.

Example input

Example response

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

create_bi_dashboard

Create a local, provider-neutral BI dashboard definition.

Experimental
Idempotent writesNo dry runStrict schema
Required scopes
bi:write
API equivalent
POST /v1/bi/dashboards

Input schema

PropertyTypeRequiredDescription
keystringYesNo description yet.
namestringYesNo description yet.
descriptionstringNoNo description yet.
statusstring · draft | active | archivedNoNo description yet.
layoutobjectNoNo description yet.
filtersobjectNoNo description yet.
metadataobjectNoNo description yet.
idempotency_keystringNoNo description yet.

Additional properties are rejected.

Example input

Example response

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The idempotency key was reused with a different request body.

list_bi_reports

List BI reports, optionally filtered by dashboard or dataset.

Experimental
Read operationNo dry runStrict schema
Required scopes
bi:read
API equivalent
GET /v1/bi/reports

Input schema

PropertyTypeRequiredDescription
querystringNoNo description yet.
dashboard_idstringNoNo description yet.
dataset_idstringNoNo description yet.
statusstring · draft | active | archivedNoNo description yet.
limitinteger · min 1 · max 100NoNo description yet.
cursorstringNoNo description yet.

Additional properties are rejected.

Example input

Example response

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

create_bi_report

Create a local BI report definition linked to optional dashboard and dataset records.

Experimental
Idempotent writesNo dry runStrict schema
Required scopes
bi:write
API equivalent
POST /v1/bi/reports

Input schema

PropertyTypeRequiredDescription
keystringYesNo description yet.
namestringYesNo description yet.
descriptionstringNoNo description yet.
dashboard_idstringNoNo description yet.
dataset_idstringNoNo description yet.
statusstring · draft | active | archivedNoNo description yet.
visualizationobjectNoNo description yet.
query_specobjectNoNo description yet.
metadataobjectNoNo description yet.
idempotency_keystringNoNo description yet.

Additional properties are rejected.

Example input

Example response

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

The idempotency key was reused with a different request body.

list_bi_datasets

List local BI dataset definitions.

Experimental
Read operationNo dry runStrict schema
Required scopes
bi:read
API equivalent
GET /v1/bi/datasets

Input schema

PropertyTypeRequiredDescription
querystringNoNo description yet.
kindstring · mock | table | view | semanticNoNo description yet.
statusstring · draft | active | archivedNoNo description yet.
limitinteger · min 1 · max 100NoNo description yet.
cursorstringNoNo description yet.

Additional properties are rejected.

Example input

Example response

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

create_bi_dataset

Create a provider-neutral dataset definition using local/mock metadata.

Experimental
Idempotent writesNo dry runStrict schema
Required scopes
bi:write
API equivalent
POST /v1/bi/datasets

Input schema

PropertyTypeRequiredDescription
keystringYesNo description yet.
namestringYesNo description yet.
descriptionstringNoNo description yet.
kindstring · mock | table | view | semanticNoNo description yet.
statusstring · draft | active | archivedNoNo description yet.
schemaobjectNoNo description yet.
sample_rowsarrayNoNo description yet.
metadataobjectNoNo description yet.
idempotency_keystringNoNo description yet.

Additional properties are rejected.

Example input

Example response

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The idempotency key was reused with a different request body.

list_bi_metrics

List workspace BI metric definitions.

Experimental
Read operationNo dry runStrict schema
Required scopes
bi:read
API equivalent
GET /v1/bi/metrics

Input schema

PropertyTypeRequiredDescription
querystringNoNo description yet.
dataset_idstringNoNo description yet.
statusstring · draft | active | archivedNoNo description yet.
limitinteger · min 1 · max 100NoNo description yet.
cursorstringNoNo description yet.

Additional properties are rejected.

Example input

Example response

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

create_bi_metric

Create a workspace BI metric expression.

Experimental
Idempotent writesNo dry runStrict schema
Required scopes
bi:write
API equivalent
POST /v1/bi/metrics

Input schema

PropertyTypeRequiredDescription
keystringYesNo description yet.
namestringYesNo description yet.
expressionstringYesNo description yet.
dataset_idstringNoNo description yet.
descriptionstringNoNo description yet.
unitstringNoNo description yet.
statusstring · draft | active | archivedNoNo description yet.
metadataobjectNoNo description yet.
idempotency_keystringNoNo description yet.

Additional properties are rejected.

Example input

Example response

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

The idempotency key was reused with a different request body.

run_bi_query

Run a BI query or built-in workspace dataset and optionally persist the query definition.

Experimental
Idempotent writesNo dry runStrict schema
Required scopes
bi:write
API equivalent
POST /v1/bi/queries/run

Input schema

PropertyTypeRequiredDescription
statementstringNoNo description yet.
dataset_keystring · api_usage | audit_activity | workspace_activity | crm_contacts | crm_companies | crm_leads | crm_pipeline | crm_notes_activity | tasks_summary | tasks_due | support_ticket_health | support_ticket_volume | cms_publishing_status | cms_content_inventory | marketing_campaigns | asset_library | asset_storage_usage | analytics_governance | finance_invoices | finance_payments | content_performance | usage_activation | agentops_execution_healthNoNo description yet.
dataset_idstringNoNo description yet.
parametersobjectNoNo description yet.
persistbooleanNoNo description yet.
keystringNoNo description yet.
namestringNoNo description yet.
idempotency_keystringNoNo description yet.

Additional properties are rejected.

Example input

Example response

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

The idempotency key was reused with a different request body.

create_bi_export

Create a BI export artifact for a query or report.

Experimental
Idempotent writesNo dry runStrict schema
Required scopes
bi:write
API equivalent
POST /v1/bi/exports

Input schema

PropertyTypeRequiredDescription
namestringYesNo description yet.
formatstring · csv | json | xlsx | pdfYesNo description yet.
query_idstringNoNo description yet.
expires_atstring · date-timeNoNo description yet.
metadataobjectNoNo description yet.
idempotency_keystringNoNo description yet.

Additional properties are rejected.

Example input

Example response

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

The idempotency key was reused with a different request body.

update_bi_object

Update editable BI object metadata within the current workspace.

Experimental
Read operationNo dry runStrict schema
Required scopes
bi:write
API equivalent
PATCH /v1/bi/{collection}/{id}

Input schema

PropertyTypeRequiredDescription
kindstring · dashboard | dataset | report | metric | query | export | scheduled_artifactYesNo description yet.
idstringYesNo description yet.
namestringNoNo description yet.
descriptionstringNoNo description yet.
expressionstringNoNo description yet.
statementstringNoNo description yet.
cadencestring · daily | weekly | monthlyNoNo description yet.
recipientsarrayNoNo description yet.

Additional properties are rejected.

Example input

Example response

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

archive_bi_object

Archive a BI object in the current workspace. Export artifacts are expired.

Experimental
Read operationNo dry runStrict schema
Required scopes
bi:write
API equivalent
DELETE /v1/bi/{collection}/{id}

Input schema

PropertyTypeRequiredDescription
kindstring · dashboard | dataset | report | metric | query | export | scheduled_artifactYesNo description yet.
idstringYesNo description yet.

Additional properties are rejected.

Example input

Example response

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

The requested resource does not exist in this workspace.

get_workspace_assistant_summary

Return safe workspace metadata summaries for the Workspace Assistant without exposing raw customer-owned content.

Available
Read operationNo dry runStrict schema
Required scopes
data_agents:read
API equivalent
GET /v1/assistants/workspace/summary

Input schema

This tool does not require input properties.

Example input

Example response

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

create_workspace_assistant_run

Run the billable Workspace Assistant against safe workspace metadata and summaries, recording AgentGrid logs, retrieval/tool records, cost events, and credit usage.

Available
Read operationNo dry runStrict schema
Required scopes
data_agents:write
API equivalent
POST /v1/assistants/workspace/runs

Input schema

PropertyTypeRequiredDescription
questionstringNoNo description yet.
promptstringNoNo description yet.
modelstringNoNo description yet.

Additional properties are rejected.

Example input

Example response

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

create_slab5_guide_session

Create a ChatKit-ready Slab5 Guide support session descriptor backed by Slab5-owned knowledge.

Available
Read operationNo dry runStrict schema
Required scopes
data_agents:read
API equivalent
POST /v1/assistants/slab5-guide/sessions

Input schema

PropertyTypeRequiredDescription
pagestringNoNo description yet.
workflow_keystringNoNo description yet.
modelstringNoNo description yet.
product_contextobjectNoNo description yet.

Additional properties are rejected.

Example input

Example response

Common errors

The token does not include the scope required for this operation.

The request payload failed schema validation.

get_workspace_summary

Return workspace metadata, enabled modules, and high-level usage context.

MVP
Read operationNo dry runStrict schema
Required scopes
crm:readsupport:readtasks:readactivity:readcms:readassets:readintegrations:readanalytics:readbi:read
API equivalent
GET /v1/workspace

Example prompt

Summarize this Slab5 workspace.

Input schema

This tool does not require input properties.

Example input

{}

Example response

{
  "workspace": {
    "id": "wrk_123",
    "name": "Sandbox Workspace",
    "enabled_modules": [
      "activity_log",
      "tasks",
      "crm",
      "support",
      "cms",
      "assets",
      "integrations",
      "analytics_governance"
    ]
  },
  "request_id": "req_134"
}

Common errors

The token does not include the scope required for this operation.

The workspace could not be found for this token.

Was this page helpful?