The Agents tools give Claude Code direct control over the full lifecycle of every agent in your Paperclip company — from listing and inspecting existing agents, to creating, configuring, pausing, and permanently terminating them. They also cover org-chart visibility, heartbeat management, API key issuance, config-revision history and rollback, instructions file paths, and skills sync. Several of the most powerful operations (create, terminate, permissions update, key issuance, rollback, and instructions-path changes) are restricted to board-level API keys and will returnDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/bruhsb/paperclip-mcp/llms.txt
Use this file to discover all available pages before exploring further.
403 Forbidden when called with an agent key.
Auth levels at a glance. Most read-only and heartbeat tools accept any valid API key. Mutation tools that affect other agents require a board (human) API key set in
PAPERCLIP_API_KEY. An agent key is sufficient only for its own heartbeat (paperclip_invoke_heartbeat) and skills sync (paperclip_sync_agent_skills).paperclip_list_agents
List all agents in the current company with optional pagination.Max agents per page (1–100, default 50).
Number of agents to skip for pagination (default 0).
Output format:
markdown (default, human-readable) or json (structured).{ items: Agent[], total, count, offset, limit, has_more, next_offset }.
Use when: Resolving an agent name to a UUID before assigning an issue or invoking a heartbeat.Don’t use when: You already have the ID and need full config — use
paperclip_get_agent instead.
| HTTP Code | Behavior |
|---|---|
| 401 | Authentication failed — check PAPERCLIP_API_KEY |
| 403 | Permission denied — verify PAPERCLIP_COMPANY_ID is correct |
paperclip_get_agent
Get full details for a single agent by UUID.Agent UUID (e.g.
"agt_abc123").Output format:
markdown (default) or json.id, name, urlKey, role, title, status, capabilities, runtimeConfig, adapterConfig, permissions, budget.
Use when: Reading an agent’s current config before updating it or checking its heartbeat settings.Don’t use when: You need a list — use
paperclip_list_agents to discover IDs first.
| HTTP Code | Behavior |
|---|---|
| 401 | Authentication failed — check PAPERCLIP_API_KEY |
| 404 | Agent not found — verify ID with paperclip_list_agents |
paperclip_create_agent
Directly create a new agent in the company, bypassing the approval workflow.Company UUID to create the agent in.
Agent display name.
Agent role:
ceo | cto | cmo | cfo | engineer | designer | pm | qa | devops | researcher | general (default: general).Job title shown on the agent profile.
Icon for the Paperclip UI:
user | bot | brain | cpu | code | terminal | bug | shield | chart | magnifier | pen | book | rocket | gear | lightning | star | crown | diamond | flag | globe.UUID of the parent agent this agent reports to.
Free-text description of what this agent can do.
Skill names to install on the agent at creation.
Adapter type:
process | http | claude_local | codex_local | gemini_local | opencode_local | pi_local | cursor | openclaw_gateway | hermes_local (default: process).Adapter-specific configuration passed at agent launch.
Runtime configuration (heartbeat, concurrency, etc.).
Monthly budget cap in cents (0 = unlimited / subscription billing).
Governance permissions granted to this agent (e.g.
canCreateAgents).Arbitrary key-value metadata attached to the agent.
Don’t use when: You are an agent hiring a specialist — use
paperclip_create_agent_hire instead.
| HTTP Code | Behavior |
|---|---|
| 400 | Validation failure — check name is non-empty and enum values are valid |
| 401 | Authentication failed — check PAPERCLIP_API_KEY |
| 403 | Permission denied — this tool requires a board (human) API key |
paperclip_update_agent
Update an agent’s name, title, capabilities, status, heartbeat, runtime, or adapter config.Agent UUID.
New display name.
New job title.
Updated capability description.
New status (e.g.
active, paused).Runtime configuration. Supports nested
heartbeat object with fields: enabled (boolean), intervalSec (integer), cooldownSec (integer), maxConcurrentRuns (integer), wakeOnDemand (boolean).Adapter configuration. Supports fields:
model, cwd, maxTurnsPerRun, timeoutSec, graceSec, instructionsFilePath, instructionsRootPath, instructionsBundleMode, dangerouslySkipPermissions, paperclipSkillSync.desiredSkills.Don’t use when: You need to update permissions — use
paperclip_update_agent_permissions (board-only) instead.
| HTTP Code | Behavior |
|---|---|
| 400 | Validation failure — check field types and enum values |
| 401 | Authentication failed — check PAPERCLIP_API_KEY |
| 404 | Agent not found — verify ID with paperclip_list_agents |
paperclip_update_agent_permissions
Update an agent’s governance permissions.Agent UUID.
Allow this agent to assign tasks to other agents.
Allow this agent to create new agents (reserved for the CEO by governance policy).
{ agentId, canAssignTasks, canCreateAgents }.
Use when: Granting or revoking an agent’s ability to assign tasks after a board decision.Don’t use when: You need to update config fields — use
paperclip_update_agent instead.
| HTTP Code | Behavior |
|---|---|
| 400 | Both fields required — supply both even if one is unchanged |
| 401 | Authentication failed — check PAPERCLIP_API_KEY |
| 403 | Permission denied — this tool requires a board (human) API key |
| 404 | Agent not found — verify ID with paperclip_list_agents |
paperclip_pause_agent
Pause an agent, preventing it from starting new heartbeat runs. The current run, if any, completes before the pause takes effect.Agent UUID.
status: "paused".
Use when: Temporarily stopping a runaway or misconfigured agent during incident response.Don’t use when: You want a permanent stop — use
paperclip_terminate_agent (irreversible).
| HTTP Code | Behavior |
|---|---|
| 401 | Authentication failed — check PAPERCLIP_API_KEY |
| 404 | Agent not found — verify ID with paperclip_list_agents |
paperclip_resume_agent
Resume a paused agent, re-enabling scheduled and on-demand heartbeat runs.Agent UUID.
status: "active".
Use when: Re-enabling an agent after pausing it for maintenance or incident response.Don’t use when: The agent is not paused — check current status with
paperclip_get_agent first.
| HTTP Code | Behavior |
|---|---|
| 401 | Authentication failed — check PAPERCLIP_API_KEY |
| 404 | Agent not found — verify ID with paperclip_list_agents |
| 422 | Agent is not in a paused state — check status with paperclip_get_agent |
paperclip_invoke_heartbeat
Manually trigger an on-demand heartbeat run for an agent. An agent key is sufficient to invoke a heartbeat for the agent that key belongs to.Agent UUID.
{ runId, agentId, status, startedAt }.
Use when: Waking an agent to process an urgent task without waiting for its next scheduled heartbeat.Don’t use when: The agent has
heartbeat.enabled: false or wakeOnDemand: false — update config with paperclip_update_agent first.
| HTTP Code | Behavior |
|---|---|
| 401 | Authentication failed — check PAPERCLIP_API_KEY |
| 404 | Agent not found — verify ID with paperclip_list_agents |
| 409 | Agent is already running a heartbeat — wait for it to finish |
paperclip_wakeup_agent
Wake an agent with a full wakeup request, supporting custom invocation source, trigger detail, payload, and idempotency.Agent UUID to wake up.
Invocation source:
timer | assignment | on_demand (default) | automation.Trigger detail qualifier:
manual (default) | ping | callback | system.Human-readable reason for the wakeup.
Arbitrary JSON payload passed to the agent session.
Idempotency key — the same key within 60 seconds returns the existing run instead of creating a new one.
Start a new session even if one is already active.
{ id, agentId, companyId, status, invocationSource, triggerDetail, startedAt, createdAt } — or { status: "skipped" } if the agent is already running or paused.
Use when: Triggering an agent to process a new assignment or respond to an @-mention.Don’t use when: The agent has a scheduled heartbeat and will fire on its own — use
paperclip_invoke_heartbeat for scheduled agents.
| HTTP Code | Behavior |
|---|---|
| 401 | Authentication failed — check PAPERCLIP_API_KEY |
| 404 | Agent not found — verify ID with paperclip_list_agents |
| 409 | Agent already running — check the returned { status: "skipped" } response |
paperclip_terminate_agent
Permanently deactivate an agent.Agent UUID.
status: "terminated".
Use when: Decommissioning an agent that is no longer needed.Don’t use when: You want a temporary stop — use
paperclip_pause_agent instead (reversible).
| HTTP Code | Behavior |
|---|---|
| 401 | Authentication failed — check PAPERCLIP_API_KEY |
| 403 | Permission denied — this tool requires a board (human) API key |
| 404 | Agent not found — verify ID with paperclip_list_agents |
paperclip_create_agent_key
Issue a new long-lived API key for an agent.Agent UUID.
Key label for identification (e.g.
"prod-key").ISO 8601 expiry datetime (e.g.
"2027-01-01T00:00:00.000Z").{ id, name, key (plaintext, shown once), agentId, expiresAt }.
Use when: Provisioning a new API key after onboarding an agent or rotating a compromised key.Don’t use when: The agent already has a valid key — check existing keys via
paperclip_get_agent first.
| HTTP Code | Behavior |
|---|---|
| 401 | Authentication failed — check PAPERCLIP_API_KEY |
| 403 | Permission denied — this tool requires a board (human) API key |
| 404 | Agent not found — verify ID with paperclip_list_agents |
paperclip_list_agent_config_revisions
List the config revision history for an agent, most recent first.Agent UUID.
Max revisions per page (1–100, default 50).
Number of revisions to skip (default 0).
Output format:
markdown (default) or json.{ items: Revision[], total, count, offset, limit, has_more, next_offset }.
Use when: Auditing recent config changes or finding a revisionId to roll back to.Don’t use when: You want to perform the rollback — use
paperclip_rollback_agent_config with the target revisionId.
| HTTP Code | Behavior |
|---|---|
| 401 | Authentication failed — check PAPERCLIP_API_KEY |
| 404 | Agent not found — verify ID with paperclip_list_agents |
paperclip_rollback_agent_config
Roll back an agent’s config to a specific previous revision.Agent UUID.
Config revision UUID to restore.
Don’t use when: You want to make targeted edits — use
paperclip_update_agent instead.
| HTTP Code | Behavior |
|---|---|
| 401 | Authentication failed — check PAPERCLIP_API_KEY |
| 403 | Permission denied — this tool requires a board (human) API key |
| 404 | Agent or revision not found — list revisions with paperclip_list_agent_config_revisions |
paperclip_set_agent_instructions_path
Set or clear theAGENTS.md instructions file path for an agent.
Agent UUID.
Absolute path to the
AGENTS.md file, or null to clear.Adapter config key override for non-standard adapters.
instructionsFilePath value.
Use when: Onboarding a new agent by pointing it at its role-specific AGENTS.md.Don’t use when: You want to update other adapter settings — use
paperclip_update_agent for other adapterConfig fields.
| HTTP Code | Behavior |
|---|---|
| 401 | Authentication failed — check PAPERCLIP_API_KEY |
| 403 | Permission denied — this tool requires a board (human) API key |
| 404 | Agent not found — verify ID with paperclip_list_agents |
paperclip_get_org_chart
Get the full company agent hierarchy as a nested org chart.Output format:
markdown (default, renders as a tree) or json (structured nested object).{ id, name, role, reportsTo, directReports[] }.
Use when: Understanding the chain of command before escalating to a senior agent or CEO.Don’t use when: You need a flat agent list — use
paperclip_list_agents instead.
| HTTP Code | Behavior |
|---|---|
| 401 | Authentication failed — check PAPERCLIP_API_KEY |
| 403 | Permission denied — verify PAPERCLIP_COMPANY_ID is correct |
paperclip_sync_agent_skills
Sync an agent’s installed skills to exactly match a desired list, adding missing skills and removing any that are no longer wanted.Agent UUID.
List of skill names to sync onto the agent. Skills not in this list will be removed.
{ added: string[], removed: string[], current: string[] }.
Use when: Onboarding a new agent or updating its skill set after a role change.Don’t use when: You only want to inspect installed skills — use
paperclip_get_agent and check adapterConfig.paperclipSkillSync.
| HTTP Code | Behavior |
|---|---|
| 400 | Validation failure — check desiredSkills is a non-empty array of valid skill names |
| 401 | Authentication failed — check PAPERCLIP_API_KEY |
| 404 | Agent not found — verify ID with paperclip_list_agents |
paperclip_list_company_skills
List all skills installed at the company level that can be synced to agents.Max skills per page (1–100, default 50).
Number of skills to skip (default 0).
Output format:
markdown (default) or json.{ items: Skill[], total, count, offset, limit, has_more, next_offset }.
Use when: Checking which skills are available before syncing them to an agent.Don’t use when: You need an agent’s current skill set — use
paperclip_get_agent and check adapterConfig.
| HTTP Code | Behavior |
|---|---|
| 401 | Authentication failed — check PAPERCLIP_API_KEY |
| 403 | Permission denied — verify PAPERCLIP_COMPANY_ID is correct |