OpenAgentOpenAgent

MCP tool reference

All 35 tools on the hosted MCP server, grouped by area, with arguments and behavior notes — businesses, knowledge, workflows, phone, SMS compliance, campaigns, contacts, CRM, integrations.

View as Markdown

The server exposes 35 tools. Read tools run freely; mutating tools act immediately. Most tools take a project argument — the business — which accepts the name or the ID; a wrong value errors back with the real options.

Businesses & services

ToolArgumentsNotes
list_projects—Every business with its services and their agent IDs.
create_projectnameCreates the business.
create_serviceproject, type, nameTypes: chatbox, receptionist, helpdesk, crm, scheduler, whatsapp, instagram, messenger, sms, calendar. Chatbox/receptionist get their backing agent automatically.
get_analyticsprojectThe Home dashboard as data: chats, calls, tickets, leads, volume.

Knowledge

ToolArgumentsNotes
add_knowledgeproject, kind (text / qa / url), title, text / question+answer / urlURL kind crawls the page(s); text and Q&A train directly.
list_knowledgeprojectEvery trained source with status.

Workflows

ToolArgumentsNotes
list_workflowsprojectWorkflows with channel, service, and live status.
create_workflowproject, name, description?, service_id?, graph?Creates the workflow (optionally with a full node/edge graph); returns validation.
update_workflow_graphproject, workflow_id, graphReplaces the staging graph; returns validation.
get_workflowproject, workflow_idThe full graph plus versions.
set_workflow_triggersproject, workflow_id, triggers[]Events from the trigger reference, with optional form/board filters.
publish_workflowproject, workflow_idPromotes staging to production.
test_workflowproject, workflow_id, name?, email?, phone?Fires the workflow against a test person — the SMS really sends, to the number you give.

Phone & texting

ToolArgumentsNotes
search_phone_numbersarea_code?, region?Available local numbers.
buy_phone_numberproject, number, sms?, label?Respects billing — live purchases go through Stripe checkout.
list_phone_numbersprojectOwned numbers with voice/texting tags and assignments.
setup_receptionistproject, greeting, …persona fieldsConfigures the receptionist service's greeting and behavior.
get_sms_complianceprojectA2P registration status + exactly which fields are missing.
save_sms_complianceproject, business profile fieldsSaves the registration profile (legal name, EIN, opt-in method…).
register_sms_complianceprojectSubmits for carrier registration.
assign_sms_numberproject, numberAttaches an approved texting number to the SMS service.

Outreach & people

ToolArgumentsNotes
create_campaignproject, service_id, audience/message fieldsThe campaign runs on the chosen service — its number, its agent. Requires the outbound entitlement.
get_campaignproject, campaign_idStatus and per-recipient results.
list_contactsprojectContacts with DND state.
add_contactproject, name?, email?, phone?Upserts by phone → email match.

CRM & integrations

ToolArgumentsNotes
get_crmprojectEvery CRM service with its boards, columns, tables, forms and keys — the ids every other CRM tool needs.
create_crm_tableproject, service_id, name, fields?Creates a table and its column schema. Field types: text, textarea, number, date, boolean, email, phone, select (with options), url. Keys are slugged from labels. Omit fields for a name/email/phone/message default.
create_crm_boardproject, service_id, name, columns?Creates a board (pipeline). Naming columns replaces the seeded default stages.
create_crm_api_keyproject, service_id, name, database_id, pipeline_id?, stage_id?Issues a Connections key (crk_…). database_id is the table rows land in — create it with create_crm_table first.
list_integrationsprojectThe business's connected accounts with labels and scopes.
use_integrationproject, integration, action, paramsExecutes a connector action against a named account. Writes are classified conservatively.

Calendars

One calendar service holds as many named calendars as you want — one per person, room or resource. A booking page points at a calendar, so create the calendar before the booking page.

ToolArgumentsNotes
list_calendarsprojectEvery calendar on the project with its service and event count.
create_calendarproject, service_id, name, color?Adds a named calendar to a calendar service. A non-calendar service_id is refused by type.
Tool count

The server exposes 35 tools today. The catalog grows with the product, so tools/list is always authoritative — never a number in these docs.