Plane
About
Integrates with Plane.so project management platform, enabling listing projects, creating and updating issues, filtering by priority, and managing assignees with user approval for data modifications.
Details
- Author
- kelvin6365
- Repository
- kelvin6365/plane-mcp-server
- GitHub stars
- 13
- License
- MIT License
- Categories
- Productivity, Project Management, Developer Tools, Design, Workplace, AI, Frontend, Communication, API
Jump to
- List all projects in your Plane workspace
- Get detailed information about specific projects
- Create new issues with customizable properties
- List and filter issues from projects
- Get detailed information about specific issues
- Update existing issues with new information
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
PlaneCommand (node, npx, python, etc.)nodeArguments-
Argument 1
path/to/plane-mcp-server/build/index.js
Environment-
PLANE_HOST
optional -
PLANE_API_KEY
your_plane_api_key_here -
PLANE_WORKSPACE_SLUG
your_workspace_slug_here
Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
-
Argument 1
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
npx -y @smithery/cli install @kelvin6365/plane-mcp-server --client claude
This command will automatically set up the Plane MCP Server for use with Claude. After installation, you'll need to configure the server with your Plane API key and workspace slug through the Claude settings.
Valid client options are: claude, cline, windsurf, roo-cline, witsy, enconvo, cursor
Example for installing with Cursor:
bashnpx -y @smithery/cli install @kelvin6365/plane-mcp-server --client cursor
If you prefer to set up the server manually, follow these steps:
1. Clone this repository:
bashgit clone https://github.com/kelvin6365/plane-mcp-server.git
cd plane-mcp-server
2. Install dependencies:
bashnpm install
3. Build the server:
bashnpm run build
> Note: If you used Option 1 (Smithery) above, you can skip this section. Smithery automatically configures the MCP server for you.
1. Open your Claude for Desktop configuration file:
- macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
- Windows: %APPDATA%\Claude\claude_desktop_config.json
2. Add the Plane MCP server configuration:
json{
"mcpServers": {
"plane": {
"command": "node",
"args": ["path/to/plane-mcp-server/build/index.js"],
"env": {
"PLANE_API_KEY": "your_plane_api_key_here",
"PLANE_WORKSPACE_SLUG": "your_workspace_slug_here",
"PLANE_HOST": "optional"
}
}
}
}
```
3. Restart Claude for Desktop
list-projects
Lists all projects in your Plane workspace. Parameters: None
get-project
Gets detailed information about a specific project. Parameters: project_id (ID of the project to retrieve)
create-issue
Creates a new issue in a specified project. Parameters: project_id (ID of the project where the issue should be created), name (Title of the issue), description_html (HTML description of the issue), priority (optional: Priority of the issue), state_id (optional: ID of the state for this issue), assignees (optional: Array of user IDs to assign to this issue)
list-issues
Lists issues from a specified project with optional filtering. Parameters: project_id (ID of the project to get issues from), state_id (optional: Filter by state ID), priority (optional: Filter by priority), assignee_id (optional: Filter by assignee ID), limit (optional: Maximum number of issues to return, default: 50)
get-issue
Gets detailed information about a specific issue. Parameters: project_id (ID of the project containing the issue), issue_id (ID of the issue to retrieve)
update-issue
Updates an existing issue in a project. Parameters: project_id (ID of the project containing the issue), issue_id (ID of the issue to update), name (optional: Updated title of the issue), description_html (optional: HTML description of the issue), priority (optional: Updated priority of the issue), state_id (optional: Updated state ID of the issue), assignees (optional: Updated array of user IDs to assign to this issue)
> Note: Tool names use hyphens (e.g., list-projects), not underscores. The server will automatically convert underscores to hyphens for compatibility.
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"plane": {
"env": {
"PLANE_HOST": "optional",
"PLANE_API_KEY": "your_plane_api_key_here",
"PLANE_WORKSPACE_SLUG": "your_workspace_slug_here"
},
"args": [
"path/to/plane-mcp-server/build/index.js"
],
"command": "node"
}
}
}
Linux
{
"env": {
"PLANE_HOST": "optional",
"PLANE_API_KEY": "your_plane_api_key_here",
"PLANE_WORKSPACE_SLUG": "your_workspace_slug_here"
},
"args": [
"path/to/plane-mcp-server/build/index.js"
],
"command": "node"
}
Macos
{
"env": {
"PLANE_HOST": "optional",
"PLANE_API_KEY": "your_plane_api_key_here",
"PLANE_WORKSPACE_SLUG": "your_workspace_slug_here"
},
"args": [
"path/to/plane-mcp-server/build/index.js"
],
"command": "node"
}
Windows
{
"env": {
"PLANE_HOST": "optional",
"PLANE_API_KEY": "your_plane_api_key_here",
"PLANE_WORKSPACE_SLUG": "your_workspace_slug_here"
},
"args": [
"path/to/plane-mcp-server/build/index.js"
],
"command": "node"
}
A Model Context Protocol (MCP) server that enables LLMs to interact withPlane.so, allowing them to manage projects and issues through Plane's API. Using this server, LLMs like Claude can directly interact with your project management workflows while maintaining user control and security.
- List all projects in your Plane workspace
- Get detailed information about specific projects
- Create new issues with customizable properties
- List and filter issues from projects
- Get detailed information about specific issues
- Update existing issues with new information
- Node.js 22.x or higher
- A Plane.so API key
- A Plane.so workspace
The quickest way to get started is to use Smithery to install the server directly:
# Install to Claude for Desktop npx -y @smithery/cli install @kelvin6365/plane-mcp-server --client claude
This command will automatically set up the Plane MCP Server for use with Claude. After installation, you'll need to configure the server with your Plane API key and workspace slug through the Claude settings.
Valid client options are: claude, cline, windsurf, roo-cline, witsy, enconvo, cursor
npx -y @smithery/cli install @kelvin6365/plane-mcp-server --client cursor
If you prefer to set up the server manually, follow these steps:
git clone https://github.com/kelvin6365/plane-mcp-server.git cd plane-mcp-server
Note:If you used Option 1 (Smithery) above, you can skip this section. Smithery automatically configures the MCP server for you.
-
Open your Claude for Desktop configuration file:
- macOS:~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:%APPDATA%\Claude\claude_desktop_config.json
{ "mcpServers": { "plane": { "command": "node", "args": ["path/to/plane-mcp-server/build/index.js"], "env": { "PLANE_API_KEY": "your_plane_api_key_here", "PLANE_WORKSPACE_SLUG": "your_workspace_slug_here", "PLANE_HOST": "optional" } } } }
Note:Tool names use hyphens (e.g.,list-projects), not underscores. The server will automatically convert underscores to hyphens for compatibility.
Lists all projects in your Plane workspace.
Gets detailed information about a specific project.
- project_id: ID of the project to retrieve
{ "project_id": "01abc123-4567-89de-0123-456789abcdef" }
Creates a new issue in a specified project.
- project_id: ID of the project where the issue should be created
- name: Title of the issue
- description_html: HTML description of the issue (required by Plane API)
- priority(optional): Priority of the issue ("urgent", "high", "medium", "low", "none")
- state_id(optional): ID of the state for this issue
- assignees(optional): Array of user IDs to assign to this issue
Note:Theassigneesparameter must be an array of user ID strings. Common errors include providing a dictionary/object instead of an array, or accidentally nesting the entire issue data inside the assignees field. The server will attempt to handle these cases, but it's best to use the correct format.
{ "project_id": "01abc123-4567-89de-0123-456789abcdef", "name": "Implement new feature", "description_html": "<p>We need to implement the new reporting feature</p>", "priority": "high", "assignees": ["user-id-1", "user-id-2"] }
Lists issues from a specified project with optional filtering.
- project_id: ID of the project to get issues from
- state_id(optional): Filter by state ID
- priority(optional): Filter by priority
- assignee_id(optional): Filter by assignee ID
- limit(optional): Maximum number of issues to return (default: 50)
{ "project_id": "01abc123-4567-89de-0123-456789abcdef", "priority": "high", "limit": 10 }
Gets detailed information about a specific issue.
- project_id: ID of the project containing the issue
- issue_id: ID of the issue to retrieve
{ "project_id": "01abc123-4567-89de-0123-456789abcdef", "issue_id": "01def456-7890-12gh-3456-789ijklmnopq" }
- project_id: ID of the project containing the issue
- issue_id: ID of the issue to update
- name(optional): Updated title of the issue
- description_html(optional): HTML description of the issue (required by Plane API)
- priority(optional): Updated priority of the issue
- state_id(optional): Updated state ID of the issue
- assignees(optional): Updated array of user IDs to assign to this issue
Note:Theassigneesparameter must be an array of user ID strings, following the same format guidelines as the create-issue tool.
{ "project_id": "01abc123-4567-89de-0123-456789abcdef", "issue_id": "01def456-7890-12gh-3456-789ijklmnopq", "priority": "urgent", "description_html": "<p>Updated description with <strong>more details</strong></p>" }
npm install --save-dev typescript @types/node
You can test the server using the MCP Inspector:
npx @modelcontextprotocol/inspector node dist/index.js
Here are some example interactions you can try with Claude after setting up the Plane MCP server:
- "Can you list all the projects in my Plane workspace?"
- "Please create a new high-priority issue in the Marketing project titled 'Update social media strategy'"
- "What are all the high-priority issues in the Development project?"
- "Update issue #123 in the QA project to change its priority to urgent"
Claude will use the appropriate tools to interact with Plane while asking for your approval before creating or modifying any issues.
- The API key requires proper Plane permissions to function
- All operations that modify data require explicit user approval
- Environment variables should be properly secured
- API keys should never be committed to version control
- Fork the repository
- Create your feature branch (git checkout -b feature/amazing-feature)
- Commit your changes (git commit -m 'Add some amazing feature')
- Push to the branch (git push origin feature/amazing-feature)
- Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
If you encounter any issues or have questions:
- Check the GitHub Issues section
- Consult the MCP documentation atmodelcontextprotocol.io
- Open a new issue with detailed reproduction steps
Interact with task, doc, and project data in Dart, an AI-native project management tool
Remote MCP server for MeisterTask. Create and manage projects, tasks, and notes from your AI assistant. Hosted (streamable-HTTP) — connect at https://mcp.meistertask.com/mcp
The official Plane MCP server provides integration with Plane APIs, enabling full AI automation of Plane projects, work items, cycles and more.
Keep teams & agents coordinated automatically
From the creators of Wunderlist — the all-in-one task management app for to-do lists, notes, and projects. AI-powered productivity that replaces 5 apps.
Connect to the Taskade platform via MCP. Access tasks, projects, workflows, and AI agents in real-time through a unified workspace and API.
Official Taskeract MCP Server for integrating your Taskeract project tasks and load the context of your tasks into your MCP enabled app.
Manage your Todoist tasks and projects directly from your LLM.
Interact with Asana tasks, projects, workspaces, and comments using the Asana API.
Comprehensive Trello integration: 46 tools covering boards, cards, lists, labels, checklists, attachments, members, custom fields, and search. Read-only mode, image attachment auto-download. Active fork of kocakli/Trello-Desktop-MCP integrating contributions from across the Trello MCP fork ecosystem
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.





