Create automation MCP tool
Create a GovTribe AI automation. Also creates a new GovTribe AI project with the given govtribe_ai_project_name to hold this automation.
- MCP tool name:
Create_Automation - Data type: Automation data type
- Returns: Automation MCP response
- Annotations: Not read only, not destructive, not idempotent, closed world
- Surfaces: GovTribe AI
Examples
Each call creates a fresh GovTribe AI project named govtribe_ai_project_name and links the new automation to it. Send one or more independent start triggers in start_nodes. Any one start node can run the same saved prompt.
Create a record-change monitor with a weekly backstop
This automation can run when the selected award changes OR on the weekly schedule. The record trigger watches only that exact award; the scheduled run gives the prompt a separate cadence for broader recompete research.
{
"tool": "Create_Automation",
"arguments": {
"govtribe_ai_project_name": "Recompete Watch",
"name": "Award change and recompete monitor",
"prompt": "Monitor award <award_govtribe_id> for modifications and lifecycle changes that affect recompete timing. On scheduled runs, also look for credible related follow-on signals and recommend only evidence-backed capture actions.",
"reasoning_level": "medium",
"on_completion_notify_user": "conditionally",
"completion_notification_instructions": "Email me only when a material award change or credible follow-on signal changes our capture timing or recommended action.",
"start_nodes": [
{
"trigger_type": "trigger-entity-activity",
"trigger_config": {
"target_govtribe_type": "federal_contract_award",
"target_govtribe_id": "<award_govtribe_id>"
}
},
{
"trigger_type": "trigger-schedule",
"trigger_config": {
"rrule": "RRULE:FREQ=WEEKLY;BYDAY=MO;BYHOUR=9;BYMINUTE=15",
"rrule_timezone": "America/New_York",
"jitter_policy": "standard"
}
}
]
}
}Create an automation from a saved search
Saved-search email and automation polling are independent. You can leave the saved search's frequency unchanged or set it to Never; either choice leaves the automation trigger active. The automation's completion email is a third, separate setting.
{
"tool": "Search_Saved_Searches",
"arguments": {
"query": "Healthcare IT recompetes",
"fields_to_return": [
"govtribe_id",
"name",
"frequency"
]
}
}{
"tool": "Create_Automation",
"arguments": {
"govtribe_ai_project_name": "Healthcare Signals",
"name": "Saved search result triage",
"prompt": "Review the new saved-search matches, rank them for our capture team, and call out any records that need immediate follow-up.",
"reasoning_level": "low",
"on_completion_notify_user": "conditionally",
"completion_notification_instructions": "Email me only when a new result looks like a priority pursuit. Keep the email short and start with the recommended action.",
"start_nodes": [
{
"trigger_type": "trigger-saved-search-results",
"trigger_config": {
"saved_search_model_id": "<saved_search_govtribe_id>",
"frequency": "daily"
}
}
]
}
}For MCP calls, frequency is required for every new saved-search trigger and accepts instant, daily, or weekly. Instant checks every 15 minutes. Choose the automation cadence explicitly; later changes to the saved search's email cadence are not copied to the automation. A new trigger begins listening when it is created and does not replay earlier matching results.
Create a stage-change automation for one pipeline stage
{
"tool": "Search_Pipelines",
"arguments": {
"query": "Defense Health pipeline",
"fields_to_return": [
"govtribe_id",
"name"
]
}
}{
"tool": "Search_Stages",
"arguments": {
"query": "Proposal",
"fields_to_return": [
"govtribe_id",
"name",
"pipeline"
]
}
}{
"tool": "Create_Automation",
"arguments": {
"govtribe_ai_project_name": "Proposal Changes",
"name": "Proposal stage entry briefing",
"prompt": "When a pursuit enters Proposal, explain what changed, summarize the likely work ahead, and recommend the next capture actions.",
"reasoning_level": "medium",
"start_nodes": [
{
"trigger_type": "trigger-updated-pursuit-stage",
"trigger_config": {
"pipeline_model_id": "<pipeline_govtribe_id>",
"stage_model_id": "<stage_govtribe_id>",
"stage_direction": "enter"
}
}
]
}
}Payload patterns
start_nodes must contain at least one item. GovTribe preserves its order and returns a stable start_node_id for every created item. The triggers are independent OR starts, not conditions that must all match.
| Trigger type | Matching trigger_config |
|---|---|
trigger-schedule | Required rrule; optional rrule_timezone, which defaults to America/New_York; optional jitter_policy with standard or none, defaulting to standard. Use COUNT=1 for one future occurrence. |
trigger-entity-activity | Required target_govtribe_type and target_govtribe_id for one exact supported government record. It fires after GovTribe records new activity for that record. |
trigger-saved-search-results | Required saved_search_model_id and independent frequency: instant, daily, or weekly. |
trigger-new-or-updated-pipeline | Optional pipeline_model_id; omit it to use any accessible pipeline. |
trigger-new-or-updated-pursuit | Optional pipeline_model_id; omit it to use pursuits from any accessible pipeline. |
trigger-updated-pursuit-stage | Required stage_direction with enter or exit; optional pipeline_model_id and stage_model_id. |
trigger-entity-activity accepts these target_govtribe_type values:
federal_contract_awardfederal_contract_idvfederal_contract_opportunityfederal_contract_vehicle_opportunityfederal_grant_opportunityfederal_grant_awardfederal_forecaststate_local_contract_opportunity
Do not send the retired trigger_type, trigger_config, trigger, or triggers request shapes. Create accepts only start_nodes for start-trigger definitions.
A minimal scheduled automation uses the same array contract:
{
"tool": "Create_Automation",
"arguments": {
"govtribe_ai_project_name": "Automation project name",
"name": "Daily review",
"prompt": "Review material changes and recommend the next action.",
"start_nodes": [
{
"trigger_type": "trigger-schedule",
"trigger_config": {
"rrule": "RRULE:FREQ=DAILY;BYHOUR=9;BYMINUTE=0",
"rrule_timezone": "America/New_York",
"jitter_policy": "none"
}
}
]
}
}Use standard for the existing forward-only load-spreading window. Use none when no deliberate jitter should be added. none does not promise exact execution: due schedules are discovered by a once-per-minute scan, and queue pickup, worker capacity, outages, and task duration can still delay the run.
To schedule a single future run, use a finite RRULE with COUNT=1:
{
"tool": "Create_Automation",
"arguments": {
"govtribe_ai_project_name": "One-time review",
"name": "Next 9:00 AM review",
"prompt": "Review the latest material changes and recommend the next action.",
"start_nodes": [
{
"trigger_type": "trigger-schedule",
"trigger_config": {
"rrule": "RRULE:FREQ=DAILY;COUNT=1;BYHOUR=9;BYMINUTE=0",
"rrule_timezone": "America/New_York"
}
}
]
}
}After its only occurrence is claimed, a schedule-only automation remains published and returns is_schedule_complete: true. Its schedule start node returns schedule_completed: true and next_run_at: null. Changing that start node's rrule or rrule_timezone rearms the schedule from a new starting point. Updating unrelated fields, pausing, or resuming preserves completion and does not replay the finished occurrence. In a mixed-trigger automation, the completed schedule no longer contributes a next-run time, but other event triggers remain active.
Use the flat completion notification fields when the automation should email the authenticated user after future runs:
| Field | Notes |
|---|---|
on_completion_notify_user | Optional. Use always, conditionally, or never. Omit it or set never when the automation should not send a completion email. |
completion_notification_instructions | Required with conditionally, optional with always, and ignored with never. Use it for the condition, formatting guidance, tone, or summary instructions. |
Do not send internal notification_node or notification_config payloads from MCP.
Use reasoning_level to control how much deliberate reasoning each automation run uses:
| Value | Good fit |
|---|---|
none | Mechanical scanning, extraction, or explicit rules with no meaningful judgment. |
low | Routine classification, summarization, and straightforward fit checks. |
medium | Multi-signal comparison, ambiguity resolution, or consequential recommendations. Recommended for most automations. |
high | Difficult multi-step analysis, competing evidence, or substantial planning. |
The field is optional on create and defaults to medium. Use none or low for clearly mechanical or routine work, and raise the level only when the task needs more judgment. The stable values do not identify a particular AI model; automated turns currently run on GPT-5.6 Terra.
Related articles
- Automation MCP response: Review the response shape returned by this tool.
- Automation data type: Understand the shared record fields and relationships used by this tool.
- GovTribe AI: Review the GovTribe AI surface where this tool can be called.
- Source identifiers and record matching: Use GovTribe IDs and source identifiers when passing records between tools.