Dokumentation / Referenz

MCP Tools: Automation

Agenten anlegen und verwalten, Agenten-Memory und Learnings, Agenten-Ketten (Beta) — technische Referenz auf Englisch.

Technische Referenz auf Englisch.

Agents

Create/manage AI agents, agent memory and learnings, agent chains (beta)

list_agents

read-only

List all agents in this workspace with their status, assigned tools, and skill count. Use get_agent for full details of a specific agent.

ParameterTypeRequiredDescription
enabled_onlybooleanno

get_agent

read-only

Get full details of a subagent including system prompt and configuration.

ParameterTypeRequiredDescription
slugstringyesAgent slug (e.g. sales-researcher)

create_agent

action

Create a new subagent for this workspace. The agent gets its own system prompt, model, and tool access controls.

Example: Create a ‘Lead Qualifier’ agent that only has access to research + qualification tools, with a specialized prompt for evaluating company fit.

Trigger types:

  • keyword: { type: ‘keyword’, pattern: ‘qualify *’ } — invoked when message matches pattern
  • event: { type: ‘event’, event: ‘lead_replied’ } — invoked on system event
  • schedule: { type: ‘schedule’, cron: ‘0 9 * * 1’ } — runs on schedule
  • channel: { type: ‘channel’, channel_id: ‘uuid’ } — default agent for a channel
ParameterTypeRequiredDescription
namestringyesAgent display name
slugstringyesURL-safe slug (e.g. lead-qualifier)
descriptionstringyesWhat this agent does
system_promptstringyesAgent system prompt — defines personality, expertise, and behavior
avatar_emojistringno
modelstringno
temperaturenumberno
max_tokensnumberno
allowed_toolsstring[]no
denied_toolsstring[]no
custom_tool_idsstring[]no
max_tool_iterationsnumberno
context_instructionsstringno
triggersobject[]no

update_agent

destructive

Update a subagent configuration. Can change prompt, tools, triggers, or model.

ParameterTypeRequiredDescription
slugstringyesAgent slug to update
namestringno
descriptionstringno
system_promptstringno
modelstringno
temperaturenumberno
allowed_toolsstring[]no
denied_toolsstring[]no
custom_tool_idsstring[]no
triggersobject[]no
context_instructionsstringno
enabledbooleanno

delete_agent

destructive

Delete a subagent from this workspace.

ParameterTypeRequiredDescription
slugstringyesAgent slug to delete

invoke_agent

action

Invoke a subagent with a message. The agent runs with its own system prompt and tool access, then returns the result.

ParameterTypeRequiredDescription
slugstringyesAgent slug to invoke
messagestringyesMessage to send to the agent
contextobjectno

get_agent_memories

read-only

Get agent learnings and memories. These are data-driven insights the system has learned from campaign outcomes, reply patterns, and user feedback. Use this to understand what works for this workspace.

