Skip to main content
Glama

Manus MCP

The Universal MCP Server for Manus AI enables you to create AI tasks, manage webhooks, and integrate Manus workflows into any MCP-compatible client. Designed for prompt-first usage with full support for attachments, connectors, and real-time notifications.

Installation

Prerequisites

  • Node.js 18+

  • Set MANUS_MCP_API_KEY in your environment

Get an API key

Build locally

cd /path/to/manus-mcp
npm i
npm run build

Related MCP server: Novu MCP Server

Setup: Claude Code (CLI)

Use this one-liner (replace with your real API key):

claude mcp add manus-mcp -s user -e MANUS_MCP_API_KEY="your-api-key-here" -- npx manus-mcp

Note: Use manus-mcp (not "Manus MCP") as the name. Claude CLI requires names without spaces.

To remove:

claude mcp remove manus-mcp

Setup: Cursor

Create .cursor/mcp.json in your client (do not commit it here):

{
  "mcpServers": {
    "manus-mcp": {
      "command": "npx",
      "args": ["manus-mcp"],
      "env": { "MANUS_MCP_API_KEY": "your-api-key-here" },
      "autoStart": true
    }
  }
}

Note: This repository does not include .cursor/mcp.json. Configure Cursor via the UI or manually create the file in your client workspace.

Other Clients and Agents

Install via URI or CLI:

code --add-mcp '{"name":"manus-mcp","command":"npx","args":["manus-mcp"],"env":{"MANUS_MCP_API_KEY":"your-api-key-here"}}'

Or add to your VS Code settings JSON:

{
  "mcp.servers": {
    "manus-mcp": {
      "command": "npx",
      "args": ["manus-mcp"],
      "env": { "MANUS_MCP_API_KEY": "your-api-key-here" }
    }
  }
}

Same as VS Code, but use code-insiders command:

code-insiders --add-mcp '{"name":"manus-mcp","command":"npx","args":["manus-mcp"],"env":{"MANUS_MCP_API_KEY":"your-api-key-here"}}'

Add to your Claude Desktop configuration file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "manus-mcp": {
      "command": "npx",
      "args": ["manus-mcp"],
      "env": { "MANUS_MCP_API_KEY": "your-api-key-here" }
    }
  }
}

In LM Studio's MCP settings:

  • Command: npx

  • Args: ["manus-mcp"]

  • Env: MANUS_MCP_API_KEY=your-api-key-here

Add to your Goose configuration:

  • Type: STDIO

  • Command: npx

  • Args: manus-mcp

  • Enabled: true

  • Env: MANUS_MCP_API_KEY=your-api-key-here

Example ~/.config/opencode/opencode.json:

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "manus-mcp": {
      "type": "local",
      "command": ["npx", "manus-mcp"],
      "enabled": true,
      "env": { "MANUS_MCP_API_KEY": "your-api-key-here" }
    }
  }
}

Add a new MCP in Qodo Gen and paste the standard JSON config:

{
  "command": "npx",
  "args": ["manus-mcp"],
  "env": { "MANUS_MCP_API_KEY": "your-api-key-here" }
}

Follow the Windsurf MCP integration guide and reuse the standard config:

{
  "manus-mcp": {
    "command": "npx",
    "args": ["manus-mcp"],
    "env": { "MANUS_MCP_API_KEY": "your-api-key-here" }
  }
}

Setup: Codex (TOML)

Add the following to your Codex TOML configuration:

[mcp_servers.manus-mcp]
command = "npx"
args = ["manus-mcp"]

[mcp_servers.manus-mcp.env]
MANUS_MCP_API_KEY = "your-api-key-here"
# MCP_NAME = "manus-mcp"  # Optional: override server name

