Discover Tools
curl -sS https://agenticworkers.com/api/agw-mcp \
-H "Cookie: next-auth.session-token=<session-cookie>"Agentic Workers MCP
This route documents the complete MCP functionality currently available in Agentic Workers. It is built for developers and AI agents that need a stable, machine-readable contract for discovery, tool execution, and MCP server onboarding.
https://agenticworkers.com/api/agw-mcp.initialize, tools/list, and tools/call over the existing HTTP endpoint./api/mcp-servers.agw_add_mcp_server.| Method | Path | Purpose | Response |
|---|---|---|---|
GET | /api/agw-mcp | Discover all Agentic Workers MCP tools | { tools: McpToolDefinition[] } |
POST | /api/agw-mcp | MCP JSON-RPC over HTTP: initialize, tools/list, tools/call | JSON-RPC 2.0 response |
POST | /api/mcp-servers | Validate a third-party MCP server before attaching it to an agent | { label, url, tools, validated: true } | { error, details } |
Authentication: external clients should send Authorization: Bearer <agw_op_live_token>. Logged-in browser clients can continue to use their Agentic Workers session cookie.
curl -sS https://agenticworkers.com/api/agw-mcp \
-H "Cookie: next-auth.session-token=<session-cookie>"curl -sS https://agenticworkers.com/api/agw-mcp \
-X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <agw_op_live_token>" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "initialize",
"params": {
"protocolVersion": "2024-11-05",
"capabilities": {},
"clientInfo": { "name": "example-client", "version": "1.0.0" }
}
}'curl -sS https://agenticworkers.com/api/agw-mcp \
-X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <agw_op_live_token>" \
-d '{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/list"
}'curl -sS https://agenticworkers.com/api/agw-mcp \
-X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <agw_op_live_token>" \
-d '{
"jsonrpc": "2.0",
"id": 3,
"method": "tools/call",
"params": {
"name": "agw_create_agent",
"arguments": {
"name": "Content Ops Worker",
"instructions": "Create weekly content plans from analytics data",
"description": "Automates planning and drafting",
"model": "auto",
"tools": ["groq_web_search"]
}
}
}'curl -sS https://agenticworkers.com/api/mcp-servers \
-X POST \
-H "Content-Type: application/json" \
-H "Cookie: next-auth.session-token=<session-cookie>" \
-d '{
"label": "My MCP Server",
"url": "https://example-mcp-server.com"
}'curl -sS https://agenticworkers.com/api/agw-mcp \
-X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <agw_op_live_token>" \
-d '{
"jsonrpc": "2.0",
"id": 4,
"method": "tools/call",
"params": {
"name": "agw_add_mcp_server",
"arguments": {
"agentId": "<agent-id>",
"label": "My MCP Server",
"url": "https://example-mcp-server.com",
"allowedTools": []
}
}
}'The catalog below is generated from the same source used by /api/agw-mcp tool discovery, so docs and runtime stay aligned.
Create, update, remove, and coordinate agents.
agw_list_agentsList all agents{}agw_create_agentCreate a new agent{
"name": {
"type": "string"
},
"humanName": {
"type": "string"
},
"instructions": {
"type": "string"
},
"description": {
"type": "string"
},
"model": {
"type": "string"
},
"tools": {
"type": "array"
}
}agw_update_agentUpdate an agent{
"agentId": {
"type": "string"
},
"updates": {
"type": "object"
}
}agw_delete_agentDelete an agent{
"agentId": {
"type": "string"
}
}agw_add_teammateAdd teammate to agent{
"agentId": {
"type": "string"
},
"teammateAgentId": {
"type": "string"
}
}List, add, and remove long-term agent memories.
agw_list_memoriesList agent-scope memories for a specific agent (requires agentId). For USER-scope memories (per-user, cross-agent), use the in-chat agw_list_memories tool with scope="user".{
"agentId": {
"type": "string"
}
}agw_add_memoryAdd an agent-scope memory to the specified agent. Keep entries ≤15 words.{
"agentId": {
"type": "string"
},
"text": {
"type": "string"
}
}agw_remove_memoryRemove an agent-scope memory by memoryId. Call agw_list_memories first to get the memoryId.{
"agentId": {
"type": "string"
},
"memoryId": {
"type": "string"
}
}Automate recurring runs with cron expressions.
agw_list_scheduled_jobsList scheduled jobs{}agw_create_scheduled_jobCreate scheduled job. Supports two modes: triggerType "cron" for time-based (provide cronExpression), or "composio_trigger" for event-based (provide composioTriggerSlug). For triggers, check agw_list_triggers config field and pass required values as composioTriggerConfig. Times in UTC.{
"name": {
"type": "string"
},
"triggerType": {
"type": "string"
},
"cronExpression": {
"type": "string"
},
"composioTriggerSlug": {
"type": "string"
},
"composioToolkitSlug": {
"type": "string"
},
"composioTriggerConfig": {
"type": "object"
},
"agentId": {
"type": "string"
},
"promptTemplateId": {
"type": "string"
},
"variables": {
"type": "object"
}
}agw_update_scheduled_jobUpdate scheduled job. Updates can include name, cronExpression, agentId, promptTemplateId, variables, or active.{
"jobId": {
"type": "string"
},
"updates": {
"type": "object"
}
}agw_delete_scheduled_jobDelete scheduled job{
"jobId": {
"type": "string"
}
}Discover integrations, connect them, and attach tools/MCP servers to agents.
agw_list_available_toolsList available tools{}agw_add_toolAdd tool to agent{
"agentId": {
"type": "string"
},
"toolName": {
"type": "string"
}
}agw_remove_toolRemove tool from agent{
"agentId": {
"type": "string"
},
"toolName": {
"type": "string"
}
}agw_add_mcp_serverAdd MCP server to agent{
"agentId": {
"type": "string"
},
"label": {
"type": "string"
},
"url": {
"type": "string"
}
}agw_remove_mcp_serverRemove MCP server{
"agentId": {
"type": "string"
},
"serverUrl": {
"type": "string"
}
}Deploy agents and manage their runtime settings.
agw_list_deploymentsList deployments{}agw_deploy_agentDeploy an agent{
"agentId": {
"type": "string"
}
}agw_update_deploymentUpdate deployment{
"deploymentId": {
"type": "string"
},
"updates": {
"type": "object"
}
}AI agents can read the JSON script with id agw-mcp-machine-readable-spec directly from this page.
{
"specName": "agentic-workers-mcp-http",
"version": "2026-03-04",
"docsUrl": "https://agenticworkers.com/MCP",
"authentication": {
"type": "bearer-token-or-next-auth-session-cookie",
"notes": [
"External MCP clients should use Authorization: Bearer <agw_op_live_token> generated from the org CLI page.",
"Browser/session clients may continue to use an authenticated Agentic Workers session cookie.",
"Cookie key can vary by environment (example: next-auth.session-token or __Secure-next-auth.session-token)."
]
},
"endpoints": {
"discovery": {
"method": "GET",
"path": "/api/agw-mcp",
"response": "{ tools: McpToolDefinition[] }"
},
"execute": {
"method": "POST",
"path": "/api/agw-mcp",
"body": "JSON-RPC 2.0 request: initialize | tools/list | tools/call",
"response": "JSON-RPC 2.0 response"
},
"validateMcpServer": {
"method": "POST",
"path": "/api/mcp-servers",
"body": "{ label: string, url: string }",
"response": "{ label, url, tools, validated: true } | { error, details }"
}
},
"protocolVersion": "2024-11-05",
"jsonRpcMethods": [
"initialize",
"notifications/initialized",
"ping",
"tools/list",
"tools/call"
],
"tools": [
{
"name": "agw_list_agents",
"description": "List all agents",
"parameters": {}
},
{
"name": "agw_create_agent",
"description": "Create a new agent",
"parameters": {
"name": {
"type": "string"
},
"humanName": {
"type": "string"
},
"instructions": {
"type": "string"
},
"description": {
"type": "string"
},
"model": {
"type": "string"
},
"tools": {
"type": "array"
}
}
},
{
"name": "agw_update_agent",
"description": "Update an agent",
"parameters": {
"agentId": {
"type": "string"
},
"updates": {
"type": "object"
}
}
},
{
"name": "agw_delete_agent",
"description": "Delete an agent",
"parameters": {
"agentId": {
"type": "string"
}
}
},
{
"name": "agw_add_teammate",
"description": "Add teammate to agent",
"parameters": {
"agentId": {
"type": "string"
},
"teammateAgentId": {
"type": "string"
}
}
},
{
"name": "agw_list_memories",
"description": "List agent-scope memories for a specific agent (requires agentId). For USER-scope memories (per-user, cross-agent), use the in-chat agw_list_memories tool with scope=\"user\".",
"parameters": {
"agentId": {
"type": "string"
}
}
},
{
"name": "agw_add_memory",
"description": "Add an agent-scope memory to the specified agent. Keep entries ≤15 words.",
"parameters": {
"agentId": {
"type": "string"
},
"text": {
"type": "string"
}
}
},
{
"name": "agw_update_memory",
"description": "Update an existing agent-scope memory by memoryId. Call agw_list_memories first to get the memoryId.",
"parameters": {
"agentId": {
"type": "string"
},
"memoryId": {
"type": "string"
},
"text": {
"type": "string"
}
}
},
{
"name": "agw_remove_memory",
"description": "Remove an agent-scope memory by memoryId. Call agw_list_memories first to get the memoryId.",
"parameters": {
"agentId": {
"type": "string"
},
"memoryId": {
"type": "string"
}
}
},
{
"name": "agw_list_scheduled_jobs",
"description": "List scheduled jobs",
"parameters": {}
},
{
"name": "agw_create_scheduled_job",
"description": "Create scheduled job. Supports two modes: triggerType \"cron\" for time-based (provide cronExpression), or \"composio_trigger\" for event-based (provide composioTriggerSlug). For triggers, check agw_list_triggers config field and pass required values as composioTriggerConfig. Times in UTC.",
"parameters": {
"name": {
"type": "string"
},
"triggerType": {
"type": "string"
},
"cronExpression": {
"type": "string"
},
"composioTriggerSlug": {
"type": "string"
},
"composioToolkitSlug": {
"type": "string"
},
"composioTriggerConfig": {
"type": "object"
},
"agentId": {
"type": "string"
},
"promptTemplateId": {
"type": "string"
},
"variables": {
"type": "object"
}
}
},
{
"name": "agw_update_scheduled_job",
"description": "Update scheduled job. Updates can include name, cronExpression, agentId, promptTemplateId, variables, or active.",
"parameters": {
"jobId": {
"type": "string"
},
"updates": {
"type": "object"
}
}
},
{
"name": "agw_delete_scheduled_job",
"description": "Delete scheduled job",
"parameters": {
"jobId": {
"type": "string"
}
}
},
{
"name": "agw_list_prompt_templates",
"description": "List prompt templates",
"parameters": {
"limit": {
"type": "number"
}
}
},
{
"name": "agw_get_prompt_template",
"description": "Get prompt template details including extracted variables",
"parameters": {
"promptTemplateId": {
"type": "string"
}
}
},
{
"name": "agw_create_prompt_template",
"description": "Create prompt template. Use [VariableName] placeholders in content for dynamic values — they are auto-extracted as template variables.",
"parameters": {
"name": {
"type": "string"
},
"content": {
"type": "string"
},
"description": {
"type": "string"
}
}
},
{
"name": "agw_list_available_tools",
"description": "List available tools",
"parameters": {}
},
{
"name": "agw_add_tool",
"description": "Add tool to agent",
"parameters": {
"agentId": {
"type": "string"
},
"toolName": {
"type": "string"
}
}
},
{
"name": "agw_remove_tool",
"description": "Remove tool from agent",
"parameters": {
"agentId": {
"type": "string"
},
"toolName": {
"type": "string"
}
}
},
{
"name": "agw_add_mcp_server",
"description": "Add MCP server to agent",
"parameters": {
"agentId": {
"type": "string"
},
"label": {
"type": "string"
},
"url": {
"type": "string"
}
}
},
{
"name": "agw_remove_mcp_server",
"description": "Remove MCP server",
"parameters": {
"agentId": {
"type": "string"
},
"serverUrl": {
"type": "string"
}
}
},
{
"name": "agw_list_deployments",
"description": "List deployments",
"parameters": {}
},
{
"name": "agw_deploy_agent",
"description": "Deploy an agent",
"parameters": {
"agentId": {
"type": "string"
}
}
},
{
"name": "agw_update_deployment",
"description": "Update deployment",
"parameters": {
"deploymentId": {
"type": "string"
},
"updates": {
"type": "object"
}
}
},
{
"name": "agw_update_system_prompt",
"description": "Update the system agent instructions",
"parameters": {
"newInstructions": {
"type": "string"
}
}
},
{
"name": "agw_test_template_on_agent",
"description": "Test a prompt template on an agent by hydrating variables and executing",
"parameters": {
"agentId": {
"type": "string"
},
"promptTemplateId": {
"type": "string"
},
"variables": {
"type": "string"
}
}
}
],
"mcpTools": [
{
"name": "agw_list_agents",
"description": "List all agents",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": true
}
},
{
"name": "agw_create_agent",
"description": "Create a new agent",
"inputSchema": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"humanName": {
"type": "string"
},
"instructions": {
"type": "string"
},
"description": {
"type": "string"
},
"model": {
"type": "string"
},
"tools": {
"type": "array",
"items": {}
}
},
"additionalProperties": true
}
},
{
"name": "agw_update_agent",
"description": "Update an agent",
"inputSchema": {
"type": "object",
"properties": {
"agentId": {
"type": "string"
},
"updates": {
"type": "object",
"additionalProperties": true
}
},
"additionalProperties": true
}
},
{
"name": "agw_delete_agent",
"description": "Delete an agent",
"inputSchema": {
"type": "object",
"properties": {
"agentId": {
"type": "string"
}
},
"additionalProperties": true
}
},
{
"name": "agw_add_teammate",
"description": "Add teammate to agent",
"inputSchema": {
"type": "object",
"properties": {
"agentId": {
"type": "string"
},
"teammateAgentId": {
"type": "string"
}
},
"additionalProperties": true
}
},
{
"name": "agw_list_memories",
"description": "List agent-scope memories for a specific agent (requires agentId). For USER-scope memories (per-user, cross-agent), use the in-chat agw_list_memories tool with scope=\"user\".",
"inputSchema": {
"type": "object",
"properties": {
"agentId": {
"type": "string"
}
},
"additionalProperties": true
}
},
{
"name": "agw_add_memory",
"description": "Add an agent-scope memory to the specified agent. Keep entries ≤15 words.",
"inputSchema": {
"type": "object",
"properties": {
"agentId": {
"type": "string"
},
"text": {
"type": "string"
}
},
"additionalProperties": true
}
},
{
"name": "agw_update_memory",
"description": "Update an existing agent-scope memory by memoryId. Call agw_list_memories first to get the memoryId.",
"inputSchema": {
"type": "object",
"properties": {
"agentId": {
"type": "string"
},
"memoryId": {
"type": "string"
},
"text": {
"type": "string"
}
},
"additionalProperties": true
}
},
{
"name": "agw_remove_memory",
"description": "Remove an agent-scope memory by memoryId. Call agw_list_memories first to get the memoryId.",
"inputSchema": {
"type": "object",
"properties": {
"agentId": {
"type": "string"
},
"memoryId": {
"type": "string"
}
},
"additionalProperties": true
}
},
{
"name": "agw_list_scheduled_jobs",
"description": "List scheduled jobs",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": true
}
},
{
"name": "agw_create_scheduled_job",
"description": "Create scheduled job. Supports two modes: triggerType \"cron\" for time-based (provide cronExpression), or \"composio_trigger\" for event-based (provide composioTriggerSlug). For triggers, check agw_list_triggers config field and pass required values as composioTriggerConfig. Times in UTC.",
"inputSchema": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"triggerType": {
"type": "string"
},
"cronExpression": {
"type": "string"
},
"composioTriggerSlug": {
"type": "string"
},
"composioToolkitSlug": {
"type": "string"
},
"composioTriggerConfig": {
"type": "object",
"additionalProperties": true
},
"agentId": {
"type": "string"
},
"promptTemplateId": {
"type": "string"
},
"variables": {
"type": "object",
"additionalProperties": true
}
},
"additionalProperties": true
}
},
{
"name": "agw_update_scheduled_job",
"description": "Update scheduled job. Updates can include name, cronExpression, agentId, promptTemplateId, variables, or active.",
"inputSchema": {
"type": "object",
"properties": {
"jobId": {
"type": "string"
},
"updates": {
"type": "object",
"additionalProperties": true
}
},
"additionalProperties": true
}
},
{
"name": "agw_delete_scheduled_job",
"description": "Delete scheduled job",
"inputSchema": {
"type": "object",
"properties": {
"jobId": {
"type": "string"
}
},
"additionalProperties": true
}
},
{
"name": "agw_list_prompt_templates",
"description": "List prompt templates",
"inputSchema": {
"type": "object",
"properties": {
"limit": {
"type": "number"
}
},
"additionalProperties": true
}
},
{
"name": "agw_get_prompt_template",
"description": "Get prompt template details including extracted variables",
"inputSchema": {
"type": "object",
"properties": {
"promptTemplateId": {
"type": "string"
}
},
"additionalProperties": true
}
},
{
"name": "agw_create_prompt_template",
"description": "Create prompt template. Use [VariableName] placeholders in content for dynamic values — they are auto-extracted as template variables.",
"inputSchema": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"content": {
"type": "string"
},
"description": {
"type": "string"
}
},
"additionalProperties": true
}
},
{
"name": "agw_list_available_tools",
"description": "List available tools",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": true
}
},
{
"name": "agw_add_tool",
"description": "Add tool to agent",
"inputSchema": {
"type": "object",
"properties": {
"agentId": {
"type": "string"
},
"toolName": {
"type": "string"
}
},
"additionalProperties": true
}
},
{
"name": "agw_remove_tool",
"description": "Remove tool from agent",
"inputSchema": {
"type": "object",
"properties": {
"agentId": {
"type": "string"
},
"toolName": {
"type": "string"
}
},
"additionalProperties": true
}
},
{
"name": "agw_add_mcp_server",
"description": "Add MCP server to agent",
"inputSchema": {
"type": "object",
"properties": {
"agentId": {
"type": "string"
},
"label": {
"type": "string"
},
"url": {
"type": "string"
}
},
"additionalProperties": true
}
},
{
"name": "agw_remove_mcp_server",
"description": "Remove MCP server",
"inputSchema": {
"type": "object",
"properties": {
"agentId": {
"type": "string"
},
"serverUrl": {
"type": "string"
}
},
"additionalProperties": true
}
},
{
"name": "agw_list_deployments",
"description": "List deployments",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": true
}
},
{
"name": "agw_deploy_agent",
"description": "Deploy an agent",
"inputSchema": {
"type": "object",
"properties": {
"agentId": {
"type": "string"
}
},
"additionalProperties": true
}
},
{
"name": "agw_update_deployment",
"description": "Update deployment",
"inputSchema": {
"type": "object",
"properties": {
"deploymentId": {
"type": "string"
},
"updates": {
"type": "object",
"additionalProperties": true
}
},
"additionalProperties": true
}
},
{
"name": "agw_update_system_prompt",
"description": "Update the system agent instructions",
"inputSchema": {
"type": "object",
"properties": {
"newInstructions": {
"type": "string"
}
},
"additionalProperties": true
}
},
{
"name": "agw_test_template_on_agent",
"description": "Test a prompt template on an agent by hydrating variables and executing",
"inputSchema": {
"type": "object",
"properties": {
"agentId": {
"type": "string"
},
"promptTemplateId": {
"type": "string"
},
"variables": {
"type": "string"
}
},
"additionalProperties": true
}
}
]
}