> ## Documentation Index
> Fetch the complete documentation index at: https://docs.factorize.sh/llms.txt
> Use this file to discover all available pages before exploring further.

# MCP tools

> Every tool exposed at /mcp.

| Tool                                | Scope       | Input                                                    |
| ----------------------------------- | ----------- | -------------------------------------------------------- |
| `list_exe_connections`              | flows:read  | `{}`                                                     |
| `list_github_installations`         | flows:read  | `{}`                                                     |
| `list_execution_targets`            | flows:read  | `{}`                                                     |
| `list_cloudflare_tail_integrations` | flows:read  | `{}`                                                     |
| `list_jobs`                         | flows:read  | `{}`                                                     |
| `get_job`                           | flows:read  | `{jobId}`                                                |
| `list_runs`                         | runs:read   | `jobId?`, `state?`, `contextQuery?`, `limit?`, `cursor?` |
| `get_run`                           | runs:read   | `{runId}`                                                |
| `list_job_webhook_activity`         | runs:read   | `{jobId, limit?}`                                        |
| `create_job`                        | flows:write | Job create object                                        |
| `update_job`                        | flows:write | Job object plus `jobId`                                  |
| `delete_job`                        | flows:write | `{jobId}`                                                |
| `enable_job` / `disable_job`        | flows:write | `{jobId}`                                                |
| `test_job_webhook_handler`          | flows:write | `{handlerCode,payload}`                                  |
| `invoke_job`                        | runs:write  | `{jobId,name?,prompt?,data?,idempotencyKey?}`            |
| `stop_run`                          | runs:write  | `{runId}`                                                |

`list_runs` uses case-insensitive literal substring matching for `contextQuery`; matching rows contain only a bounded excerpt. `get_run` contains the complete context and the reusable `invocation.idempotency_key`, while its internal `claim_key` must not be reused.
