CloudShift Plane MCP
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
CloudShift Plane MCP
A Model Context Protocol server for Plane that works with self-hosted Plane Community Edition, connects with a plain API key over HTTP, and adds deterministic team reports (daily standup, per-person, project, module, cycle, workspace).
It's built on the official makeplane/plane-mcp-server (MIT), with all 177 upstream tools kept, plus:
Plane CE support. A read adapter that uses the
/issues/API paths older Community Edition builds expose, plus retry and backoff for the 429/502/503 responses common behind self-hosted reverse proxies.API-key-only HTTP mode. Run remote HTTP without configuring a Plane OAuth app (
PLANE_MCP_DISABLE_OAUTH=true). Clients authenticate withAuthorization: Bearer <key>orx-api-key.URL-scoped workspaces.
/http/api-key/w/<workspace>/mcplets clients that can't send custom headers (such as Claude.ai custom connectors) pick a workspace from the URL.Team reports. Seven
cloudshift_plane_*tools compute progress, blocked, overdue, due-soon, stale, and unassigned counts in code, not by the LLM, so numbers are reproducible.
Not affiliated with or endorsed by Plane Software, Inc. "Plane" is a trademark of its owner.
Contents
Related MCP server: plane-mcp
Quick start
Requirements: Python 3.10+ and uv. You need a Plane workspace API token (Plane → Workspace settings → API tokens).
git clone https://github.com/Sabariramamoorthy/cloudshift-plane-mcp.git
cd cloudshift-plane-mcp
uv sync
cp .env.example .env # then fill in PLANE_BASE_URL, PLANE_API_KEY, PLANE_WORKSPACE_SLUGRun it locally over stdio (for Cursor, Claude Desktop, VS Code):
set -a; . ./.env; set +a
uv run plane-mcp-server stdioOr as an HTTP server on port 8211:
set -a; . ./.env; set +a
uv run plane-mcp-server httpCheck that it answers (an MCP initialize should return HTTP 200):
curl -s -o /dev/null -w "%{http_code}\n" -X POST http://127.0.0.1:8211/http/api-key/mcp \
-H "Authorization: Bearer $PLANE_API_KEY" \
-H "x-workspace-slug: $PLANE_WORKSPACE_SLUG" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"curl","version":"0"}}}'Connect a client
Local (stdio), the simplest option for a single user:
{
"mcpServers": {
"plane": {
"command": "uv",
"args": ["--directory", "/path/to/cloudshift-plane-mcp", "run", "plane-mcp-server", "stdio"],
"env": {
"PLANE_BASE_URL": "https://plane.example.com",
"PLANE_API_KEY": "<your-api-key>",
"PLANE_WORKSPACE_SLUG": "<your-workspace>"
}
}
}
}Remote (HTTP), for clients that support headers, such as Cursor:
{
"mcpServers": {
"plane": {
"url": "https://mcp.example.com/http/api-key/mcp",
"headers": {
"Authorization": "Bearer <your-api-key>",
"x-workspace-slug": "<your-workspace>"
}
}
}
}For Claude Desktop, Claude.ai custom connectors, and VS Code, see docs/clients.md.
Configuration
All settings are environment variables. .env.example is a commented template. The essentials:
Variable | Required | Purpose |
| yes | Your Plane URL, without |
| stdio, reports | Workspace API token |
| stdio, reports | Workspace slug from the Plane URL |
| HTTP |
|
| no |
|
| no | HTTP bind address (default |
| no | IANA timezone for report dates (default |
The full reference, including OAuth, Redis, and report tuning, is in docs/configuration.md.
Tools
184 tools in total:
Group | Count | Examples |
Work items, comments, links, relations, activity, attachments, work logs | 40 |
|
Projects, members, estimates | 18 |
|
Cycles, modules, milestones | 25 |
|
States, labels, types, custom properties | 31 |
|
Workspace, users, pages, PQL | 11 |
|
Initiatives, intake, releases, customers, roles | 52 | Mostly Plane Commercial/Cloud features |
CloudShift reports and diagnostics | 7 |
|
Full list: docs/tools.md. Report details and output format: docs/reports.md.
On self-hosted Community Edition, some upstream tools return 404 because the endpoint is Commercial-only or older CE builds lack it. Pages are the most common case. See docs/self-hosted-ce.md for what to expect and which tools to use instead.
Deployment
Option | Use when | Guide |
Docker / Compose | You run containers | |
systemd | Long-running service on a Linux VM | |
Deploy script | Pull, install, restart, health-check on a VM | |
Reverse proxy (TLS) | Exposing to the internet |
Step-by-step instructions, including security guidance for public exposure, are in docs/deployment.md.
Development
uv sync --extra dev
uv run pytest # unit tests; live tests skip without credentials
uv run ruff check .
uv run ruff format .Integration tests against a real Plane instance: copy .env.test to .env.test.local, fill it in, and run pytest tests/test_integration.py. Layout and request flow are covered in docs/architecture.md. Contributions are welcome; see CONTRIBUTING.md.
Documentation
Doc | What's in it |
Every environment variable | |
Cursor, Claude Desktop, Claude.ai, VS Code setup | |
All 184 tools | |
Report tools, metrics definitions, error codes | |
Community Edition compatibility and troubleshooting | |
Docker, systemd, reverse proxy, hardening | |
Code layout and request flow |
License and credits
MIT. Based on makeplane/plane-mcp-server by the Plane MCP Server contributors; their copyright notice is retained. CloudShift additions live mainly in cloudshift/, plane_mcp/claude_workspace.py, and the header auth provider.
This server cannot be deployed
Maintenance
Related MCP Connectors
Task and sprint coordination for humans and AI agents, with scoped API keys and full audit trail.
Agent-complete, permission-scoped product operations for Priorify workspaces.
Track SaaS directory submissions for your products via API key–gated Streamable HTTP MCP.
Task management for people and AI agents, with scoped OAuth access to issues, projects, and docs.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables interaction with self-hosted Plane project management instances using X-API-Key authentication, offering tools for project discovery, issue management, and workflow state operations.7MIT
- AlicenseNot gradedqualityDmaintenanceLocal MCP server for a self-hosted Plane instance that exposes tickets, cycles, modules, labels, and states as MCP tools with both read and mutation capabilities.33 npmMIT
- FlicenseNot gradedqualityDmaintenanceEnables AI models to interact with a self-hosted Plane workspace through MCP tools, supporting task, project, cycle, and module management.-
- AlicenseCqualityCmaintenanceEnables AI agents to programmatically manage projects, work items, modules, cycles, labels, views, and other Plane workspace data on 8seneca's Plane deployment.54MIT