ParameterTypeRequiredDescription
categoryenum(campaign_learning \icp_insight \copy_pattern \
agent_idstringno
min_confidencenumberno
limitnumberno

store_agent_memory

action

Store a new learning/insight for the agent. Use this when you discover something about the workspace, their ICP, messaging patterns, objections, or preferences.

ParameterTypeRequiredDescription
categoryenum(campaign_learning \icp_insight \copy_pattern \
contentstringyesThe insight to remember
confidencenumberno
agent_idstringno
sourcestringno

reinforce_memory

action

Reinforce an existing memory with new evidence. Increases confidence score.

ParameterTypeRequiredDescription
memory_idstringyesMemory ID to reinforce
evidenceobjectno

weaken_memory

action

Weaken a memory when contradicting evidence is found. Decreases confidence.

ParameterTypeRequiredDescription
memory_idstringyesMemory ID to weaken

create_agent_chain

action

Create a chain of agents that run in sequence, passing outputs between them. Each agent can use different MCP tools (Trigify, CRM, Apollo, Email Outreach, etc.). Chains are saved as triggers and can run on schedule or on events. Beta feature — use for custom workflows that don’t fit the standard pipeline. IMPORTANT: Always call list_agents first to get real agent IDs. If agents don’t exist, create them with create_agent before creating the chain.

ParameterTypeRequiredDescription
namestringyesChain name (e.g., “Trigify → Enrich → Email Outreach”)
stepsobject[]yesOrdered agent steps — minimum 2 agents
trigger_typeenum(schedule \event \manual)
schedulestringno
event_namestringno

run_agent_chain

action

Manually run an agent chain. Pass optional context data that the first agent receives. Set dry_run=true for a safe test run — opted-in side-effect tools (send_linkedin_message, add_leads_to_heyreach_campaign, bulk_enroll_whatsapp) will no-op and return their would-be payload.

ParameterTypeRequiredDescription
chain_idstringyesChain trigger ID (from create_agent_chain)
contextobjectno
dry_runbooleanno

list_agent_chains

read-only

List all agent chains in this workspace.

No parameters.

get_chain_history

read-only

Get execution history for agent chains — shows each run with steps, quality scores, tool calls, and any issues. Use this to debug and optimize chains. Reads the new agent_chain_runs tables first; falls back to audit_log for runs predating the migration.

ParameterTypeRequiredDescription
chain_namestringno
hoursnumberno
limitnumberno

submit_chain_feedback

action

Submit human feedback on a chain step — used to improve agent performance. The feedback is stored in agent memory and influences future runs.

ParameterTypeRequiredDescription
chain_idstringyesChain execution ID (from get_chain_history)
step_indexnumberyesWhich step to give feedback on (1-based)
ratingenum(good \bad \needs_improvement)
feedbackstringyesWhat was wrong or right, what should change
agent_idstringno

add_chain_step

action

Add a step to an existing chain. By default appends to the end; set insert_after to insert at a specific position (1-based).

ParameterTypeRequiredDescription
chain_idstringyesChain trigger ID
agent_idstringyesWorkspace agent that will run this step
message_templatestringno
output_keystringno
insert_afternumberno

delete_chain_step

destructive

Remove a step from a chain by 1-based position. Remaining steps shift down.

ParameterTypeRequiredDescription
chain_idstringyes
positionnumberyes1-based step position to remove

set_chain_step_condition

destructive

Attach (or clear) a condition on a chain step. The step only runs when the condition evaluates true against the accumulated chain context. Optionally jump to else_jump_to (1-based) when false. Pass condition: null to clear an existing condition.

ParameterTypeRequiredDescription
chain_idstringyes
positionnumberyes1-based step position
conditionobjectno
else_jump_tonumberno

list_chain_templates

read-only

List battle-tested chain templates available for one-click install. Each template has a stable slug; pass it to install_chain_template to deploy.

No parameters.

install_chain_template

action

Install a battle-tested chain template into this workspace. Missing agents that the template references are auto-created from the agent template registry. Idempotent: re-installing the same template returns the existing chain id unless force=true.

ParameterTypeRequiredDescription
template_slugstringyesStable slug from list_chain_templates (e.g. “post-engagers-to-leads-view”)
name_overridestringno
forcebooleanno

set_chain_step_parallel_group

destructive

Tag a step with a parallel_group. Adjacent steps sharing the same group run concurrently via Promise.all. Pass parallel_group: null to make the step sequential again.

ParameterTypeRequiredDescription
chain_idstringyes
positionnumberyes
parallel_groupstringno

update_chain_step

destructive

Edit message_template and/or output_key on an existing chain step. To change the agent on a step, delete it and add a new one (this preserves the audit trail).

ParameterTypeRequiredDescription
chain_idstringyes
positionnumberyes
message_templatestringno
output_keystringno

set_chain_enabled

destructive

Activate or deactivate a chain. When disabled, scheduled fires are skipped, event triggers do not match, and manual runs are still allowed (so users can test before re-enabling). Equivalent to the on/off switch on the chain detail page.

ParameterTypeRequiredDescription
chain_idstringyes
enabledbooleanyes

set_chain_step_retry

destructive

Configure retry policy on a chain step. Transient failures (rate limits, 5xx, agent timeouts) are retried with exponential backoff before the step is recorded as failed. Set max_attempts: 1 (or pass null) to disable retries. Capped at 5 attempts and 30s backoff per attempt.

ParameterTypeRequiredDescription
chain_idstringyes
positionnumberyes1-based step position
retryobjectno
continue_on_failurebooleanno

set_chain_max_concurrency

destructive

Set how many runs of this chain can be in flight at once. Default 1 — schedule fires that arrive while a previous run is still going are silently dropped. Set higher for chains that are genuinely safe to run in parallel (e.g. per-lead reply triage). Set 0 to disable the lock entirely (advanced).

ParameterTypeRequiredDescription
chain_idstringyes
max_concurrent_runsnumberyes

diagnose_chain_run

action

Self-debug a failed or low-quality chain run. Returns a structured diagnosis: which step failed, the error, the resolved prompt + actual output, and a list of suggested fixes (add retry, edit prompt, gate with a condition, swap agent). Use this when a user asks “why did my chain fail?” — the response gives Command Center the context to either explain the failure or apply a fix via set_chain_step_retry / update_chain_step / set_chain_step_condition.

ParameterTypeRequiredDescription
run_idstringyesagent_chain_runs.id

Triggers

Event-driven automation triggers (events, schedules, keywords, thresholds)

list_triggers

read-only

List all automation triggers for this workspace. Triggers fire agents automatically based on events, schedules, keywords, or thresholds.

ParameterTypeRequiredDescription
agent_idstringno

create_trigger

action

Create a new automation trigger. Types:

  • event: fires on system events (lead_replied, meeting_booked, etc.)
  • schedule: fires on cron schedule
  • keyword: fires when keyword detected in message
  • threshold: fires when metric crosses threshold
  • pipeline: fires at pipeline step completion
ParameterTypeRequiredDescription
agent_idstringyesAgent to invoke when trigger fires
namestringyesTrigger name
trigger_typeenum(event \schedule \webhook \
configobjectyesTrigger configuration (varies by type)
action_typeenum(invoke_agent \send_notification \update_record \
action_configobjectno
cooldown_minutesnumberno
max_fires_per_daynumberno

update_trigger

destructive

Update an existing trigger configuration.

ParameterTypeRequiredDescription
trigger_idstringyesTrigger ID
namestringno
configobjectno
action_configobjectno
enabledbooleanno
cooldown_minutesnumberno
max_fires_per_daynumberno

delete_trigger

destructive

Delete an automation trigger.

ParameterTypeRequiredDescription
trigger_idstringyesTrigger ID to delete

get_trigger_log

read-only

View recent trigger execution history. Shows when triggers fired, results, and errors.

ParameterTypeRequiredDescription
trigger_idstringno
limitnumberno

Calendar

Calendar integrations (Calendar, Calendar), booking events, meeting outcomes

list_calendar_integrations

read-only

List connected calendar integrations with sync status, last sync time, and error state. Use setup_calendar to connect a new calendar.

No parameters.

setup_calendar

action

Configure a calendar integration (Calendar or Calendar). Provide API key and booking URL to enable automatic meeting tracking.

ParameterTypeRequiredDescription
providerenum(cal_com \calendly \google_calendar \
api_keystringno
booking_urlstringno
event_type_idstringno
duration_minutesnumberno
sync_directionenum(inbound \outbound \bidirectional)

sync_calendar

action

Sync calendar events from the configured provider. Pulls new bookings and updates lead statuses.

ParameterTypeRequiredDescription
providerenum(cal_com \calendly \google_calendar \

list_calendar_events

read-only

List calendar events (meetings) with their linked leads.

ParameterTypeRequiredDescription
statusenum(scheduled \confirmed \cancelled \
upcoming_onlybooleanno
lead_idstringno
limitnumberno

update_meeting_outcome

destructive

Record meeting outcome after it has occurred.

ParameterTypeRequiredDescription
event_idstringyesCalendar event ID
statusenum(completed \no_show \cancelled)
notesstringno
ratingnumberno

Calendar Booking

Provider-agnostic check_calendar_availability + book_meeting that any agent can call. Dispatches to Calendar / Calendar via the adapter SDK.

check_calendar_availability

read-only

Returns ISO 8601 start times of bookable slots on a sender’s connected calendar (Calendar or Calendar) for the next N days. Use this BEFORE proposing or booking any specific time.

ParameterTypeRequiredDescription
sender_idstringyesUUID of the sender whose calendar to check.
days_aheadnumberyesHow many days ahead to scan. Recommend 7. Max 14.
time_zonestringno

book_meeting

action

Books a meeting on a sender’s connected calendar. Calendar confirms directly. Calendar returns either a confirmed booking (paid Scheduling API plan) or a one-time scheduling link (free plan) — caller should embed the link in the next outbound reply when kind=‘link_only’. Use ONLY a slot returned by check_calendar_availability.

ParameterTypeRequiredDescription
sender_idstringyesUUID of the sender whose calendar to book.
start_isostringyesISO 8601 start time of the meeting.
attendee_namestringyesLead’s full name.
attendee_emailstringyesLead’s email — required for the calendar invite.
attendee_phonestringno
attendee_time_zonestringno
attendee_languageenum(de \en)no
notesstringno

read-only

Returns the public scheduling link to send to a lead so they can self-book. Use this when the lead prefers picking their own time over confirming a specific slot. Prefers the per-sender link (senders.metadata.calendar_link); falls back to the workspace’s connected Calendar / Calendar booking URL — preferring whichever provider the sender is configured for.

ParameterTypeRequiredDescription
sender_idstringyesUUID of the sender to look up.

Skills

Reusable agent capabilities (objection handler, meeting scheduler, etc.)

list_skills

read-only

List available skills for agents. Skills are reusable prompt+tool bundles that give agents specific capabilities (e.g., meeting-scheduler, objection-handler, campaign-optimizer).

ParameterTypeRequiredDescription
scopeenum(org \public \builtin)
tagsstring[]no
searchstringno

get_agent_skills

read-only

Get skills assigned to a specific agent.

ParameterTypeRequiredDescription
agent_idstringyesAgent ID

assign_skill

action

Assign a skill to an agent, giving it that capability.

ParameterTypeRequiredDescription
agent_idstringyesAgent ID
skill_idstringyesSkill ID
configobjectno

remove_skill

destructive

Remove a skill from an agent.

ParameterTypeRequiredDescription
agent_idstringyesAgent ID
skill_idstringyesSkill ID

add_skill_example

action

Add a training example for a skill. The agent will learn from these examples.

ParameterTypeRequiredDescription
skill_slugstringyesWhich skill to train (e.g. “objection-handler”)
examplestringyesThe training example (e.g. “When they say price is too high, respond with ROI calculation”)

create_skill

action

Create a new custom skill for this workspace.

ParameterTypeRequiredDescription
namestringyesSkill name
slugstringyesURL-safe identifier
descriptionstringyesWhat this skill does
system_prompt_extensionstringyesInstructions appended to agent prompt when skill is active
required_toolsstring[]no
trigger_patternsstring[]no
trigger_eventsstring[]no
tagsstring[]no
is_publicbooleanno

Background Jobs

Queue and track long-running jobs in the background worker

enqueue_job

action

Queue a long-running job to the background worker. Use for tasks that take >5 minutes: pipeline runs with many companies, deep research on 50+ leads, long agent chains, bulk operations. Returns a job_id for tracking.

ParameterTypeRequiredDescription
typeenum(pipeline_run \deep_research \agent_chain \
payloadobjectyesJob-specific parameters. For pipeline_run: { playbook_id, limit }. For deep_research: { company_ids } or { company_names }. For agent_chain: { chain_id, input }. For playbook_optimize: { playbook_id, auto_apply }. For bulk_outreach: { lead_ids, sequence_id }.
prioritynumberno

get_job_status

read-only

Check the status of a background job by ID.

ParameterTypeRequiredDescription
job_idstringyes

list_jobs

read-only

List recent background jobs (imports, bulk actions, pipeline runs) with their status and progress.

ParameterTypeRequiredDescription
statusenum(pending \processing \done \
limitnumberno

cancel_job

action

Cancel a pending background job. Cannot cancel running jobs.

ParameterTypeRequiredDescription
job_idstringyes

bulk_agent_run

action

Run a workspace agent on multiple companies in the background. The prompt template supports placeholders: {{company_name}}, {{domain}}, {{industry}}, {{company_id}}, {{location}}, {{employee_count}}. Returns a batch_id for tracking progress. Use get_batch_status to monitor.

ParameterTypeRequiredDescription
agent_idstringyesWorkspace agent ID (get from list_agents)
prompt_templatestringyesMessage template for the agent. Use {{company_name}}, {{domain}}, etc.
company_idsstring[]yesCompany IDs to process
playbook_idstringno

get_batch_status

read-only

Check the status and progress of a pipeline batch (enrichment, agent run, etc.).

ParameterTypeRequiredDescription
batch_idstringyes

list_active_batches

read-only

List active pipeline batches (running enrichments, agent runs, etc.) for a playbook.

ParameterTypeRequiredDescription
playbook_idstringyes

Autonomous Missions

Launch, monitor, and approve long-running autonomous missions

create_mission

action

Launch an autonomous mission: a long-running agent that plans and works toward a goal on the background worker, using read-only workspace tools (research, lead/company/pipeline analytics). It CANNOT send, enrol, or book — it pauses and asks for approval, and the platform executes any approved action. Use for open-ended work like “analyse why playbook X underperforms and draft a fix” or “research 20 lookalikes of our converts and propose a segment”. Returns a mission_id; poll with get_mission.

ParameterTypeRequiredDescription
goalstringyesWhat the mission should accomplish. Be specific about the deliverable.

list_missions

read-only

List this workspace’s autonomous missions (newest first) with their status. Filter by status to find ones awaiting approval.

ParameterTypeRequiredDescription
statusenum(running \waiting_approval \done \
limitnumberno

get_mission

read-only

Get a mission’s full state: goal, status, living plan, recent event trace, registered deliverables (artifacts), and — if it is waiting_approval — exactly what it is asking to do so you can decide_mission.

ParameterTypeRequiredDescription
mission_idstringyesMission ID from create_mission or list_missions.

decide_mission

action

Resolve a mission that is waiting_approval: approve, reject, or request edits to what it proposed. Approving an action lets the PLATFORM execute it (e.g. the proposed outbound step) and resumes the mission; reject/edit resumes it with your guidance. Only valid when the mission status is waiting_approval.

ParameterTypeRequiredDescription
mission_idstringyes
decisionenum(approve \reject \edit)
notestringno