Skip to main content

Shinzo MCP Server

The Shinzo MCP server gives your AI assistants and agents direct access to the Shinzo platform. Once connected, you can deploy agents, manage MCP servers, send messages, and more — all from within Claude Code or any MCP-compatible client.
Server URL: https://api.app.shinzo.ai/v1/mcpTransport: Streamable HTTPAuth: Bearer token (your Shinzo API key)

Prerequisites

Before connecting, you’ll need:
  1. A Shinzo accountsign up at app.shinzo.ai
  2. A Shinzo API key — generate one from Settings → API Keys in the platform
Your API key starts with sk-. When configuring clients, the full Authorization header value should look like: Bearer sk-abc123def456... (include the word “Bearer” followed by a space and your key).

Connect Your MCP Client

Choose the setup method that works best for your MCP client. The fastest way to add Shinzo to Claude Code is with a single CLI command:
claude mcp add --transport http shinzo "https://api.app.shinzo.ai/v1/mcp" --header "Authorization: Bearer YOUR_SHINZO_API_KEY"
Replace YOUR_SHINZO_API_KEY with your actual API key.
Important: The --transport flag must come before the server name (shinzo) in the command. Placing it after will cause a parsing error.
After running this command, restart Claude Code. You can verify the connection with /mcp inside Claude Code — you should see shinzo listed as an available server.
You can also run /mcp inside a Claude Code session to verify all connected MCP servers and their tool counts.

Claude Desktop

Claude Desktop uses mcp-remote as a bridge to HTTP MCP servers. Add the following to your Claude Desktop configuration file: Config file location:
  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "shinzo": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://api.app.shinzo.ai/v1/mcp",
        "--header",
        "Authorization: Bearer YOUR_SHINZO_API_KEY"
      ]
    }
  }
}
mcp-remote requires Node.js. It will be downloaded automatically via npx on first use. Restart Claude Desktop after updating the config file.

Generic MCP Client Configuration

For any MCP client that supports HTTP transport (Streamable HTTP or SSE) — including Cursor, Windsurf, VS Code Copilot, and others — use these connection details:
FieldValue
URLhttps://api.app.shinzo.ai/v1/mcp
TransportHTTP (Streamable HTTP)
AuthorizationBearer YOUR_SHINZO_API_KEY
Example mcpServers config block (Cursor / Windsurf format):
{
  "mcpServers": {
    "shinzo": {
      "type": "http",
      "url": "https://api.app.shinzo.ai/v1/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_SHINZO_API_KEY"
      }
    }
  }
}
Config field names vary by client. Cursor and Windsurf use "type": "http". Other clients (e.g. VS Code Copilot extensions) may use "transportType" or similar. Consult your client’s documentation if the above doesn’t work — the URL and Authorization header values are always the same.

Custom Agents (TypeScript / Python)

You can connect your own agents to the Shinzo MCP server using the official MCP SDKs.
npm install @modelcontextprotocol/sdk
import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js";

const transport = new StreamableHTTPClientTransport(
  new URL("https://api.app.shinzo.ai/v1/mcp"),
  {
    requestInit: {
      headers: {
        Authorization: "Bearer YOUR_SHINZO_API_KEY"
      }
    }
  }
);

const client = new Client({ name: "my-agent", version: "1.0.0" });
await client.connect(transport);

// List your agents
const agents = await client.callTool({ name: "list_agents", arguments: {} });

Available Tools

Once connected, you’ll have access to 66 tools across 9 categories:
CategoryToolsWhat you can do
Analytics4 toolsQuery usage, costs, and session history
Agent Management11 toolsCreate, configure, pause, and delete agents
Agent Messaging3 toolsSend messages and retrieve conversation history
Agent Filesystem17 toolsRead, write, search, and organize files in agent workspaces
Agent Schedules & Triggers11 toolsCreate recurring cron schedules and webhook triggers for agents
Discord Integration3 toolsLink/unlink Discord accounts
Slack Integration3 toolsLink/unlink Slack accounts to agents
Telegram Integration3 toolsLink/unlink Telegram accounts to agents
Channel Management1 toolManage channel bindings for agents
MCP Server Management13 toolsRegister servers, manage agent access, and check health

Analytics (4 tools)

Monitor token usage, costs, and session activity.
ToolDescription
get_usage_summaryGet today/week/month token usage summary — fastest way to answer “how many tokens did I burn?”
get_token_analyticsGet detailed token usage analytics aggregated by model and provider
list_ai_sessionsList AI interaction sessions with filtering and pagination
get_session_detailsGet detailed info about a specific session including interactions, request/response data, and linked messages
Usage examples:
  • “How many tokens did I use today?”
  • “Show me the most expensive sessions this month”
  • “Get details for session abc-123”

Agent Management (11 tools)

