Async jobs & triggers tools
MCP reference for async simulation jobs and real-time triggers — submit and poll long-running jobs, test webhooks, and register conditions that auto-run simulations.
These tools cover two related lanes of the Algenta MCP surface: async jobs for long-running Monte Carlo work that outlives a single request, and triggers that watch a data source and auto-run a simulation when a threshold is crossed. Every tool listed here maps one-to-one to an authenticated Algenta API endpoint, so an MCP client (Claude Desktop, Cursor, or a Streamable HTTP agent) and a raw curl call reach the same behavior.
For installing and connecting the MCP server itself, see MCP server.
Async job tools
Use jobs when a simulation is too large to run inline (for example n_simulations in the millions) or when you want a webhook on completion. Submit once, then poll to a terminal state.
submit_job
Submit a long-running async simulation job and return a job_id.
variables (required, array of {name, low, high}), objective (default maximize), n_simulations (default 1000000), callback_url
list_jobs
List async simulation jobs with pagination and optional status filter.
page (default 1), limit (default 25), status
get_job_status
Fetch the latest status for one job by id.
job_id (required)
poll_job
Wait for a job to reach a terminal state, returning the result on completion or the terminal status on failure, cancellation, or timeout.
job_id (required), timeout_seconds (default 30), poll_interval_seconds (default 2)
get_job_result
Fetch the completed result payload for one job by id.
job_id (required)
cancel_job
Cancel a queued or running job by id.
job_id (required)
test_webhook_delivery
Send a test webhook payload to a callback URL and return the delivery result.
callback_url (required)
Trigger tools
Triggers watch a data source for a threshold condition. When the condition is met, the engine auto-runs the attached simulation template and optionally POSTs the result — and, with auto_execute, the decision plan — to a webhook.
register_trigger
Register a real-time trigger with a threshold condition and a simulation template to run when it fires.
name (required), condition (required: source_id, metric_hint, threshold, direction; optional aggregation), simulation_template (required), webhook_url, execution_webhook_url, auto_execute, description
list_triggers
List registered triggers with status, last-checked time, and last-fired summary.
status (active/paused/all), page, limit
fire_trigger
Manually evaluate a trigger and run its template now.
trigger_id (required), force (default false)
pause_trigger
Pause or resume a trigger without deleting it.
trigger_id (required), paused (default true)
delete_trigger
Remove a trigger so it no longer fires automatically.
trigger_id (required)
HTTP mapping
Because each tool wraps a single endpoint, you can reproduce any call against the raw API to verify behavior.
submit_job
POST
/v1/jobs
list_jobs
GET
/v1/jobs/list
get_job_status
GET
/v1/jobs/{job_id}
poll_job
GET
/v1/jobs/{job_id} then /v1/jobs/{job_id}/result
get_job_result
GET
/v1/jobs/{job_id}/result
cancel_job
POST
/v1/jobs/{job_id}/cancel
test_webhook_delivery
POST
/v1/webhooks/test
register_trigger
POST
/v1/triggers
list_triggers
GET
/v1/triggers
fire_trigger
POST
/v1/triggers/{trigger_id}/fire
pause_trigger
PATCH
/v1/triggers/{trigger_id}/pause
delete_trigger
DELETE
/v1/triggers/{trigger_id}
Worked examples
Submit a job, then poll it
First submit the job. The tool returns a job_id and a queued status.
Then wait for it with poll_job. On completion it returns both the final job record and the result payload.
If the job is still running when timeout_seconds elapses, poll_job returns { "terminal": false, "timed_out": true, ... } — call it again to keep waiting.
Register a trigger and fire it manually
Register a trigger that watches monthly revenue and runs a simulation template when it drops below a threshold.
Test it immediately with fire_trigger and force: true, which runs the template even if the condition is not currently met.
Related references
Run an async jobAgent run toolsMCP serverLast updated
Was this helpful?