MCP server for Agent Shaker - an AI agent coordination system with task tracking, project management, and A2A protocol support
Agent Shaker provides 14 tools with basic schemas and descriptions, but falls short of production quality. All tools have descriptions (10-100 chars, mostly 50-80), and input schemas are present with type definitions. However, descriptions are generic and lack LLM-optimized guidance on WHEN to use each tool or HOW to chain them. Parameter descriptions exist but are minimal (e.g., 'Task title' for title param). No output schemas documented. Error handling is absent, no guidance on retryability, user-fixable errors, or recovery paths. Tool composition is weak: list_my_tasks, list_agents, list_projects, and list_contexts lack pagination parameters (limit/offset/cursor), risking context window exhaustion. No enum constraints on status/priority fields despite accepting only specific values. Missing idempotency hints on write operations (create_task, update_task_status, send_message, create_context, record_heartbeat). No tool annotations (readOnlyHint, destructiveHint, idempotentHint). Naming is verb-first and clear, but parameter naming lacks type suffixes (e.g., 'assigned_to' should be 'agent_id' for clarity). Overall: functional but not LLM-optimized.
Create a new context/artifact
Create a new task in the current project
Get details about a specific context/artifact
Get dashboard statistics including task counts, agent status, and project overview
Get the current agent's identity and assigned project based on MCP connection configuration
Get details about the current agent's assigned project
Get details about a specific task
List all agents in the system
List tools lack pagination parameters (limit/offset/cursor). No documented result limits or total counts. Risks context window exhaustion when returning large datasets.
No output schemas documented for any tool. LLMs cannot plan downstream calls or extract required fields. Breaks tool chaining.
Status and priority parameters accept free-form strings instead of enums. No constraint validation. LLMs will hallucinate invalid values like 'urgent' or 'blocked'.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 67 | 2026-07-28+ | v2 |
List all available contexts/artifacts
List all tasks assigned to the current agent
List all projects in the system
Record a heartbeat from an agent to indicate it is alive
Send a message to an agent via A2A protocol
Update the status of a task
No error handling guidance. Tools do not indicate retryability, user-fixable errors, or recovery paths. LLMs cannot self-correct on failures.
Descriptions are generic and lack LLM-optimized guidance. No WHEN/WHY context. E.g., 'Get details about a specific task' does not explain when to call get_task vs list_my_tasks.