Create, configure, and control your AI agents.
ToolDescription
create_agentDeploy a new AI agent with custom configuration, system prompt, and initial files
list_agentsList all your agents with filtering, sorting, and pagination
get_agentGet detailed info about a specific agent (system prompt, MCP servers, filesystem summary)
get_agent_summaryGet slim agent summary (status, token balance, message count) — faster than get_agent
update_agentUpdate agent configuration, system prompt, files, or MCP server access
delete_agentDelete an agent and all its data
pause_agentPause agent execution loop (pod stays alive for filesystem access)
resume_agentResume a paused or stopped agent
stop_agentStop agent and shut down pod (workspace preserved)
set_agent_statusSet agent status directly (active, paused, or stopped)
update_agent_balanceUpdate agent output token balance (increment or set)
Usage examples:
  • “Create a research agent with 2GB storage”
  • “List all active agents”
  • “Pause agent abc-123 while I update its config”
  • “Add 100k tokens to agent abc-123’s balance”

Agent Messaging (3 tools)

Send messages to agents and retrieve conversation history.
ToolDescription
send_agent_messageSend a message to an agent via API channel (supports queue modes: collect or interrupt)
list_agent_messagesList messages for an agent with filtering (status, sender, recipient, counterparty) and cursor pagination
list_agent_conversationsList conversations grouped by counterparty with message counts and recent messages
Usage examples:
  • “Send ‘analyze this dataset’ to agent abc-123”
  • “Show unread messages for agent abc-123”
  • “List all conversations for agent abc-123”

Agent Filesystem (17 tools)

Full programmatic access to agent workspace files and directories.

File Operations (5 tools)

ToolDescription
read_agent_fileRead file contents (supports UTF-8 and base64 encoding)
create_agent_fileCreate a new file with optional overwrite
update_agent_fileUpdate existing file contents
delete_agent_fileDelete a file
patch_agent_fileApply partial updates (append, prepend, insert, replace)

Directory Operations (2 tools)

ToolDescription
list_agent_directoryList directory contents (supports recursive and hidden files)
create_agent_directoryCreate directory (supports recursive parent creation)
delete_agent_directoryDelete directory (supports recursive deletion)

Bulk Operations (3 tools)

ToolDescription
copy_agent_pathCopy file or directory with overwrite support
move_agent_pathMove or rename file/directory with overwrite support
search_agent_filesystemSearch by filename, content, or both (supports glob patterns, case sensitivity, max results)

Metadata (2 tools)

ToolDescription
get_file_metadataGet file or directory metadata (size, permissions, timestamps)
update_file_metadataUpdate file metadata (permissions, owner, group, tags)

Archives (2 tools)

ToolDescription
create_agent_archiveCreate archive from files (zip, tar, tar.gz, tar.bz2)
extract_agent_archiveExtract archive to destination path
Usage examples:
  • “Read the config.json file from agent abc-123”
  • “Create a requirements.txt file in agent abc-123’s workspace”
  • “Search for ‘TODO’ in all Python files for agent abc-123”
  • “Create a backup archive of agent abc-123’s entire workspace”

Agent Schedules & Triggers (11 tools)

Automate agent tasks with recurring cron schedules and event-driven webhook triggers.

Cron Schedules (7 tools)

ToolDescription
create_scheduleCreate a recurring cron schedule for an agent (supports timezone, cron expression, message template with {{date}}, {{time}}, {{schedule.name}} variables)
list_schedulesList all schedules for an agent with pagination
get_scheduleGet details of a specific schedule
update_scheduleUpdate schedule name, cron expression, message template, timezone, or enabled state
toggle_scheduleToggle a schedule between enabled and disabled
delete_scheduleDelete a cron schedule
list_schedule_executionsList execution history for a schedule (last 50 runs by default)

Webhook Triggers (4 tools)

ToolDescription
create_triggerCreate a webhook trigger for an agent (returns webhook URL and auto-generated secret; message template supports {{payload.*}} dot-path substitution from JSON payload)
list_triggersList all webhook triggers for an agent with pagination
update_triggerUpdate trigger name, message template, or enabled state
delete_triggerDelete a webhook trigger
Usage examples:
  • “Create a daily standup reminder at 9am PST for agent abc-123”
  • “Set up a webhook trigger for agent abc-123 to process GitHub push events”
  • “List all schedules for agent abc-123”
  • “Show execution history for schedule xyz-789”
  • “Disable the weekend backup schedule for agent abc-123”
Cron Schedule Examples:
  • 0 9 * * 1-5 — Every weekday at 9:00 AM
  • 0 */4 * * * — Every 4 hours
  • 0 0 * * 0 — Every Sunday at midnight
  • 30 14 1 * * — First day of every month at 2:30 PM
Webhook Authentication: Webhooks support both X-Webhook-Secret (plain secret) and X-Hub-Signature-256 (GitHub-style HMAC) headers for secure validation.

Discord Integration (3 tools)

Connect agents to Discord for user interactions.
ToolDescription
create_discord_link_codeGenerate a 6-character code to link Discord account to agent (expires in 10 min)
get_discord_statusCheck Discord link status and binding details for an agent
unlink_discordUnlink Discord account from agent (deactivates channel binding)
Usage examples:
  • “Generate Discord link code for agent abc-123”
  • “Check Discord status for agent abc-123”
  • “Unlink Discord from agent abc-123”

