plane-mcp-connector
Interface with Plane's programmatic interfaces for comprehensive oversight and manipulation of organizational structures, task entities, and automated routines. Facilitate the updating, tracking, and analytical review of project artifacts while boosting synergistic efforts and operational efficacy.
Author

makeplane
Quick Info
Actions
Tags
Plane Model Context Protocol Bridge
The Plane MCP Bridge establishes a Model Context Protocol (MCP) conduit to your Plane deployment, enabling automated agents and software utilities to interface programmatically with your workspace data.
If you are engineering intelligent assistants, scripting routine maintenance tasks, or developing workflow-centric utilities, this server furnishes a direct pathway to Plane’s Application Programming Interface—permitting the instantiation of workspaces, the administration of tickets, the designation of assignees, and synchronization maintenance with AI-driven apparatus.
Core Capabilities
This bridge unlocks numerous valuable functionalities for any user interacting with Plane:
-
Instantly provision new work areas and associated items directly via your AI interface or application layer.
-
Modify status, delegate assignments, set custom attributes, or append annotations—all via automated calls.
-
Navigate tickets through defined pipelines and dynamically alter their status.
-
Structure endeavors utilizing organizational tags, component groupings, and defined timeframes (Cycles).
-
Conduct deep data introspection on team output across multiple projects.
-
Construct sophisticated applications that interact naturally with Plane, such as an AI mechanism logging time spent or a bot maintaining workspace neatness.
Available Functions
Personnel
get_user- Retrieve details for the currently authenticated user
- Parameters: None required
Projects
get_projects- Fetch the complete registry of projects accessible to the user
-
Parameters: None required
-
create_project - Establish a novel project entity
- Parameters:
name(string, mandatory): The desired designation for the project
Ticket Classifications (Issue Types)
-
list_issue_types- Enumerate all established classifications for a given project
- Parameters:
project_id(string, mandatory): The globally unique identifier (UUID) of the project
-
get_issue_type - Fetch granular attributes of a specific classification type
-
Parameters:
project_id(string, mandatory): Project UUIDtype_id(string, mandatory): Classification UUID
-
create_issue_type - Introduce a fresh classification type within a project
-
Parameters:
project_id(string, mandatory): Project UUIDissue_type_data: A data structure containing:name(string, mandatory): Label for the classification typedescription(string, mandatory): Elaborate explanation for the classification type
-
update_issue_type - Modify the configuration of an existing classification type
-
Parameters:
project_id(string, mandatory): Project UUIDtype_id(string, mandatory): Classification UUIDissue_type_data(object): Key-value pairs specifying updates to the classification attributes
-
delete_issue_type - Permanently discard a classification type
- Parameters:
project_id(string, mandatory): Project UUIDtype_id(string, mandatory): Classification UUID
Statuses (States)
list_states- Retrieve all defined workflow steps for a designated project
-
Parameters:
project_id(string, mandatory): Project UUID
-
get_state - Obtain the detailed configuration of an individual workflow step
-
Parameters:
project_id(string, mandatory): Project UUIDstate_id(string, mandatory): Workflow Step UUID
-
create_state - Institute a new workflow step within a project context
-
Parameters:
project_id(string, mandatory): Project UUIDstate_data: A data structure containing:name(string, mandatory): Designation for the workflow stepcolor(string, mandatory): Hex or named color code representing the step
-
update_state - Revise the parameters of an extant workflow step
-
Parameters:
project_id(string, mandatory): Project UUIDstate_id(string, mandatory): Workflow Step UUIDstate_data(object): Attributes slated for revision
-
delete_state - Erase a workflow step
- Parameters:
project_id(string, mandatory): Project UUIDstate_id(string, mandatory): Workflow Step UUID
Tags (Labels)
list_labels- Fetch every organizational tag associated with a specific project
-
Parameters:
project_id(string, mandatory): Project UUID
-
get_label - Retrieve the specifics of a particular organizational tag
-
Parameters:
project_id(string, mandatory): Project UUIDlabel_id(string, mandatory): Tag UUID
-
create_label - Institute a new organizational tag within a project structure
-
Parameters:
project_id(string, mandatory): Project UUIDlabel_data: A data structure containing:name(string, mandatory): The name of the tagcolor(string, mandatory): Color mapping for the tag
-
update_label - Modify an extant organizational tag
-
Parameters:
project_id(string, mandatory): Project UUIDlabel_id(string, mandatory): Tag UUIDlabel_data(object): Attributes designated for update
-
delete_label - Remove an organizational tag
- Parameters:
project_id(string, mandatory): Project UUIDlabel_id(string, mandatory): Tag UUID
Work Items (Issues)
get_issue_using_readable_identifier- Retrieve work item details leveraging its human-readable reference (e.g., PROJ-123)
-
Parameters:
project_identifier(string, mandatory): The abbreviated code identifying the project (e.g., "PROJ")issue_identifier(string, mandatory): The sequential number of the work item (e.g., "123")
-
get_issue_comments - Fetch all commentary associated with a specific work item
-
Parameters:
project_id(string, mandatory): Project UUIDissue_id(string, mandatory): Work Item UUID
-
add_issue_comment - Append new commentary to a work item
-
Parameters:
project_id(string, mandatory): Project UUIDissue_id(string, mandatory): Work Item UUIDcomment_html(string, mandatory): The HyperText Markup Language body of the commentary
-
create_issue - Generate a brand new work item
-
Parameters:
project_id(string, mandatory): Project UUIDissue_data: A data structure containing:name(string, mandatory): The title of the work itemdescription_html(string, mandatory): The HTML-formatted core content of the work item
-
update_issue - Modify the attributes of an existing work item
- Parameters:
project_id(string, mandatory): Project UUIDissue_id(string, mandatory): Work Item UUIDissue_data(object): Attributes to be revised for the work item
Groupings (Modules)
list_modules- Retrieve all structural groupings within a designated project
-
Parameters:
project_id(string, mandatory): Project UUID
-
get_module - Fetch the configuration details of a specific structural grouping
-
Parameters:
project_id(string, mandatory): Project UUIDmodule_id(string, mandatory): Grouping UUID
-
create_module - Establish a new structural grouping within a project boundary
-
Parameters:
project_id(string, mandatory): Project UUIDmodule_data: A data structure containing:name(string, mandatory): Designation for the structural grouping
-
update_module - Adjust the properties of an extant structural grouping
-
Parameters:
project_id(string, mandatory): Project UUIDmodule_id(string, mandatory): Grouping UUIDmodule_data(object): Fields earmarked for modification
-
delete_module - Decommission a structural grouping
- Parameters:
project_id(string, mandatory): Project UUIDmodule_id(string, mandatory): Grouping UUID
Grouping Contents (Module Issues)
list_module_issues- Fetch all work items categorized under a specific structural grouping
-
Parameters:
project_id(string, mandatory): Project UUIDmodule_id(string, mandatory): Grouping UUID
-
add_module_issues - Associate a collection of work items with a structural grouping
-
Parameters:
project_id(string, mandatory): Project UUIDmodule_id(string, mandatory): Grouping UUIDissues(string[], mandatory): A list of work item UUIDs to be included
-
delete_module_issue - Detach a work item from its assigned structural grouping
- Parameters:
project_id(string, mandatory): Project UUIDmodule_id(string, mandatory): Grouping UUIDissue_id(string, mandatory): UUID of the work item to detach
Iterations (Cycles)
list_cycles- Retrieve all defined iterations for a specific project scope
-
Parameters:
project_id(string, mandatory): Project UUID
-
get_cycle - Obtain the detailed parameters of a specific iteration
-
Parameters:
project_id(string, mandatory): Project UUIDcycle_id(string, mandatory): Iteration UUID
-
create_cycle - Institute a new iteration period within a project context
- Parameters:
project_id(string, mandatory): Project UUIDcycle_data: A data structure containing:name(string, mandatory): Designation for the iterationstart_date(string, mandatory): Beginning demarcation (Format: YYYY-MM-DD)end_date(string, mandatory) : Concluding demarcation (Format: YYYY-MM-DD)
update_cycle- Revise the attributes of an extant iteration
-
Parameters:
project_id(string, mandatory): Project UUIDcycle_id(string, mandatory): Iteration UUIDcycle_data(object): Fields slated for updating on the iteration
-
delete_cycle - Terminate an iteration definition
- Parameters:
project_id(string, mandatory): Project UUIDcycle_id(string, mandatory): Iteration UUID
Iteration Contents (Cycle Issues)
list_cycle_issues- Fetch all work items scoped to a specific iteration period
-
Parameters:
project_id(string, mandatory): Project UUIDcycle_id(string, mandatory): Iteration UUID
-
add_cycle_issues - Assign work items to a defined iteration period
-
Parameters:
project_id(string, mandatory): Project UUIDcycle_id(string, mandatory): Iteration UUIDissues(string[], mandatory): An array comprising the UUIDs of the work items to append
-
delete_cycle_issue - Remove a work item's association with an iteration period
- Parameters:
project_id(string, mandatory): Project UUIDcycle_id(string, mandatory): Iteration UUIDissue_id(string, mandatory): UUID of the work item to disassociate
Effort Logging (Work Logs)
get_issue_worklogs- Retrieve all recorded effort logs against a specific work item
-
Parameters:
project_id(string, mandatory): Project UUIDissue_id(string, mandatory): Work Item UUID
-
get_total_worklogs - Calculate the cumulative logged effort duration for an entire project
-
Parameters:
project_id(string, mandatory): Project UUID
-
create_worklog - Log a new entry detailing performed work against an item
-
Parameters:
project_id(string, mandatory): Project UUIDissue_id(string, mandatory): Work Item UUIDworklog_data: A data structure containing:description(string, mandatory): A summary of the accomplished taskduration(integer, mandatory): Time expenditure quantified in minutes
-
update_worklog - Modify the details of a previously submitted effort log
-
Parameters:
project_id(string, mandatory): Project UUIDissue_id(string, mandatory): Work Item UUIDworklog_id(string, mandatory): Effort Log UUIDworklog_data(object): Attributes designated for modification within the log
-
delete_worklog - Eliminate an effort log record
- Parameters:
project_id(string, mandatory): Project UUIDissue_id(string, mandatory): Work Item UUIDworklog_id(string, mandatory): Effort Log UUID
Setup Parameters
PLANE_API_KEY- The requisite authentication token for Plane. Generate this from the Workspace Administration section under API Tokens (/settings/api-tokens/) within the Plane interface.PLANE_WORKSPACE_SLUG- The unique identifier (slug) for your operational Plane instance. This element is discernable from the URL path.PLANE_API_HOST_URL(Optional) - The endpoint URL for the Plane API service. Defaults to https://api.plane.so/
Deployment Instructions
Claude Desktop Integration
You can incorporate Plane into Claude Desktop by updating your configuration file (claude_desktop_config.json):
{
"mcpServers": {
"plane": {
"command": "npx",
"args": [
"-y",
"@makeplane/plane-mcp-server"
],
"env": {
"PLANE_API_KEY": "
VSCode Connectivity
Alternatively, link Plane to VSCode by modifying your .vscode.json or mcp.json configuration file:
{
"servers": {
"plane": {
"command": "npx",
"args": [
"-y",
"@makeplane/plane-mcp-server"
],
"env": {
"PLANE_API_KEY": "
Licensing
This MCP bridge is distributed under the terms of the MIT License. This grants freedom to utilize, adapt, and disseminate the software, provided adherence to the stipulations outlined in the MIT License. Further specifics are available in the project's LICENSE document.
