taiga-mcp-server
Version:
Full-featured MCP server for Taiga project management with advanced sprint and issue tracking. Based on mcpTAIGA by adriapedralbes, enhanced with substantial modifications. Developed collaboratively with Claude Code (AI-assisted development).
567 lines (449 loc) โข 24.2 kB
Markdown
# ๐ Taiga MCP Server
A powerful **Model Context Protocol (MCP)** server that enables natural language interaction with **Taiga project management** systems. Seamlessly manage your projects, sprints, user stories, tasks, and issues through conversational AI.
> ๐ค **AI-Powered Development**: This project was developed collaboratively with **Claude Code** (claude.ai/code), showcasing the potential of AI-assisted software development.
[](https://badge.fury.io/js/taiga-mcp-server)
[](https://opensource.org/licenses/ISC)
[](https://github.com/greddy7574/taigaMcpServer)
## โจ Features
### ๐ Complete Project Management
- **Projects**: List and view project details
- **Sprints**: Create, list, and track sprint progress with detailed statistics
- **User Stories**: Create and manage user stories within projects
- **Tasks**: Create tasks linked to user stories
- **Issues**: Full issue lifecycle management with sprint associations
### ๐ Advanced Sprint-Issue Tracking
- View issues by sprint with complete relationship mapping
- Get detailed issue information including sprint assignments
- Track sprint progress with completion statistics
- Real-time status updates and progress monitoring
### ๐ Batch Operations
- **Batch Create Issues**: Create multiple issues in one operation (up to 20)
- **Batch Create User Stories**: Bulk create user stories with story points
- **Batch Create Tasks**: Mass create tasks for specific user stories
- **Smart Error Handling**: Individual failures don't affect other items
- **Detailed Reporting**: Success/failure status for each item
### ๐ Advanced Query Syntax
- **SQL-like Query Language**: Use `field:operator:value` syntax for precise searches
- **Logical Operators**: Combine conditions with AND, OR, NOT
- **Text Matching**: Fuzzy search, wildcards, and substring matching
- **Date Ranges**: Flexible time-based queries (today, last_week, >7d)
- **Sorting & Limiting**: ORDER BY and LIMIT clauses for result control
### ๐ฌ Team Collaboration System
- **Comment Management**: Add, view, edit, and delete comments on any work item
- **Discussion Threads**: Complete comment history with user information
- **Team Communication**: Enhanced collaboration through structured discussions
- **Real-time Updates**: Immediate comment synchronization across team
### ๐ File Attachment Management
- **Flexible File Upload**: Support both file path and Base64 upload methods
- **Claude Client Integration**: Optimized for Claude Desktop file handling
- **Multi-format Support**: Images, documents, PDFs, and all major file types
- **Smart Path Resolution**: Automatic file path detection from common locations
- **Download Management**: Efficient file download with path management
- **Storage Organization**: Clean attachment management with descriptions
### ๐๏ธ Epic Management (Enterprise)
- **Large-scale Organization**: Create and manage Epic-level project components
- **Hierarchical Structure**: Link User Stories to Epics for complete project visibility
- **Progress Tracking**: Epic-level progress statistics and completion tracking
- **Enterprise Planning**: Support for roadmap planning and feature releases
### ๐ Wiki Management (Knowledge Base)
- **Documentation Hub**: Create and manage project Wiki pages for knowledge sharing
- **Markdown Support**: Full Markdown editing with rich content formatting
- **Flexible Identification**: Access pages by ID or user-friendly slug names
- **Collaboration Features**: Watch/unwatch pages for change notifications
- **Version Control**: Automatic versioning prevents edit conflicts
- **Content Organization**: Centralized documentation management per project
### ๐ฌ Natural Language Interface
- **"List all projects"**
- **"Show me Sprint 5 progress statistics"**
- **"Create a high-priority bug issue in project X"**
- **"Which issues are assigned to Sprint 3?"**
- **"Get details for issue #123"**
## ๐ ๏ธ Installation & Setup
### Prerequisites
- **Node.js** (v14 or higher) - [Download here](https://nodejs.org)
- **Taiga account** with API access
### Option 1: NPX (Recommended)
No installation required - runs latest version automatically:
```bash
# NPM Registry (official)
npx taiga-mcp-server
# GitHub Package Registry (alternative)
npx @greddy7574/taiga-mcp-server
```
### Option 2: Global Installation
```bash
# From NPM Registry
npm install -g taiga-mcp-server
taiga-mcp
# From GitHub Packages
npm install -g @greddy7574/taiga-mcp-server
```
### Option 3: Docker Deployment
```bash
# Build the image
docker build -t taiga-mcp-server .
# Run with environment file
docker run --rm -i --env-file .env taiga-mcp-server
# Or with environment variables
docker run --rm -i \
-e TAIGA_API_URL=https://api.taiga.io/api/v1 \
-e TAIGA_USERNAME=your_username \
-e TAIGA_PASSWORD=your_password \
taiga-mcp-server
# Using docker-compose
docker-compose up --build
```
## โ๏ธ Configuration
### Claude Desktop Integration
#### NPX Method (Recommended)
Add to your Claude Desktop `config.json`:
```json
{
"mcpServers": {
"taiga-mcp": {
"command": "npx",
"args": ["taiga-mcp-server"],
"env": {
"TAIGA_API_URL": "https://api.taiga.io/api/v1",
"TAIGA_USERNAME": "your_username",
"TAIGA_PASSWORD": "your_password"
}
}
}
}
```
#### Docker Method
```json
{
"mcpServers": {
"taiga-mcp": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-e", "TAIGA_API_URL=https://api.taiga.io/api/v1",
"-e", "TAIGA_USERNAME=your_username",
"-e", "TAIGA_PASSWORD=your_password",
"taiga-mcp-server:latest"
]
}
}
}
```
#### Docker Compose Method
```json
{
"mcpServers": {
"taiga-mcp": {
"command": "docker-compose",
"args": [
"-f", "/path/to/project/docker-compose.yml",
"run", "--rm", "taiga-mcp-server"
],
"cwd": "/path/to/project"
}
}
}
```
### Custom Taiga Instance
For self-hosted Taiga instances:
```json
{
"env": {
"TAIGA_API_URL": "https://your-taiga-domain.com/api/v1",
"TAIGA_USERNAME": "your_username",
"TAIGA_PASSWORD": "your_password"
}
}
```
## ๐ฏ Usage Examples
### Sprint Management
```
๐ฃ๏ธ "Show me all sprints in project MyApp"
๐ Returns: List of sprints with status and dates
๐ฃ๏ธ "Get detailed statistics for Sprint 5"
๐ Returns: Progress stats, completion rates, user stories count
๐ฃ๏ธ "Create a new sprint called 'Q1 Release' from 2024-01-01 to 2024-03-31"
โ
Returns: Created sprint details
```
### Issue Tracking
```
๐ฃ๏ธ "List all issues in project MyApp"
๐ Returns: Issues with sprint assignments and status
๐ฃ๏ธ "Show me issue #123 details"
๐ Returns: Complete issue info including sprint, assignee, timeline
๐ฃ๏ธ "Update issue 838 status to 'In Progress'"
๐ Returns: Issue status updated with confirmation
๐ฃ๏ธ "Assign issue 838 to John Doe"
๐ค Returns: Issue assigned to team member with details
๐ฃ๏ธ "Add issue 838 to Sprint 1.0.95"
๐ Returns: Issue moved to sprint with confirmation
๐ฃ๏ธ "Remove issue 838 from sprint"
๐ Returns: Issue removed from sprint assignment
๐ฃ๏ธ "What issues are in Sprint 3?"
๐ Returns: All issues assigned to that sprint
```
### Project Management
```
๐ฃ๏ธ "Create a high-priority bug issue: 'Login page not working'"
๐ Returns: Created issue with details
๐ฃ๏ธ "List all user stories in project MyApp"
๐ Returns: User stories with status and assignments
๐ฃ๏ธ "Create these 5 issues in batch: Bug1, Bug2, Feature1, Task1, Task2"
๐ Returns: Batch creation results with individual success/failure status
```
### Batch Operations Examples
```
๐ฃ๏ธ "Batch create these issues in MyApp:
- Bug: Login page broken (High priority)
- Feature: Add search functionality (Medium priority)
- Task: Update documentation (Low priority)"
๐ Returns: Created 3/3 issues successfully with reference numbers
๐ฃ๏ธ "Batch create user stories:
- User registration flow (5 points)
- Password reset feature (3 points)
- Email notifications (2 points)"
๐ Returns: Created 3/3 user stories with story point assignments
```
### Advanced Query Examples
```
๐ฃ๏ธ "Find all high priority bugs assigned to john: status:open AND priority:high AND assignee:john AND type:bug"
๐ Returns: Filtered list of critical bugs needing attention
๐ฃ๏ธ "Show user stories with 5+ points created this week: points:>=5 AND created:this_week ORDER BY points DESC"
๐ Returns: High-value stories with detailed point breakdown
๐ฃ๏ธ "Search for API-related tasks: subject:contains:\"API\" OR description:contains:\"API\" LIMIT 10"
๐ Returns: All tasks mentioning API with relevance ranking
```
### Comment System Examples
```
๐ฃ๏ธ "Add comment to issue #123: 'This needs more testing before deployment'"
๐ฌ Returns: Comment added successfully with timestamp and user info
๐ฃ๏ธ "Show me all comments for user story #456"
๐ Returns: Complete comment history with user names and dates
๐ฃ๏ธ "Edit comment #789 to say 'Updated implementation approach'"
โ๏ธ Returns: Comment updated successfully with new content
๐ฃ๏ธ "Delete comment #321"
๐๏ธ Returns: Comment removed from the discussion thread
```
### File Attachment Examples
```
๐ฃ๏ธ "Upload design.pdf to user story #456 with description 'UI mockup v2'"
๐ Returns: File uploaded successfully with size and metadata
๐ฃ๏ธ "Upload screenshot.png to issue #123 in project MyApp"
๐ธ Returns: Image file attached with automatic MIME type detection
๐ฃ๏ธ "List all attachments for issue #789"
๐ Returns: Complete attachment list with filenames, sizes, and upload dates
๐ฃ๏ธ "Download attachment #123 to /Downloads/documents/"
โฌ๏ธ Returns: File downloaded successfully to specified location
๐ฃ๏ธ "Delete attachment #456"
๐๏ธ Returns: Attachment removed from the project
```
### File Upload Methods
The system supports two upload methods optimized for different use cases:
**Method 1: File Path (Recommended for Claude Desktop)**
```json
{
"itemType": "issue",
"itemId": 123,
"projectIdentifier": "MyApp",
"filePath": "design.pdf",
"description": "UI mockup v2"
}
```
**Method 2: Base64 Data (For programmatic use)**
```json
{
"itemType": "issue",
"itemId": 123,
"projectIdentifier": "MyApp",
"fileData": "base64_encoded_file_content",
"fileName": "design.pdf",
"mimeType": "application/pdf",
"description": "UI mockup v2"
}
```
### Epic Management Examples
```
๐ฃ๏ธ "Create epic 'API v2.0 Migration' in project MyApp with description 'Complete API redesign'"
๐๏ธ Returns: Epic created with ID, color, and project association
๐ฃ๏ธ "List all epics in project MyApp"
๐ Returns: Epic list with progress stats and linked user stories count
๐ฃ๏ธ "Get details for epic #789"
๐ Returns: Epic overview with progress, status, and linked user stories
๐ฃ๏ธ "Link user story #456 to epic #789"
๐ Returns: Story successfully linked to epic for better organization
๐ฃ๏ธ "Update epic #789 status to 'In Progress' and add tag 'backend'"
โ๏ธ Returns: Epic updated with new status and organizational tags
```
### Wiki Management Examples
```
๐ฃ๏ธ "Create wiki page 'api-documentation' in project MyApp with content about API usage"
๐ Returns: Wiki page created with slug, project association, and content preview
๐ฃ๏ธ "List all wiki pages in project MyApp"
๐ Returns: Complete wiki page list with modification dates and content summaries
๐ฃ๏ธ "Get wiki page 'user-guide' details from project MyApp"
๐ Returns: Full wiki content, metadata, watchers, and version information
๐ฃ๏ธ "Update wiki page 'installation-guide' with new Docker instructions"
โ๏ธ Returns: Wiki page updated with new content and incremented version
๐ฃ๏ธ "Watch wiki page 'api-documentation' for change notifications"
๐๏ธ Returns: Successfully subscribed to wiki page change notifications
๐ฃ๏ธ "Delete wiki page 'outdated-info' from project MyApp"
๐๏ธ Returns: Wiki page permanently deleted with confirmation details
```
## ๐ง Available Tools (42 Total)
### ๐ Authentication (1 tool)
| Tool | Description |
|------|-------------|
| `authenticate` | Authenticate with Taiga API |
### ๐ Project Management (2 tools)
| Tool | Description |
|------|-------------|
| `listProjects` | Get all accessible projects |
| `getProject` | View detailed project information |
### ๐ Sprint Management (4 tools)
| Tool | Description |
|------|-------------|
| `listMilestones` | List all sprints in a project |
| `getMilestoneStats` | Get sprint progress and statistics |
| `createMilestone` | Create new sprints with dates |
| `getIssuesByMilestone` | View all issues in a sprint |
### ๐ Issue Management (6 tools)
| Tool | Description |
|------|-------------|
| `listIssues` | List issues with sprint info |
| `getIssue` | Get detailed issue information |
| `createIssue` | Create issues with priorities/types |
| `updateIssueStatus` | Update issue status (e.g., "In Progress", "Done") |
| `addIssueToSprint` | Assign issues to sprints or remove from sprints |
| `assignIssue` | Assign issues to team members or unassign |
### ๐ User Story Management (2 tools)
| Tool | Description |
|------|-------------|
| `listUserStories` | View user stories in a project |
| `createUserStory` | Create new user stories |
### โ
Task Management (1 tool)
| Tool | Description |
|------|-------------|
| `createTask` | Create tasks linked to user stories |
### ๐ Batch Operations (3 tools)
| Tool | Description |
|------|-------------|
| `batchCreateIssues` | Batch create multiple issues (up to 20) |
| `batchCreateUserStories` | Batch create multiple user stories |
| `batchCreateTasks` | Batch create multiple tasks for a user story |
### ๐ Advanced Search (3 tools)
| Tool | Description |
|------|-------------|
| `advancedSearch` | Execute advanced SQL-like queries |
| `queryHelp` | Get query syntax help and examples |
| `validateQuery` | Validate query syntax before execution |
### ๐ฌ Comment System (4 tools)
| Tool | Description |
|------|-------------|
| `addComment` | Add comments to issues, stories, or tasks |
| `listComments` | View comment history for items |
| `editComment` | Edit existing comments |
| `deleteComment` | Delete comments |
### ๐ File Attachments (4 tools)
| Tool | Description | Key Features |
|------|-------------|--------------|
| `uploadAttachment` | Upload files to issues, stories, or tasks | Dual method support (file path/Base64), smart path resolution |
| `listAttachments` | View attachment list for items | Complete metadata with file sizes and upload dates |
| `downloadAttachment` | Download attachments by ID | Flexible download path management |
| `deleteAttachment` | Delete attachments | Safe deletion with confirmation |
### ๐๏ธ Epic Management (6 tools)
| Tool | Description |
|------|-------------|
| `createEpic` | Create large-scale Epic features |
| `listEpics` | List all Epics in a project |
| `getEpic` | Get Epic details and progress stats |
| `updateEpic` | Update Epic information and status |
| `linkStoryToEpic` | Link User Stories to Epics |
| `unlinkStoryFromEpic` | Remove Story-Epic associations |
### ๐ Wiki Management (6 tools)
| Tool | Description |
|------|-------------|
| `createWikiPage` | Create project Wiki pages with Markdown support |
| `listWikiPages` | List all Wiki pages in a project |
| `getWikiPage` | Get Wiki page details by ID or slug |
| `updateWikiPage` | Update Wiki page content and settings |
| `deleteWikiPage` | Delete Wiki pages (irreversible) |
| `watchWikiPage` | Watch/unwatch Wiki pages for notifications |
## ๐ Why Choose Taiga MCP Server?
- **๐ฅ Zero Setup**: Works immediately with npx
- **๐ง AI-Native**: Built specifically for conversational project management
- **๐ Complete Integration**: Full Taiga API coverage with 39 tools
- **๐ Rich Data**: Detailed progress tracking and statistics
- **๐ฏ Sprint-Focused**: Advanced sprint-issue relationship tracking
- **๐ก๏ธ Secure**: Environment-based credential management
- **๐ Batch Operations**: Efficient bulk operations for large projects
- **๐ฌ Team Collaboration**: Complete comment system for enhanced communication
- **๐ File Management**: Dual upload methods (file path/Base64) with Claude Desktop optimization
- **๐๏ธ Enterprise-Ready**: Epic management for large-scale project organization
- **๐ Knowledge Management**: Complete Wiki system for project documentation
- **๐ Advanced Search**: SQL-like query syntax for complex data filtering
## ๐ Acknowledgments
### Attribution and Legal Notice
This project was **inspired by** [mcpTAIGA](https://github.com/adriapedralbes/mcpTAIGA) by [adriapedralbes](https://github.com/adriapedralbes). This version represents a substantial rewrite and reimplementation with entirely new architecture, features, and functionality while using the same ISC license terms.
### AI-Assisted Development
๐ค **Developed with Claude Code**: This entire project was collaboratively developed with [Claude Code](https://claude.ai/code), demonstrating the power of AI-assisted software development. The architecture, implementation, testing, and documentation were all created through human-AI collaboration.
### Key Enhancements
From the original basic concept, this version expanded to include:
- **Complete Architectural Redesign**: Professional modular tool system (v1.5.0+)
- **33 MCP Tools**: From basic functionality to enterprise-grade project management
- **Advanced Sprint Management**: Complete milestone tracking with detailed statistics
- **Enhanced Issue Management**: Full issue lifecycle with sprint associations
- **Batch Operations**: Efficient bulk creation for large-scale projects (v1.6.0)
- **Advanced Query System**: SQL-like syntax for complex data filtering (v1.6.1)
- **Team Collaboration**: Complete comment system for enhanced communication (v1.7.0)
- **File Management**: Full attachment lifecycle with multi-format support (v1.7.1)
- **Epic Management**: Enterprise-grade large-scale project organization (v1.8.0)
- **Professional Code Quality**: Error handling, formatting, comprehensive testing
- **Comprehensive Documentation**: Professional guides and examples in 3 languages
- **Automated CI/CD**: Dual registry publishing with complete automation
**Original concept**: Basic Taiga MCP connectivity
**This implementation**: Full-featured Taiga project management suite with entirely new architecture
This reimplementation acknowledges the foundational concept while showcasing the collaborative potential of AI-assisted software development.
## ๐ Documentation
**Complete documentation is available on our [GitHub Wiki](https://github.com/greddy7574/taigaMcpServer/wiki) ๐**
### ๐ Multi-Language Support
Our documentation is available in three languages:
- **๐บ๐ธ [English](https://github.com/greddy7574/taigaMcpServer/wiki/Home.en)** - Complete English documentation
- **๐จ๐ณ [็ฎไฝไธญๆ](https://github.com/greddy7574/taigaMcpServer/wiki/Home.zh-CN)** - ๅฎๆด็็ฎไฝไธญๆๆๆกฃ
- **๐น๐ผ [็น้ซไธญๆ](https://github.com/greddy7574/taigaMcpServer/wiki/Home.zh-TW)** - ๅฎๆด็็น้ซไธญๆๆไปถ
### ๐ฏ Quick Navigation
| Section | English | ็ฎไฝไธญๆ | ็น้ซไธญๆ |
|---------|---------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------|---------------------------------------------------------------------------------|
| **Getting Started** | [Installation Guide](https://github.com/greddy7574/taigaMcpServer/wiki/Installation.en) | [ๅฎ่ฃ
ๆๅ](https://github.com/greddy7574/taigaMcpServer/wiki/Installation.zh-CN) | [ๅฎ่ฃๆๅ](https://github.com/greddy7574/taigaMcpServer/wiki/Installation.zh-TW) |
| **API Reference** | [API Reference](https://github.com/greddy7574/taigaMcpServer/wiki/API-Reference.en) | [API ๅ่](https://github.com/greddy7574/taigaMcpServer/wiki/API-Reference.zh-CN) | [API ๅ่](https://github.com/greddy7574/taigaMcpServer/wiki/API-Reference.zh-TW) |
| **Architecture** | [Architecture](https://github.com/greddy7574/taigaMcpServer/wiki/ARCHITECTURE.en) | [ๆถๆๆฆ่ง](https://github.com/greddy7574/taigaMcpServer/wiki/ARCHITECTURE.zh-CN) | [ๆถๆงๆฆ่ฆฝ](https://github.com/greddy7574/taigaMcpServer/wiki/ARCHITECTURE.zh-TW) |
| **CI/CD Guide** | [CI/CD Guide](https://github.com/greddy7574/taigaMcpServer/wiki/CICD.en) | [CI/CD ๆๅ](https://github.com/greddy7574/taigaMcpServer/wiki/CICD.zh-CN) | [CI/CD ๆๅ](https://github.com/greddy7574/taigaMcpServer/wiki/CICD.zh-TW) |
### ๐ฉโ๐ป Developer Resources
| Topic | English | ็ฎไฝไธญๆ | ็น้ซไธญๆ |
|-------|-------------------------------------------------------------------------------------|----------------------------------------------------------------------------|----------------------------------------------------------------------------|
| **Design Document** | [Design](https://github.com/greddy7574/taigaMcpServer/wiki/DESIGN.en) | [่ฎพ่ฎกๆๆกฃ](https://github.com/greddy7574/taigaMcpServer/wiki/DESIGN.zh-CN) | [่จญ่จๆไปถ](https://github.com/greddy7574/taigaMcpServer/wiki/DESIGN.zh-TW) |
| **First Steps** | [First Steps](https://github.com/greddy7574/taigaMcpServer/wiki/First-Steps.en) | [็ฌฌไธๆญฅ](https://github.com/greddy7574/taigaMcpServer/wiki/First-Steps.zh-CN) | [็ฌฌไธๆญฅ](https://github.com/greddy7574/taigaMcpServer/wiki/First-Steps.zh-TW) |
| **Configuration** | [Configuration](https://github.com/greddy7574/taigaMcpServer/wiki/Configuration.en) | [้
็ฝฎ่ฏดๆ](https://github.com/greddy7574/taigaMcpServer/wiki/Configuration.zh-CN) | [่จญๅฎ่ชชๆ](https://github.com/greddy7574/taigaMcpServer/wiki/Configuration.zh-TW) |
> ๐ก **Tip**: The Wiki provides better search, navigation, and mobile experience!
## ๐ Automated Publishing
This project features a fully automated CI/CD pipeline:
```bash
npm version patch # Create new version
git push origin main --tags # Trigger automated publishing
```
**Automated Flow**: Tests โ NPM Publish โ GitHub Packages โ Release Creation
**Dual Registry Support**: Available on both NPM and GitHub Package Registry
**Full Documentation**: See [CI/CD Guide](https://github.com/greddy7574/taigaMcpServer/wiki/CICD.en) for complete setup
## ๐ค Contributing
Issues and pull requests are welcome! Please visit our [GitHub repository](https://github.com/greddy7574/taigaMcpServer) to contribute.
## ๐ License
ISC License - This project is licensed under the ISC License, same as the original [mcpTAIGA](https://github.com/adriapedralbes/mcpTAIGA).
### Project Information
- **Original Inspiration**: [adriapedralbes](https://github.com/adriapedralbes) / [mcpTAIGA](https://github.com/adriapedralbes/mcpTAIGA)
- **This Implementation**: Substantial rewrite by greddy7574@gmail.com with AI assistance from Claude Code
- **License**: ISC License
- **Architecture**: Entirely new modular design with 33 MCP tools across 11 categories
- **Current Version**: v1.8.0 - Enterprise Integration Edition with Epic Management
**Enhanced with โค๏ธ for agile teams using Taiga project management**