npm hatchet-mcpstdioMITupdated 14d ago
An MCP server that lets AI agents observe and operate Hatchet workflows — status, runs, logs, workers, and metrics, plus trigger / cancel / replay.
What can you do with hatchet mcp?
hatchet-mcp
An MCP server that lets AI agents observe and operate Hatchet workflows — status, runs, logs, workers, and metrics, plus trigger / cancel / replay.
Why: Hatchet has a great API but no MCP. This wraps it so agents (Claude Code / Desktop, etc.) can see and act on workflow state.
Install
Add this to your Claude Code / Claude Desktop MCP config:
{
"mcpServers": {
"hatchet": {
"command": "npx",
"args": ["-y", "hatchet-mcp"],
"env": { "HATCHET_CLIENT_TOKEN": "<your-hatchet-api-token>" }
}
}
}
Get the token from the Hatchet dashboard → API tokens. The token is a JWT that encodes the server URL and tenant, so it's the only required setting.
Configuration
| Variable | Required | Description |
|---|---|---|
HATCHET_CLIENT_TOKEN |
Yes | Hatchet API token (JWT). Encodes the server URL + tenant, so it's normally all you need. |
HATCHET_API_BASE |
No | Override the API base URL. Self-hosters can point this at any Hatchet instance. |
HATCHET_TENANT_ID |
No | Override the tenant id decoded from the token. |
Self-hosting? Set HATCHET_API_BASE to your own Hatchet instance and it works anywhere.
Tools
Observability (read-only)
| Tool | Description |
|---|---|
whoami |
Show the resolved Hatchet tenant + server URL and confirm the token works. |
list_workflows |
List workflow definitions for the tenant. |
list_runs |
List workflow runs (with an optional lookback window and filters). |
get_run |
Get the full detail of one workflow run — status, tasks, errors. |
get_run_logs |
Get log lines for a task by its external id. |
list_workers |
List workers and their status. |
get_queue_metrics |
Get task/queue metrics for the tenant (queue health). |
Actions (mutate live state)
| Tool | Description |
|---|---|
trigger_workflow |
Trigger a new workflow run by name with a JSON input payload. |
cancel_runs |
Cancel one or more runs/tasks by external id. |
replay_runs |
Replay/retry one or more runs/tasks by external id. |
Safety
The read tools (whoami, list_workflows, list_runs, get_run, get_run_logs, list_workers, get_queue_metrics) are non-destructive.
trigger_workflow, cancel_runs, and replay_runs mutate live state — their descriptions are prefixed MUTATES LIVE STATE so agents and users know they affect real runs.
The token grants full tenant access — treat it as a secret. Never commit it to source control.
Development
pnpm install
pnpm test # vitest
pnpm build # tsup -> dist/index.js
TypeScript / ESM, tested with vitest.
Status
v0.1.0 — all tools verified against Hatchet Cloud; works with self-hosted instances via HATCHET_API_BASE. trigger_workflow uses the stable /workflow-runs/trigger endpoint.
Install
Add hatchet mcp to your client. Pick the one you use.
claude mcp add hatchet-mcp -- npx -y hatchet-mcpcodex mcp add hatchet-mcp -- npx -y hatchet-mcpamp mcp add hatchet-mcp -- npx -y hatchet-mcp{
"mcpServers": {
"hatchet-mcp": {
"command": "npx",
"args": [
"-y",
"hatchet-mcp"
]
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"hatchet-mcp": {
"command": "npx",
"args": [
"-y",
"hatchet-mcp"
]
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
code --add-mcp '{"name":"hatchet-mcp","command":"npx","args":["-y","hatchet-mcp"]}'Or add the block manually to `.vscode/mcp.json` under `servers`.
{
"mcpServers": {
"hatchet-mcp": {
"command": "npx",
"args": [
"-y",
"hatchet-mcp"
]
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
{
"mcpServers": {
"hatchet-mcp": {
"command": "npx",
"args": [
"-y",
"hatchet-mcp"
]
}
}
}Add to `cline_mcp_settings.json` via the MCP Servers panel.
{
"mcpServers": {
"hatchet-mcp": {
"command": "npx",
"args": [
"-y",
"hatchet-mcp"
]
}
}
}Add to `~/.gemini/settings.json`.
{
"mcpServers": {
"hatchet-mcp": {
"type": "local",
"command": "npx",
"args": [
"-y",
"hatchet-mcp"
],
"tools": [
"*"
]
}
}
}Add to `~/.copilot/mcp-config.json`, or run `/mcp add` inside the CLI.
{
"context_servers": {
"hatchet-mcp": {
"command": {
"path": "npx",
"args": [
"-y",
"hatchet-mcp"
]
}
}
}
}Add to your Zed `settings.json`.
npx -y hatchet-mcpRun `goose configure`, choose **Add Extension → Command-line Extension**, and paste this command.
Score
39 / 100
Incomplete
- Documentation22/25
- Maintenance19/25
- Trust13/20
- Capability0/15
- Install experience12/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 7 days ago
- Has a release history
- Repository is not archived
- Licensed MIT
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 0 tool(s) documented
- Provides prompt templates
- Provides resources
- 12 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint — no local install
Version history
| Versions | Published |
|---|---|
| 0.1.1Latest | May 30, 2026 |