Planning System MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| API_URL | Yes | Planning System API URL (e.g., https://api.agentplanner.io or http://localhost:3000 for local development) | |
| NODE_ENV | No | Environment (development/production) | production |
| USER_API_TOKEN | Yes | Authentication token for the Planning System API | |
| MCP_SERVER_NAME | No | Server name | planning-system-mcp |
| MCP_SERVER_VERSION | No | Server version | 0.2.0 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| briefingA | Mission control state in one call. Returns goal health summary, pending decisions, my tasks, recent activity, and a top recommendation. Use this as the single read for Cowork live artifacts and the autopilot's first call. |
| task_contextA | Get progressive context for a task. Depth: 1 (task only), 2 (+ neighborhood), 3 (+ knowledge), 4 (+ extended plan/goals/transitive deps). For RPI implement tasks, automatically includes research+plan outputs from the chain. |
| goal_stateA | Comprehensive single-goal read: details, quality assessment, progress, bottlenecks, knowledge gaps, pending decisions, recent activity. Replaces get_goal + goal_path + goal_progress + goal_knowledge_gaps + assess_goal_quality. |
| recall_knowledgeA | Universal knowledge graph query. Returns facts, entities, recent episodes, and contradictions in one shape. Use result_kind to control payload size. Replaces recall_knowledge legacy + find_entities + get_recent_episodes + check_contradictions. |
| list_plansA | List plans with optional filters by status, visibility, or text query. Returns id, title, status, visibility, last update, and link counts so you can pick a plan to operate on without round-tripping briefing. |
| searchB | Text search across plans, nodes, and content. Use for finding entities by title or fragment. |
| plan_analysisC | Advanced plan reads: impact analysis (delay/block/remove), critical path, bottleneck list, or coherence check. |
| list_goalsB | List goals with health rollup. Returns aggregate counts (on_track/at_risk/stale) plus per-goal summary. |
| update_goalA | Atomic goal update. Subsumes update_goal + link_plan_to_goal + unlink_plan_from_goal + add_achiever + remove_achiever. All changes apply together. |
| create_goalA | Create a new top-level goal (no parent). Use this when a human asks you to set up a goal — agents create goals directly, no UI step required. For a goal that contributes to an existing one, use derive_subgoal instead. Defaults to status='active' (live immediately); pass status='draft' only if you want it to sit in the pending queue for review. Lands in the user's active organization's default workspace unless workspace_id is given. |
| derive_subgoalA | Create a sub-goal under an existing parent goal (parent_goal_id required). For a new top-level goal, use create_goal instead. Defaults to status='active'; pass status='draft' for autonomous loops so a human can review before promotion. Drafts surface in the dashboard pending queue. |
| queue_decisionA | Queue a decision for human review. Writes to the real decisions table (not the knowledge graph). Replaces the autopilot pattern of calling add_learning with entry_type=decision and a 'DECISION NEEDED:' title prefix. Resolves via resolve_decision. |
| resolve_decisionA | Resolve a pending decision. action is 'approve', 'defer', or 'reject'. Use this from Cowork artifact buttons or after a human responds in chat. |
| update_taskA | Atomic task state transition. Updates status, optionally appends a log entry, optionally releases the claim. Idempotent on identical inputs. Replaces quick_status + add_log + release_task fan-out. |
| claim_next_taskA | Pick the next task in scope, claim it, and return its context — all in one call. Resolution order: (1) resume any in_progress task, (2) suggest_next_tasks, (3) my_tasks fallback. Pass fresh:true to skip the resume step. |
| release_taskA | Release a claimed task without changing status. Use for explicit handoff or abandonment. |
| add_learningA | Record a knowledge episode. Use after research, on decisions, or when discovering important context. Graphiti extracts entities/relationships automatically. Surfaces coherence_warnings if the new content contradicts existing facts. |
| form_intentionA | Create a plan that achieves a goal, including an initial phase/task tree, in one call. Declare execution order inline: give nodes a |
| extend_intentionA | Add children under an existing phase or task. Use when an agent has implicit authority to decompose work (e.g., a parent task they have claimed). For high-stakes structural proposals, use queue_decision with proposed_subtasks instead. Defaults to status='active'. |
| propose_research_chainA | Create a Research → Plan → Implement triple under an existing parent task or phase. The Research task feeds Plan; Plan feeds Implement (via 'blocks' dependency edges). Use when tackling work with significant unknowns. Defaults to status='active'. |
| link_intentionsA | Create a dependency edge between two existing tasks. Use to express discovered ordering constraints (e.g., agent realizes task B requires task A's output). Server rejects cycles. Both tasks must be in the same plan. |
| unlink_intentionsC | Remove a dependency edge by id. |
| update_planA | Edit any plan property atomically: title, description, status, visibility, GitHub linkage, metadata. Use status='archived' to soft-delete (recoverable via status='active' + restore=true). Hard delete stays REST-only with admin auth. |
| update_nodeA | Edit any node property atomically: title, description, node_type, task_mode, agent_instructions, metadata. Status transitions belong on update_task (which handles claim/log side effects). Rejects node_type changes when the node has children. |
| move_nodeA | Reparent a node within the same plan. Cycle-safe (server rejects moves that would create a tree cycle). Optional position sets the order_index among siblings. |
| delete_planA | Soft-delete a plan by setting status='archived'. Recoverable via update_plan({status: 'active', restore: true}). Hard delete is not agent-callable — use REST + admin token if absolutely needed. |
| delete_nodeA | Soft-delete a node by setting status='archived'. Cascades to children by default. Recoverable via update_task({status: 'not_started'}). |
| share_planA | Atomically change a plan's visibility and add/remove collaborators in one call. Collaborators are specified by user_id (email-based invites stay UI-only for now). Caller must be plan owner or admin. |
| invite_memberA | Add a user to an organization by user_id or email. Caller must be org owner or admin. If email is provided and the user doesn't exist, the API returns 404 (email-invite flow stays UI-only). |
| update_member_roleA | Change a member's role within an organization. Caller must be org owner. Server rejects demoting the last admin. |
| remove_memberA | Remove a member from an organization. Caller must be org owner or admin (admins cannot remove other admins). Server rejects removing the org owner. |
| get_startedA | Onboarding for new agents. Returns the BDI tool surface map and recommended workflows: mission control loop (Cowork), single-task session (Code/CLI), multi-agent claiming (OpenClaw). |
| list_workspacesA | List workspaces in an organization. A workspace is a folder that owns goals + plans. Returns archived workspaces only when include_archived=true. |
| create_workspaceA | Create a new workspace inside an organization. Returns the new workspace row. The slug is auto-generated from the title and de-duplicated within the org. |
| list_blueprintsA | List blueprints visible to the user (owned + public/unlisted). Filter by scope ('plan' or 'workspace'), visibility, or owner_only=true. |
| fork_blueprintA | Fork a plan-scope blueprint into a target workspace. Creates a new plan inside that workspace with the blueprint's structure (nodes, dependencies, agent_instructions). All node statuses reset to 'not_started'. The new plan's forked_from_blueprint_id records lineage. |
| save_as_blueprintA | Snapshot a live plan as a new plan-scope blueprint. Captures structure, agent_instructions, and dependencies. Excludes run-state (statuses, claims, knowledge episodes, logs, decisions, agent assignments). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/TAgents/agent-planner-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server