Taiga MCP Bridge
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| LOG_LEVEL | No | Logging level | INFO |
| TAIGA_API_URL | No | Base URL for the Taiga API | http://localhost:9000 |
| TAIGA_PASSWORD | No | Taiga password for auto-authentication | |
| TAIGA_USERNAME | No | Taiga username for auto-authentication | |
| TAIGA_TRANSPORT | No | Transport mode (stdio or sse) | stdio |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_default_sessionA | Returns the default session ID if auto-authentication from environment variables was successful. |
| loginA | Logs into a Taiga instance. Uses environment variables as defaults if parameters not provided. |
| list_projectsB | Lists projects accessible to the authenticated user. verbosity: 'minimal' (id/name/slug), 'standard' (default), 'full'. Uses default session if session_id not provided. |
| list_all_projectsA | Lists all projects visible to the user (requires admin privileges for full list). verbosity: 'minimal', 'standard' (default), 'full'. Uses default session if session_id not provided. |
| get_projectA | Gets detailed information about a specific project by its ID. verbosity: 'minimal', 'standard' (default), 'full'. Uses default session if session_id not provided. |
| get_project_by_slugA | Gets detailed information about a specific project by its slug. verbosity: 'minimal', 'standard' (default), 'full'. Uses default session if session_id not provided. |
| create_projectA | Creates a new project. verbosity: 'minimal', 'standard' (default), 'full'. Uses default session if session_id not provided. |
| update_projectB | Updates details of an existing project. verbosity: 'minimal', 'standard' (default), 'full'. Uses default session if session_id not provided. |
| delete_projectA | Deletes a project by its ID. This is irreversible. Uses default session if session_id not provided. |
| list_user_storiesB | Lists user stories within a specific project, optionally filtered. Results include both 'id' (internal, use for get/update/delete) and 'ref' (human-readable '#N' shown in Taiga UI). verbosity: 'minimal' (id/ref/subject/status/project), 'standard' (default), 'full'. Uses default session if session_id not provided. |
| create_user_storyC | Creates a new user story within a project. verbosity: 'minimal', 'standard' (default), 'full'. Uses default session if session_id not provided. |
| get_user_storyA | Gets detailed information about a specific user story by its internal ID (not the ref number shown in Taiga UI). Use get_user_story_by_ref if you have the '#N' reference number instead. verbosity: 'minimal', 'standard' (default), 'full'. Uses default session if session_id not provided. |
| get_user_story_by_refA | Gets a user story by its human-readable reference number (the '#N' shown in Taiga UI). Requires the project_id. Use this instead of get_user_story when you have a ref number. verbosity: 'minimal', 'standard' (default), 'full'. Uses default session if session_id not provided. |
| update_user_storyC | Updates details of an existing user story. verbosity: 'minimal', 'standard' (default), 'full'. Uses default session if session_id not provided. |
| delete_user_storyA | Deletes a user story by its ID. Uses default session if session_id not provided. |
| assign_user_story_to_userB | Assigns a specific user story to a specific user. Uses default session if session_id not provided. |
| unassign_user_story_from_userA | Unassigns a specific user story (sets assigned user to null). Uses default session if session_id not provided. |
| get_user_story_statusesA | Lists the available statuses for user stories within a specific project. Uses default session if session_id not provided. |
| list_tasksA | Lists tasks within a specific project, optionally filtered. Results include both 'id' (internal, use for get/update/delete) and 'ref' (human-readable '#N' shown in Taiga UI). verbosity: 'minimal' (id/ref/subject/status/project), 'standard' (default), 'full'. Uses default session if session_id not provided. |
| create_taskB | Creates a new task within a project. verbosity: 'minimal', 'standard' (default), 'full'. Uses default session if session_id not provided. |
| get_taskA | Gets detailed information about a specific task by its internal ID (not the ref number shown in Taiga UI). Use get_task_by_ref if you have the '#N' reference number instead. verbosity: 'minimal', 'standard' (default), 'full'. Uses default session if session_id not provided. |
| get_task_by_refA | Gets a task by its human-readable reference number (the '#N' shown in Taiga UI). Requires the project_id. Use this instead of get_task when you have a ref number. verbosity: 'minimal', 'standard' (default), 'full'. Uses default session if session_id not provided. |
| update_taskB | Updates details of an existing task. verbosity: 'minimal', 'standard' (default), 'full'. Uses default session if session_id not provided. |
| delete_taskA | Deletes a task by its ID. Uses default session if session_id not provided. |
| assign_task_to_userB | Assigns a specific task to a specific user. Uses default session if session_id not provided. |
| unassign_task_from_userB | Unassigns a specific task (sets assigned user to null). Uses default session if session_id not provided. |
| get_task_statusesA | Lists the available statuses for tasks within a specific project. Uses default session if session_id not provided. |
| list_issuesA | Lists issues within a specific project, optionally filtered. Results include both 'id' (internal, use for get/update/delete) and 'ref' (human-readable '#N' shown in Taiga UI). verbosity: 'minimal' (id/ref/subject/status/priority/severity/project), 'standard' (default), 'full'. Uses default session if session_id not provided. |
| create_issueC | Creates a new issue within a project. verbosity: 'minimal', 'standard' (default), 'full'. Uses default session if session_id not provided. |
| get_issueA | Gets detailed information about a specific issue by its internal ID (not the ref number shown in Taiga UI). Use get_issue_by_ref if you have the '#N' reference number instead. verbosity: 'minimal', 'standard' (default), 'full'. Uses default session if session_id not provided. |
| get_issue_by_refA | Gets an issue by its human-readable reference number (the '#N' shown in Taiga UI). Requires the project_id. Use this instead of get_issue when you have a ref number. verbosity: 'minimal', 'standard' (default), 'full'. Uses default session if session_id not provided. |
| update_issueB | Updates details of an existing issue. verbosity: 'minimal', 'standard' (default), 'full'. Uses default session if session_id not provided. |
| delete_issueC | Deletes an issue by its ID. Uses default session if session_id not provided. |
| assign_issue_to_userB | Assigns a specific issue to a specific user. Uses default session if session_id not provided. |
| unassign_issue_from_userA | Unassigns a specific issue (sets assigned user to null). Uses default session if session_id not provided. |
| get_issue_statusesA | Lists the available statuses for issues within a specific project. Uses default session if session_id not provided. |
| get_issue_prioritiesB | Lists the available priorities for issues within a specific project. Uses default session if session_id not provided. |
| get_issue_severitiesB | Lists the available severities for issues within a specific project. Uses default session if session_id not provided. |
| get_issue_typesA | Lists the available types for issues within a specific project. Uses default session if session_id not provided. |
| list_epicsC | Lists epics within a specific project, optionally filtered. Results include both 'id' (internal, use for get/update/delete) and 'ref' (human-readable '#N' shown in Taiga UI). verbosity: 'minimal' (id/ref/subject/status/project), 'standard' (default), 'full'. Uses default session if session_id not provided. |
| create_epicC | Creates a new epic within a project. verbosity: 'minimal', 'standard' (default), 'full'. Uses default session if session_id not provided. |
| get_epicA | Gets detailed information about a specific epic by its internal ID (not the ref number shown in Taiga UI). Use get_epic_by_ref if you have the '#N' reference number instead. verbosity: 'minimal', 'standard' (default), 'full'. Uses default session if session_id not provided. |
| get_epic_by_refA | Gets an epic by its human-readable reference number (the '#N' shown in Taiga UI). Requires the project_id. Use this instead of get_epic when you have a ref number. verbosity: 'minimal', 'standard' (default), 'full'. Uses default session if session_id not provided. |
| update_epicC | Updates details of an existing epic. verbosity: 'minimal', 'standard' (default), 'full'. Uses default session if session_id not provided. |
| delete_epicB | Deletes an epic by its ID. Uses default session if session_id not provided. |
| assign_epic_to_userB | Assigns a specific epic to a specific user. Uses default session if session_id not provided. |
| unassign_epic_from_userA | Unassigns a specific epic (sets assigned user to null). Uses default session if session_id not provided. |
| link_user_story_to_epicB | Links a User Story to an Epic. Uses default session if session_id not provided. |
| list_milestonesA | Lists milestones (sprints) within a specific project. verbosity: 'minimal' (id/name/slug/project), 'standard' (default), 'full'. Uses default session if session_id not provided. |
| create_milestoneC | Creates a new milestone (sprint) within a project. verbosity: 'minimal', 'standard' (default), 'full'. Uses default session if session_id not provided. |
| get_milestoneB | Gets detailed information about a specific milestone by its ID. verbosity: 'minimal', 'standard' (default), 'full'. Uses default session if session_id not provided. |
| update_milestoneB | Updates details of an existing milestone. verbosity: 'minimal', 'standard' (default), 'full'. Uses default session if session_id not provided. |
| delete_milestoneB | Deletes a milestone by its ID. Uses default session if session_id not provided. |
| get_project_membersA | Lists members of a specific project. verbosity: 'minimal' (id/user/full_name), 'standard' (default), 'full'. Uses default session if session_id not provided. |
| invite_project_userC | Invites a user to a project by email with a specific role. Uses default session if session_id not provided. |
| list_wiki_pagesA | Lists wiki pages within a specific project. verbosity: 'minimal' (id/slug/project), 'standard' (default), 'full'. Uses default session if session_id not provided. |
| get_wiki_pageA | Gets a specific wiki page by its ID. verbosity: 'minimal', 'standard' (default), 'full'. Uses default session if session_id not provided. |
| create_wiki_pageC | Creates a new wiki page. verbosity: 'minimal', 'standard' (default), 'full'. Uses default session if session_id not provided. |
| logoutA | Invalidates the current session_id. Uses default session if session_id not provided. |
| session_statusA | Checks if the provided session_id is currently active and valid. Uses default session if session_id not provided. |
| add_commentA | Add a comment to a Taiga object (issue, task, user_story, or epic). Args: object_id: The ID of the object to comment on object_type: Type of object: 'issue', 'task', 'user_story', 'userstory', or 'epic' comment: The comment text to add session_id: Optional session ID (uses default if not provided) Returns: dict with status confirmation |
| list_commentsA | List comments on a Taiga object (issue, task, user_story, or epic). Args: object_id: The ID of the object object_type: Type of object: 'issue', 'task', 'user_story', 'userstory', or 'epic' session_id: Optional session ID (uses default if not provided) Returns: List of comment dicts with id, comment, comment_html, user, and created_at |
| searchB | Search within a project for user stories, tasks, issues, wiki pages and more. Returns results grouped by type. Uses default session if session_id not provided. |
| bulk_create_user_storiesB | Create multiple user stories at once from a newline-separated list of subjects. Returns created stories. Uses default session if session_id not provided. |
| bulk_create_tasksA | Create multiple tasks at once from a newline-separated list of subjects within a user story. Returns created tasks. Uses default session if session_id not provided. |
| bulk_create_epicsA | Create multiple epics at once from a newline-separated list of subjects. Returns created epics. Uses default session if session_id not provided. |
| bulk_update_story_sprintA | Move multiple user stories to a sprint (milestone) at once. Provide story IDs and the target sprint ID. Uses default session if session_id not provided. |
| get_project_statsB | Get project statistics including total points, assigned points, completed points, and velocity. Uses default session if session_id not provided. |
| get_project_issue_statsA | Get issue statistics for a project: counts by severity, priority, status, type and more. Uses default session if session_id not provided. |
| get_milestone_statsA | Get sprint/milestone statistics: burndown data, completed/total points, days info. Uses default session if session_id not provided. |
| list_custom_attributesA | List custom attribute definitions for a project. object_type: 'user_story', 'task', 'issue', or 'epic'. Returns attribute names, types, and IDs. Uses default session if session_id not provided. |
| get_custom_attribute_valuesB | Get custom attribute values for a specific item. object_type: 'user_story', 'task', 'issue', or 'epic'. object_id is the item's internal ID. Uses default session if session_id not provided. |
| set_custom_attribute_valuesC | Set custom attribute values for a specific item. Provide attributes_values as a JSON string mapping attribute IDs to values, e.g. '{"123": "high", "456": 42}'. Uses default session if session_id not provided. |
| get_historyA | Get the change history of an item. object_type: 'user_story', 'task', 'issue', 'epic', or 'wiki_page'. Returns all changes including field edits, comments, and status changes. Uses default session if session_id not provided. |
| get_project_timelineB | Get recent activity timeline for a project. Shows all recent changes by all team members. Uses default session if session_id not provided. |
| get_user_timelineB | Get recent activity timeline for a specific user. Shows all their recent actions across projects. Uses default session if session_id not provided. |
| watch_itemA | Start watching an item to receive notifications. object_type: 'user_story', 'task', 'issue', 'epic', 'milestone', or 'wiki_page'. Uses default session if session_id not provided. |
| unwatch_itemA | Stop watching an item. object_type: 'user_story', 'task', 'issue', 'epic', 'milestone', or 'wiki_page'. Uses default session if session_id not provided. |
| upvote_itemA | Vote for an item (upvote). object_type: 'user_story', 'task', 'issue', or 'epic'. Uses default session if session_id not provided. |
| downvote_itemA | Remove your vote from an item (downvote). object_type: 'user_story', 'task', 'issue', or 'epic'. Uses default session if session_id not provided. |
| update_wiki_pageA | Update an existing wiki page's content, slug, or other fields. Requires the current version number for optimistic concurrency. Uses default session if session_id not provided. |
| delete_wiki_pageA | Delete a wiki page by its ID. This action is irreversible. Uses default session if session_id not provided. |
| list_wiki_linksB | List wiki navigation links for a project. These are the sidebar links in the wiki. Uses default session if session_id not provided. |
| create_wiki_linkB | Create a wiki navigation link (sidebar entry). Uses default session if session_id not provided. |
| delete_wiki_linkA | Delete a wiki navigation link by its ID. Uses default session if session_id not provided. |
| get_project_tagsA | Get all tags and their colors for a project. Uses default session if session_id not provided. |
| create_project_tagA | Create a new tag in a project with an optional color (hex like '#FF0000'). Uses default session if session_id not provided. |
| delete_project_tagA | Delete a tag from a project. All items with this tag will have it removed. Uses default session if session_id not provided. |
| list_rolesA | List all roles defined in a project. Shows role names, permissions, and IDs. Uses default session if session_id not provided. |
| list_pointsA | List all point values (for story estimation) defined in a project. Shows point names, values, and IDs. Uses default session if session_id not provided. |
| get_filters_dataB | Get available filter options for listing items: statuses, tags, assigned users, roles, etc. object_type: 'user_story', 'task', 'issue', or 'epic'. Useful for building dynamic filters. Uses default session if session_id not provided. |
| resolveB | Resolve a project slug and optional item reference numbers to internal IDs. Useful when you have a project slug (from URL) and need the project_id, or a '#N' ref number and need the internal ID. Uses default session if session_id not provided. |
| list_attachmentsB | List all attachments for an item. object_type: 'user_story', 'task', 'issue', 'epic', or 'wiki_page'. Uses default session if session_id not provided. |
| delete_attachmentB | Delete an attachment by its ID. object_type: 'user_story', 'task', 'issue', 'epic', or 'wiki_page'. Uses default session if session_id not provided. |
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
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/talhaorak/pytaiga-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server