The Kanboard MCP Server is a powerful Go-based integration that connects AI assistants with Kanboard project management systems, allowing you to manage projects, tasks, users, and workflows using natural language commands.
Clone the repository:
git clone https://github.com/bivex/kanboard-mcp.git
cd kanboard-mcp
Build the executable:
On Windows:
build-release.bat
On Linux/macOS:
./build-release.sh
Manual build:
go build -ldflags="-s -w" -o kanboard-mcp .
Set up your Kanboard credentials using environment variables:
export KANBOARD_API_ENDPOINT="https://your-kanboard-url/jsonrpc.php"
export KANBOARD_API_KEY="your-kanboard-api-key"
export KANBOARD_USERNAME="your-kanboard-username"
export KANBOARD_PASSWORD="your-kanboard-password"
Create the MCP configuration file for your client:
Location:
C:\Users\YOUR_USERNAME\AppData\Roaming\Cursor\.cursor\mcp_config.json
~/.cursor/mcp_config.json
Configuration:
{
"mcpServers": {
"kanboard-mcp-server": {
"command": "/path/to/your/kanboard-mcp",
"args": [],
"env": {
"KANBOARD_API_ENDPOINT": "https://your-kanboard-url/jsonrpc.php",
"KANBOARD_API_KEY": "your-kanboard-api-key",
"KANBOARD_USERNAME": "your-kanboard-username",
"KANBOARD_PASSWORD": "your-kanboard-password"
}
}
}
}
After saving the configuration, restart your MCP client (Cursor, Claude Desktop, etc.) for changes to take effect.
Tool | Description | Example |
---|---|---|
get_projects |
List all projects | "Show me all Kanboard projects" |
create_project |
Create new projects | "Create a project called 'Website Redesign' with description 'Redesign the company website' and owner 1" |
get_project_by_id |
Get project information by ID | "Get project details for ID 123" |
get_project_by_name |
Get project information by name | "Get project details for name 'My Project'" |
update_project |
Update a project | "Update project 1 with new name 'New Website' and description 'Updated description'" |
remove_project |
Remove a project | "Remove project with ID 456" |
Tool | Description | Example |
---|---|---|
get_tasks |
Get project tasks | "Get tasks for 'Website Redesign' project" |
create_task |
Create new tasks | "Create task 'Design homepage' in 'Website Redesign'" |
update_task |
Modify existing tasks | "Update task 123 with description 'New requirements'" |
delete_task |
Remove tasks | "Delete task with ID 456" |
get_task |
Get task by the unique id | "Get details for task 789" |
assign_task |
Assign tasks to users | "Assign the API task to John" |
set_task_due_date |
Set task deadlines | "Set due date for login task to 2024-01-15" |
Tool | Description | Example |
---|---|---|
create_comment |
Create a new comment | "Create a comment 'Meeting notes' for task 123 by user 1" |
get_task_comments |
Get task comments | "Show all comments for task 123" |
update_comment |
Update a comment | "Update comment 456 content to 'Revised notes'" |
# Create a new project
"Create a new project called 'Mobile App Development'"
# Add tasks to the project
"Create task 'Design UI mockups' in project 'Mobile App Development'"
"Create task 'Set up development environment' in project 'Mobile App Development'"
# Get all tasks
"Get tasks for 'Mobile App Development' project"
# Move tasks between columns
"Move task 1 to 'In Progress' column"
"Move task 2 to 'Done' column"
# Create a new team member
"Create user 'alice.smith' with password 'secure123' and email '[email protected]'"
# Assign user to project
"Assign user 'alice.smith' to project 'Mobile App Development' as project-member"
# Assign tasks to team members
"Assign task 1 to user 'alice.smith'"
# Create categories for better organization
"Create category 'Critical Bugs'"
"Create category 'Feature Requests'"
# Add comments to tasks
"Add comment 'This needs urgent attention' to task 5"
# Set deadlines
"Set due date for task 3 to 2024-01-20"
To add this MCP server to Claude Code, run this command in your terminal:
claude mcp add-json "kanboard-mcp-server" '{"command":"/path/to/your/kanboard-mcp","args":[],"env":{"KANBOARD_API_ENDPOINT":"https://your-kanboard-url/jsonrpc.php","KANBOARD_API_KEY":"your-kanboard-api-key","KANBOARD_USERNAME":"your-kanboard-username","KANBOARD_PASSWORD":"your-kanboard-password"}}'
See the official Claude Code MCP documentation for more details.
There are two ways to add an MCP server to Cursor. The most common way is to add the server globally in the ~/.cursor/mcp.json
file so that it is available in all of your projects.
If you only need the server in a single project, you can add it to the project instead by creating or adding it to the .cursor/mcp.json
file.
To add a global MCP server go to Cursor Settings > Tools & Integrations and click "New MCP Server".
When you click that button the ~/.cursor/mcp.json
file will be opened and you can add your server like this:
{
"mcpServers": {
"kanboard-mcp-server": {
"command": "/path/to/your/kanboard-mcp",
"args": [],
"env": {
"KANBOARD_API_ENDPOINT": "https://your-kanboard-url/jsonrpc.php",
"KANBOARD_API_KEY": "your-kanboard-api-key",
"KANBOARD_USERNAME": "your-kanboard-username",
"KANBOARD_PASSWORD": "your-kanboard-password"
}
}
}
}
To add an MCP server to a project you can create a new .cursor/mcp.json
file or add it to the existing one. This will look exactly the same as the global MCP server example above.
Once the server is installed, you might need to head back to Settings > MCP and click the refresh button.
The Cursor agent will then be able to see the available tools the added MCP server has available and will call them when it needs to.
You can also explicitly ask the agent to use the tool by mentioning the tool name and describing what the function does.
To add this MCP server to Claude Desktop:
1. Find your configuration file:
~/Library/Application Support/Claude/claude_desktop_config.json
%APPDATA%\Claude\claude_desktop_config.json
~/.config/Claude/claude_desktop_config.json
2. Add this to your configuration file:
{
"mcpServers": {
"kanboard-mcp-server": {
"command": "/path/to/your/kanboard-mcp",
"args": [],
"env": {
"KANBOARD_API_ENDPOINT": "https://your-kanboard-url/jsonrpc.php",
"KANBOARD_API_KEY": "your-kanboard-api-key",
"KANBOARD_USERNAME": "your-kanboard-username",
"KANBOARD_PASSWORD": "your-kanboard-password"
}
}
}
}
3. Restart Claude Desktop for the changes to take effect