Slack Integration (3 tools)

Connect agents to Slack for team communication.
ToolDescription
create_slack_link_codeGenerate a 6-character code to link Slack account to agent (expires in 10 min)
get_slack_statusCheck Slack link status and binding details for an agent
unlink_slackUnlink Slack account from agent (deactivates channel binding)
Usage examples:
  • “Generate Slack link code for agent abc-123”
  • “Check Slack status for agent abc-123”
  • “Unlink Slack from agent abc-123”
Note: Slack integration requires either the centralized Shinzo Slack bot or a custom Slack bot configured for your agent. See the Slack Integration Guide for setup instructions.

Telegram Integration (3 tools)

Connect agents to Telegram for user interactions.
ToolDescription
create_telegram_link_codeGenerate a 6-character code to link Telegram account to agent (expires in 10 min)
get_telegram_statusCheck Telegram link status and binding details for an agent
unlink_telegramUnlink Telegram account from agent (deactivates channel binding)
Usage examples:
  • “Generate Telegram link code for agent abc-123”
  • “Check Telegram status for agent abc-123”
  • “Unlink Telegram from agent abc-123”

MCP Server Management (13 tools)

Register, configure, and manage MCP servers for your agents.

Server CRUD (5 tools)

ToolDescription
create_mcp_serverRegister new MCP server (stdio or HTTP, with init steps, files, and environment variables)
list_mcp_serversList all registered MCP servers with filtering and pagination
get_mcp_serverGet detailed info about MCP server including agent access grants
update_mcp_serverUpdate MCP server configuration, credentials, or status
delete_mcp_serverDelete MCP server (fails if agents have active access grants)

Server Operations (2 tools)

ToolDescription
refresh_mcp_server_toolsRefresh available tools list by querying MCP server endpoint
check_mcp_server_healthCheck MCP server health and connectivity

Access Management (3 tools)

ToolDescription
grant_agent_mcp_accessGrant agent access to MCP server (all tools or selected tools)
revoke_agent_mcp_accessRevoke agent’s MCP server access
list_agent_mcp_accessList all agent access grants for an MCP server
Usage examples:
  • “Register the GitHub MCP server for my agents”
  • “Grant agent abc-123 access to the github server”
  • “Check health of the filesystem server”
  • “List all agents that can access the github server”

Example: Create Your First Agent

Via Claude Code (conversational)

Once connected, you can ask Claude to create and manage agents in plain English:
You: Create a new Shinzo agent called "research-assistant" with the description
"Helps with research tasks" and the system prompt "You are a helpful research
assistant. Always cite your sources."

Claude: I'll create that agent for you using the Shinzo MCP server.

[create_agent result]
{
  "uuid": "abc123de-f456-7890-abcd-ef1234567890",
  "name": "research-assistant",
  "status": "active",
  "created_at": "2026-02-18T10:30:00Z"
}

The agent "research-assistant" has been created and is now active. Its ID is
abc123de-f456-7890-abcd-ef1234567890. You can send it messages using
send_agent_message, or connect it to additional MCP servers using
grant_agent_mcp_access.

Via the TypeScript SDK (programmatic)

// Create an agent and send it a message
const newAgent = await client.callTool({
  name: "create_agent",
  arguments: {
    name: "research-assistant",
    description: "Helps with research tasks",
    system_prompt: "You are a helpful research assistant. Always cite your sources.",
    configuration: {}
  }
});

// Extract agent UUID from tool response
const agentId = JSON.parse(newAgent.content[0].text).uuid;

// Send the agent its first message
await client.callTool({
  name: "send_agent_message",
  arguments: {
    agentId,
    content: "Summarize the latest developments in large language models.",
    queue_mode: "collect"
  }
});

// Retrieve the response
const messages = await client.callTool({
  name: "list_agent_messages",
  arguments: { agentId, limit: 10 }
});

Troubleshooting

  • Verify your API key is correct and active — check Settings → API Keys
  • Make sure you’re passing the full key (starts with sk-...), not just the key prefix
  • Check that the Authorization header is formatted as Bearer YOUR_KEY (with a space between “Bearer” and the key)
  • Run claude mcp list to verify the server was added
  • Restart Claude Code after adding the server
  • Check for errors with claude mcp get shinzo
  • Try removing and re-adding: claude mcp remove shinzo then re-run the add command
  • Ensure Node.js is installed: node --version
  • Try running npx mcp-remote --version to test if mcp-remote works
  • Check Claude Desktop logs for detailed error messages
  • Make sure there are no JSON syntax errors in your config file

Next Steps

Shinzo Agents Docs

Learn about deploying and managing AI agents

API Reference

Explore the full Shinzo REST API

Agent Analytics

Monitor your agents with analytics

Support

Get help from the Shinzo team