Taiga MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| LOG_LEVEL | No | How much the server logs (error, info, debug, etc.). | info |
| TAIGA_TOKEN | No | Your Taiga access token. Preferred over username/password. | |
| TAIGA_BASE_URL | Yes | The Taiga API address to connect to. | https://api.taiga.io |
| TAIGA_PASSWORD | No | Your Taiga password. | |
| TAIGA_USERNAME | No | Your Taiga username. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| project_listA | List projects, optionally filtered by the given query parameters. Response is { items, pagination } — pagination has { count, current_page, has_next } read from Taiga. Default page_size is 30. |
| project_getA | Get a single project by id. |
| project_createD | Create a new project. |
| project_updateA | Update an existing project (partial patch — only include the fields you want to change). Taiga's optimistic-concurrency |
| project_deleteA | Delete a project by id. This cannot be undone. Requires confirmation: elicitation-capable clients are prompted interactively; others must call again with confirm: true after reviewing the preview returned by the first call. |
| epic_listA | List epics, optionally filtered by the given query parameters. Response is { items, pagination } — pagination has { count, current_page, has_next } read from Taiga. Default page_size is 30. |
| epic_getA | Get a single epic by id. |
| epic_createA | Create a new epic. Note: if the project's Epics module isn't enabled (is_epics_activated), the epic is still created via the API but stays invisible in Taiga's web UI (no nav item, in-app links 404) until the module is enabled — use project_update to enable it. |
| epic_updateA | Update an existing epic (partial patch — only include the fields you want to change). Taiga's optimistic-concurrency |
| epic_deleteA | Delete a epic by id. This cannot be undone. Requires confirmation: elicitation-capable clients are prompted interactively; others must call again with confirm: true after reviewing the preview returned by the first call. |
| epic_related_user_storiesA | List the user stories linked to an epic. Response is { items, pagination }. |
| epic_link_user_storyA | Link an existing user story to an epic. |
| epic_unlink_user_storyA | Unlink a user story from an epic. |
| user_story_listA | List user_storys, optionally filtered by the given query parameters. Response is { items, pagination } — pagination has { count, current_page, has_next } read from Taiga. Default page_size is 30. Use user_story_filters_data to discover valid status/tags/assigned_to/epic ids cheaply instead of paging through results. |
| user_story_getA | Get a single user_story by id. |
| user_story_createC | Create a new user_story. |
| user_story_updateA | Update an existing user_story (partial patch — only include the fields you want to change). Taiga's optimistic-concurrency |
| user_story_deleteA | Delete a user_story by id. This cannot be undone. Requires confirmation: elicitation-capable clients are prompted interactively; others must call again with confirm: true after reviewing the preview returned by the first call. |
| user_story_assign_milestoneA | Move a user story into a milestone/sprint (or out of one, by omitting milestone). Convenience wrapper over user_story_update. |
| task_listA | List tasks, optionally filtered by the given query parameters. Response is { items, pagination } — pagination has { count, current_page, has_next } read from Taiga. Default page_size is 30. Use task_filters_data to discover valid status/tags/assigned_to ids cheaply instead of paging through results. |
| task_getA | Get a single task by id. |
| task_createC | Create a new task. |
| task_updateA | Update an existing task (partial patch — only include the fields you want to change). Taiga's optimistic-concurrency |
| task_deleteA | Delete a task by id. This cannot be undone. Requires confirmation: elicitation-capable clients are prompted interactively; others must call again with confirm: true after reviewing the preview returned by the first call. |
| issue_listA | List issues, optionally filtered by the given query parameters. Response is { items, pagination } — pagination has { count, current_page, has_next } read from Taiga. Default page_size is 30. Use issue_filters_data to discover valid type/status/priority/severity/tags/assigned_to ids cheaply instead of paging through results. |
| issue_getA | Get a single issue by id. |
| issue_createC | Create a new issue. |
| issue_updateA | Update an existing issue (partial patch — only include the fields you want to change). Taiga's optimistic-concurrency |
| issue_deleteA | Delete a issue by id. This cannot be undone. Requires confirmation: elicitation-capable clients are prompted interactively; others must call again with confirm: true after reviewing the preview returned by the first call. |
| issue_set_classificationA | Set an issue's type/status/priority/severity in one call (only the fields provided are changed). Convenience wrapper over issue_update for this common triage action. |
| milestone_listA | List milestones, optionally filtered by the given query parameters. Response is { items, pagination } — pagination has { count, current_page, has_next } read from Taiga. Default page_size is 30. |
| milestone_getA | Get a single milestone by id. |
| milestone_createC | Create a new milestone. |
| milestone_updateA | Update an existing milestone (partial patch — only include the fields you want to change). Taiga's optimistic-concurrency |
| milestone_deleteA | Delete a milestone by id. This cannot be undone. Requires confirmation: elicitation-capable clients are prompted interactively; others must call again with confirm: true after reviewing the preview returned by the first call. |
| milestone_statsA | Get burndown/points stats for a milestone (sprint): total and completed points, user stories, tasks, and per-day breakdown. |
| wiki_page_listA | List wiki_pages, optionally filtered by the given query parameters. Response is { items, pagination } — pagination has { count, current_page, has_next } read from Taiga. Default page_size is 30. |
| wiki_page_getA | Get a single wiki_page by id. |
| wiki_page_createC | Create a new wiki_page. |
| wiki_page_updateA | Update an existing wiki_page (partial patch — only include the fields you want to change). Taiga's optimistic-concurrency |
| wiki_page_deleteA | Delete a wiki_page by id. This cannot be undone. Requires confirmation: elicitation-capable clients are prompted interactively; others must call again with confirm: true after reviewing the preview returned by the first call. |
| wiki_page_get_by_slugA | Get a wiki page by its project-scoped slug instead of its numeric id. |
| membership_listA | List memberships, optionally filtered by the given query parameters. Response is { items, pagination } — pagination has { count, current_page, has_next } read from Taiga. Default page_size is 30. |
| membership_getA | Get a single membership by id. |
| membership_createC | Create a new membership. |
| membership_updateA | Update an existing membership (partial patch — only include the fields you want to change). Taiga's optimistic-concurrency |
| membership_deleteA | Delete a membership by id. This cannot be undone. Requires confirmation: elicitation-capable clients are prompted interactively; others must call again with confirm: true after reviewing the preview returned by the first call. |
| membership_bulk_createA | Invite multiple members to a project in one call. Each entry needs a role id and either a username or an email — this will send real invitation emails for entries that don't match an existing user. |
| membership_resend_invitationA | Resend a pending project invitation email. |
| comment_addA | Add a comment to an epic, user story, task, or issue. Goes through the same optimistic-concurrency path as a normal update. |
| comment_listA | List the comment history for an epic, user story, task, or issue. Includes plain field-change history entries too — filter on a non-empty |
| comment_editA | Edit the text of an existing comment on an epic, user story, task, or issue. Not gated — editing isn't destructive. |
| comment_deleteA | Delete a comment from an epic, user story, task, or issue. This cannot be undone. Requires confirmation: elicitation-capable clients are prompted interactively; others must call again with confirm: true after reviewing the preview returned by the first call. |
| attachment_uploadA | Upload a file attachment to an epic, user story, task, issue, or wiki page. File contents are passed as base64. |
| attachment_listA | List attachments on an epic, user story, task, issue, or wiki page. Response is { items, pagination }. |
| attachment_downloadA | Download an attachment's file contents as base64, along with its filename, content type, size, and sha1. Rejects files larger than 10485760 bytes before downloading. |
| attachment_deleteA | Delete an attachment by id. This cannot be undone. Requires confirmation: elicitation-capable clients are prompted interactively; others must call again with confirm: true after reviewing the preview returned by the first call. |
| vote_addA | Upvote an epic, user story, task, or issue. Milestones and wiki pages don't support voting. |
| vote_removeA | Remove your vote from an epic, user story, task, or issue. |
| watch_addA | Watch an epic, user story, task, issue, milestone, or wiki page for update notifications. |
| watch_removeA | Stop watching an epic, user story, task, issue, milestone, or wiki page. |
| searchA | Project-scoped text search across epics, user stories, tasks, issues, and wiki pages. Returns id/title matches grouped by type. Response is { items: {epics, userstories, tasks, wikipages, issues}, pagination }. |
| taiga_raw_requestA | Escape hatch: make a raw request to any /api/v1/ endpoint on the configured Taiga instance, for functionality not covered by a dedicated tool (importers, webhooks, application tokens, notify policies, project templates, export/import, etc.). Prefer a dedicated tool when one exists. |
| ref_resolveA | Resolve a project-scoped ref (e.g. "#436" or 436) to its type (issue, user_story, task, or epic) and numeric id, without fetching full details. |
| batch_create_issuesA | Create up to 20 issues in one call. Each item is created independently — a bad item doesn't fail the others. Returns a structured result with per-item success/failure, not a native Taiga bulk-create (which can't carry per-item fields). |
| batch_create_user_storiesA | Create up to 20 user stories in one call. Each item is created independently — a bad item doesn't fail the others. Returns a structured result with per-item success/failure, not a native Taiga bulk-create (which can't carry per-item fields). |
| batch_create_tasksA | Create up to 20 tasks in one call, each under its own parent user story. Each item is created independently — a bad item doesn't fail the others. Returns a structured result with per-item success/failure, not a native Taiga bulk-create (which can't carry per-item fields). |
| user_story_filters_dataA | Get the valid filter values (statuses, tags, assigned users, epics, roles) for user stories in a project, each with a live item count — cheaper than a full user_story_list call just to discover ids. |
| task_filters_dataA | Get the valid filter values (statuses, tags, assigned users, roles) for tasks in a project, each with a live item count — cheaper than a full task_list call just to discover ids. |
| issue_filters_dataA | Get the valid filter values (types, statuses, priorities, severities, tags, assigned users, roles) for issues in a project, each with a live item count — cheaper than a full issue_list call just to discover ids. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/madebyclowd/taiga-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server