# mark_offline_agents

Scan all active/paused agents and mark those whose last heartbeat exceeds the offline threshold (30 min) as OFFLINE. Cancels their running assignments. Designed to be called periodically.

Agent View of the PolicyLayer registry record for `mark_offline_agents`. HTML page: https://policylayer.com/tools/todo-for-ai-todo-for-ai-mcp/mark-offline-agents

## Facts

- Tool: `mark_offline_agents`
- Server: Todo for AI MCP Server (`todo-for-ai/todo-for-ai-mcp`) — https://policylayer.com/tools/todo-for-ai-todo-for-ai-mcp.md
- Homepage: https://github.com/todo-for-ai/todo-for-ai-mcp
- Risk category: Write (Medium risk)
- Registry record: grade F, identity unverified
- Server rate-limited: no
- Parameters: 0
- Recommended policy verdict: Rate-limited

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "mark_offline_agents",
    "arguments": {}
  }
}
```

## Why mark_offline_agents is rated Medium

An AI agent can call mark_offline_agents faster than any human can review: one bad instruction and it creates or modifies resources in Todo for AI MCP Server by the hundred, each call as confident as the last.

## Use case

AI agents use mark_offline_agents to create or update resources in Todo for AI MCP Server, usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your Todo for AI MCP Server environment.

## Recommended policy (PolicyLayer)

Verdict: **Rate-limited**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches Todo for AI MCP Server:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "mark_offline_agents": {
      "limits": [
        {
          "counter": "mark_offline_agents_rate",
          "window": "minute",
          "max": 30,
          "scope": "grant"
        }
      ]
    }
  }
}
```

## Other tools on Todo for AI MCP Server (243)

- `cancel_workflow_run` — Destructive — https://policylayer.com/tools/todo-for-ai-todo-for-ai-mcp/cancel-workflow-run.md
- `clear_step_runtime_override` — Destructive — https://policylayer.com/tools/todo-for-ai-todo-for-ai-mcp/clear-step-runtime-override.md
- `delete_agent_experience` — Destructive — https://policylayer.com/tools/todo-for-ai-todo-for-ai-mcp/delete-agent-experience.md
- `delete_collaboration_template` — Destructive — https://policylayer.com/tools/todo-for-ai-todo-for-ai-mcp/delete-collaboration-template.md
- `delete_knowledge_entry` — Destructive — https://policylayer.com/tools/todo-for-ai-todo-for-ai-mcp/delete-knowledge-entry.md
- `delete_sandbox` — Destructive — https://policylayer.com/tools/todo-for-ai-todo-for-ai-mcp/delete-sandbox.md
- `delete_shared_context` — Destructive — https://policylayer.com/tools/todo-for-ai-todo-for-ai-mcp/delete-shared-context.md
- `delete_workflow` — Destructive — https://policylayer.com/tools/todo-for-ai-todo-for-ai-mcp/delete-workflow.md
- `delete_workflow_trigger` — Destructive — https://policylayer.com/tools/todo-for-ai-todo-for-ai-mcp/delete-workflow-trigger.md
- `revoke_cross_project_agent` — Destructive — https://policylayer.com/tools/todo-for-ai-todo-for-ai-mcp/revoke-cross-project-agent.md
- `revoke_sandbox_execution` — Destructive — https://policylayer.com/tools/todo-for-ai-todo-for-ai-mcp/revoke-sandbox-execution.md
- `append_run_logs` — Execute — https://policylayer.com/tools/todo-for-ai-todo-for-ai-mcp/append-run-logs.md
- `escalate_overdue_tasks` — Execute — https://policylayer.com/tools/todo-for-ai-todo-for-ai-mcp/escalate-overdue-tasks.md
- `handoff_task` — Execute — https://policylayer.com/tools/todo-for-ai-todo-for-ai-mcp/handoff-task.md
- `launch_workflow` — Execute — https://policylayer.com/tools/todo-for-ai-todo-for-ai-mcp/launch-workflow.md
- `pause_workflow_run` — Execute — https://policylayer.com/tools/todo-for-ai-todo-for-ai-mcp/pause-workflow-run.md
- `retry_workflow_run` — Execute — https://policylayer.com/tools/todo-for-ai-todo-for-ai-mcp/retry-workflow-run.md
- `start_sandbox_execution` — Execute — https://policylayer.com/tools/todo-for-ai-todo-for-ai-mcp/start-sandbox-execution.md
- `acknowledge_conflict` — Read — https://policylayer.com/tools/todo-for-ai-todo-for-ai-mcp/acknowledge-conflict.md
- `authorize_cross_project_agent` — Read — https://policylayer.com/tools/todo-for-ai-todo-for-ai-mcp/authorize-cross-project-agent.md
- `auto_extract_experiences` — Read — https://policylayer.com/tools/todo-for-ai-todo-for-ai-mcp/auto-extract-experiences.md
- `auto_extract_knowledge` — Read — https://policylayer.com/tools/todo-for-ai-todo-for-ai-mcp/auto-extract-knowledge.md
- `bind_agent_sandbox` — Read — https://policylayer.com/tools/todo-for-ai-todo-for-ai-mcp/bind-agent-sandbox.md
- `check_sandbox_action` — Read — https://policylayer.com/tools/todo-for-ai-todo-for-ai-mcp/check-sandbox-action.md
- `claim_agent_task` — Read — https://policylayer.com/tools/todo-for-ai-todo-for-ai-mcp/claim-agent-task.md
- `claim_cross_project_task` — Read — https://policylayer.com/tools/todo-for-ai-todo-for-ai-mcp/claim-cross-project-task.md
- `collaboration_graph` — Read — https://policylayer.com/tools/todo-for-ai-todo-for-ai-mcp/collaboration-graph.md
- `collaboration_metrics` — Read — https://policylayer.com/tools/todo-for-ai-todo-for-ai-mcp/collaboration-metrics.md
- `decay_all_experiences` — Read — https://policylayer.com/tools/todo-for-ai-todo-for-ai-mcp/decay-all-experiences.md
- `diff_workflow_versions` — Read — https://policylayer.com/tools/todo-for-ai-todo-for-ai-mcp/diff-workflow-versions.md
- …and 213 more: https://policylayer.com/tools/todo-for-ai-todo-for-ai-mcp.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=todo-for-ai-todo-for-ai-mcp · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/todo-for-ai-todo-for-ai-mcp