Configuration (Env)

  • MANUS_MCP_API_KEY: Your Manus API key (required)

  • MANUS_MCP_API_BASE_URL: Override the API base URL (default: https://api.manus.ai/v1)

  • MCP_NAME: Server name override (default: manus-mcp)

Available Tools

create_task

Create a new AI task in Manus with custom parameters and optional attachments.

Inputs:

{
  "prompt": "string (required) - The task prompt or instruction for the AI",
  "mode": "string (required) - 'speed' or 'quality'",
  "attachments": "array (optional) - List of attachment objects { filename, url, mime_type, size_bytes }",
  "connectors": "array (optional) - List of connector IDs (e.g., ['gmail', 'notion'])",
  "hide_in_task_list": "boolean (optional) - Hide from webapp task list (default: false)",
  "create_shareable_link": "boolean (optional) - Generate a public shareable link (default: false)"
}

Outputs:

{
  "task_id": "string - Unique task identifier",
  "task_title": "string - Generated task title",
  "task_url": "string - Direct link to the task",
  "shareURL": "string (optional) - Public shareable link if requested"
}

create_webhook

Register a new webhook to receive real-time notifications from Manus.

Inputs:

{
  "url": "string (required) - Webhook endpoint URL",
  "events": "array (optional) - List of event types to subscribe to"
}

Outputs: Webhook registration details including webhook ID and configuration.

delete_webhook

Remove a previously registered webhook by its ID.

Inputs:

{
  "webhook_id": "string (required) - The ID of the webhook to delete"
}

Outputs: Success confirmation or error details.

Example invocation (MCP tool call)

Create a task in speed mode:

{
  "tool": "create_task",
  "arguments": {
    "prompt": "Analyze the quarterly sales data and generate a summary report with key insights",
    "mode": "speed",
    "create_shareable_link": true
  }
}

Create a task with attachments:

{
  "tool": "create_task",
  "arguments": {
    "prompt": "Extract key action items from this meeting transcript",
    "mode": "quality",
    "attachments": [
      {
        "filename": "meeting-notes.pdf",
        "url": "https://example.com/files/meeting-notes.pdf",
        "mime_type": "application/pdf",
        "size_bytes": 245632
      }
    ],
    "connectors": ["gmail", "notion"]
  }
}

Troubleshooting

401 Authentication Error

  • Verify that MANUS_MCP_API_KEY is correctly set in your environment

  • Check that your API key is valid and has not expired

  • Test your API key with a direct curl request:

    curl -H "API_KEY: your-key" https://api.manus.ai/v1/tasks

Node.js Version Error

  • Ensure you're using Node.js 18 or later: node -v

  • Update Node.js if necessary: https://nodejs.org/

Build Issues

  • Clear the build directory: rm -rf build

  • Reinstall dependencies: rm -rf node_modules && npm i

  • Rebuild: npm run build

Testing Local Builds

  • After building, test the server: npx . or node build/index.js

  • Check that the executable is properly created: ls -la build/index.js

Inspecting Publish Artifacts

  • See what would be published: npm pack --dry-run

  • Check the package contents: npm pack && tar -xzf manus-mcp-*.tgz && cat package/package.json

References

Name Consistency & Troubleshooting

Always use CANONICAL_ID (manus-mcp) for identifiers and keys. Use CANONICAL_DISPLAY (Manus MCP) only for UI labels. Do not mix legacy keys after registration.

Consistency Matrix

Context

Value

npm package name

manus-mcp

Binary name

manus-mcp

MCP server name (SDK metadata)

manus-mcp

Env default MCP_NAME

manus-mcp

Client registry key

manus-mcp

UI label

Manus MCP

Conflict Cleanup

  • Remove any stale keys (e.g., old display names like "Manus") and re-add with manus-mcp only

  • Ensure global .mcp.json or client registries only use manus-mcp for keys

  • Cursor: Configure in the UI; this project intentionally omits .cursor/mcp.json

Example

✅ Correct:

{
  "mcpServers": {
    "manus-mcp": {
      "command": "npx",
      "args": ["manus-mcp"]
    }
  }
}

❌ Incorrect:

{
  "mcpServers": {
    "Manus": {  // Wrong: will conflict with "manus-mcp"
      "command": "npx",
      "args": ["manus-mcp"]
    }
  }
}

License

MIT

Available Tools

3 tools
create_taskB

Create a new AI task in Manus. Returns task_id, task_title, task_url, and optionally a shareable link.

Inputs: prompt (required), mode (required), attachments, connectors, +2 more.

create_webhookC

Register a new webhook to receive real-time notifications from Manus. Returns webhook details.

Inputs: url (required), events.

delete_webhookC

Remove a previously registered webhook by its ID.

Inputs: webhook_id (required).

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3.2/5.0

    Scored across 3 tools

    Disambiguation5/5

    Each tool has a clearly distinct purpose: create_task handles AI task creation, create_webhook manages webhook registration, and delete_webhook handles webhook removal. There is no overlap in functionality, making tool selection straightforward for an agent.

    Naming Consistency5/5

    All tools follow a consistent verb_noun pattern (create_task, create_webhook, delete_webhook) with clear, descriptive names. The naming convention is uniform throughout the set, enhancing readability and predictability.

    Tool Count3/5

    With only 3 tools, the set feels thin for a server named 'Manus MCP', which suggests a broader AI task management domain. While the tools are well-defined, the count is borderline low, potentially lacking operations like task retrieval, updates, or webhook listing.

    Completeness2/5

    The tool surface has significant gaps for AI task management: it includes create_task but no get_task, update_task, or delete_task, and for webhooks, it lacks list_webhooks. This incomplete CRUD coverage will likely cause agent failures in common workflows.

    Maintenance

    ActivityInactive
    ResponsivenessOutdated data

    Related MCP Connectors

    Related MCP Servers