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

# Workflow APIs

> Map Squasher operational workflows to API, CLI, and MCP surfaces.

Use this page when an agent needs to choose the right public operation family before calling the API, CLI, or MCP Code Mode.

## Surface map

| Workflow                | API operation family                                   | CLI family                                                                   | MCP search                                                            |
| ----------------------- | ------------------------------------------------------ | ---------------------------------------------------------------------------- | --------------------------------------------------------------------- |
| Project discovery       | `projects.*`                                           | `squasher projects ...`                                                      | `search("projects")`                                                  |
| Error investigation     | `errors.*`                                             | `squasher errors ...`                                                        | `search("errors")`                                                    |
| Event and log search    | `events.*`, `logs.*`                                   | `squasher events ...`, `squasher logs ...`                                   | Use Query Guide; direct raw logs/events may be hidden from MCP        |
| Metrics and vitals      | `metrics.*`, `vitals.*`                                | `squasher metrics ...`, `squasher vitals ...`                                | `search("vitals")`; use API/CLI for raw metrics when hidden           |
| Traces and services     | `traces.*`                                             | `squasher traces ...`                                                        | `search("traces")`                                                    |
| Query discovery         | `queryGuide.*`, `schema.*`, `query.*`                  | `squasher query-guide ...`, `squasher query ...`                             | `search("queryGuide")`, `search("schema.get")`, `search("query.run")` |
| Operator summary        | `observabilitySummary.*`                               | `squasher observe ...`                                                       | `search("observabilitySummary")`                                      |
| Dashboards as code      | `dashboards.*`                                         | `squasher dashboards ...`                                                    | `search("dashboards")`                                                |
| Alerts                  | `alerts.*`                                             | `squasher alerts ...`                                                        | `search("alerts")`                                                    |
| Monitors                | `monitors.*`                                           | `squasher monitors ...`                                                      | `search("monitors")`                                                  |
| Incidents and ownership | `incidents.*`                                          | `squasher incidents ...`                                                     | `search("incidents")`                                                 |
| On-call                 | `onCall.*`                                             | `squasher on-call ...`                                                       | `search("onCall")`                                                    |
| Status pages            | `statusPages.*`                                        | `squasher status-pages ...`                                                  | `search("statusPages")`                                               |
| Subscribers             | `subscribers.*`                                        | `squasher subscribers ...`                                                   | Hidden from MCP; use API or CLI                                       |
| Replays                 | `replays.*`                                            | `squasher replays ...`                                                       | `search("replays.search")`, `search("replays.inspect")`               |
| Agent observations      | `agentObservations.*`, `ai.*`                          | `squasher agent-observations ...`, `squasher ai ...`                         | `search("agentObservations")`, `search("ai")`                         |
| Hosted agent runs       | `agentRuns.*`                                          | `squasher agent-runs ...`, `squasher fixes ...`                              | `search("agentRuns")`                                                 |
| Automations             | `automations.*`                                        | `squasher automations ...`                                                   | `search("automations")`                                               |
| Source maps             | `sourcemaps.*`                                         | `squasher sourcemaps ...`                                                    | Upload is API/CLI only; list/delete may be exposed                    |
| Provider context        | `providerCapabilities.*`, `github.*`, `integrations.*` | `squasher providers ...`, `squasher github ...`, `squasher integrations ...` | `search("providerCapabilities")`, `search("github")`                  |
| Log connectors          | `logConnectors.*`                                      | `squasher log-connectors ...`                                                | `search("logConnectors")`                                             |
| Billing                 | `billing.*`                                            | `squasher billing ...`                                                       | `search("billing")`                                                   |
| API keys                | `apiKeys.*`                                            | Use dashboard or API with care                                               | Hidden from MCP by default                                            |

## Agent rules

* Start with `projects.list` and Query Guide unless the project and operation are already known.
* Prefer read operations and compact inspect/summary endpoints before raw exports.
* Keep telemetry queries bounded with `from`, `to`, `limit`, service, environment, status, or id filters.
* Ask before write operations.
* Treat destructive, dangerous, key-returning, or credential-rotating operations as confirmation-required even when the API exposes them.
* Use API or CLI for operations intentionally hidden from MCP.

## MCP Code Mode

The hosted MCP server exposes `search` and `execute`. `search` returns exposed operation metadata, schemas, and generated examples. `execute` runs a small `squasher.request(...)` snippet for exposed operations.

```text theme={null}
Use Squasher MCP Code Mode. Search for the exact operation family first, inspect required path/query/body fields, then execute the smallest request that answers the question. Do not assume hidden operation families are available through MCP.
```

## Related docs

* [API reference](/api-reference/introduction)
* [CLI Reference](/integrations/cli-reference)
* [MCP](/integrations/mcp)
* [Agent DX](/agents)
