Plane MCP Server
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
A Model Context Protocol (MCP) server that enables LLMs to interact with Plane.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.
Features
- 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
Prerequisites
- Node.js 22.x or higher
- A Plane.so API key
- A Plane.so workspace
Installation
Option 1: Using Smithery
The quickest way to get started is to use Smithery to install the server directly:
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:
Option 2: Manual Setup
If you prefer to set up the server manually, follow these steps:
1. Clone this repository:
2. Install dependencies:
3. Build the server:
Usage with Claude for Desktop
> **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:
3. Restart Claude for Desktop
Available Tools
> **Note:** Tool names use hyphens (e.g., list-projects), not underscores. The server will automatically convert underscores to hyphens for compatibility.
list-projects
Lists all projects in your Plane workspace.
Parameters: None
Example:
get-project
Gets detailed information about a specific project.
Parameters:
- project_id: ID of the project to retrieve
Example:
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 (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:** The assignees parameter 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.
Example:
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)