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

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

-
security - not tested
F
license - not found
-
quality - not tested

Latest Blog Posts

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/nanameru/Manus-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server