@slayoffer/productboard-mcp
v1.4.2
Published
MCP server for Productboard API integration - enables AI assistants to interact with Productboard
Maintainers
Readme
Productboard MCP Server
Overview
A complete Model Context Protocol (MCP) server that provides comprehensive integration with the Productboard API. This server enables AI assistants and other MCP clients to interact with Productboard through specialized tools covering 100% of major Productboard functionalities including features, products, customer feedback, users, OKRs, releases, webhooks, analytics, and more.
Features
🔐 Robust Authentication
- Bearer token support for simple integrations
- OAuth2 flow for enterprise scenarios
- Secure credential storage with encryption
- Automatic token refresh and validation
🛠️ Comprehensive Tool Coverage
Total Tools Supported: 49 unique Productboard MCP tools representing 100% coverage of the Phase 5 specification.
Feature Management (6 tools) ✅
pb_feature_create- Create new featurespb_feature_list- List features with filteringpb_feature_get- Get detailed feature informationpb_feature_update- Update existing featurespb_feature_delete- Delete or archive featurespb_feature_bulk_update- Bulk update multiple features
Product Management (3 tools) ✅
pb_product_create- Create products/componentspb_product_list- List products and componentspb_product_hierarchy- Get product hierarchy
Note Management (3 tools) ✅
pb_note_create- Create customer feedback notespb_note_list- List notes with filteringpb_note_attach- Attach notes to features
User Management (2 tools) ✅
pb_user_current- Get current user infopb_user_list- List workspace users
Company Management (1 tool) ✅
pb_company_list- List companies
Objectives & Key Results (7 tools) ✅
pb_objective_create- Create objectivespb_objective_list- List objectivespb_objective_update- Update objectivespb_objective_link_feature- Link features to objectivespb_keyresult_create- Create key resultspb_keyresult_list- List key resultspb_keyresult_update- Update key results
Release Management (7 tools) ✅
pb_release_create- Create releasespb_release_list- List releasespb_release_update- Update releasespb_release_feature_add- Add features to releasespb_release_feature_remove- Remove features from releasespb_release_timeline- Get release timelinepb_release_status_update- Update release status
Custom Fields (3 tools) ✅
pb_customfield_create- Create custom fieldspb_customfield_list- List custom fieldspb_customfield_value_set- Set custom field values
Webhooks (5 tools) ✅
pb_webhook_create- Create webhook subscriptionspb_webhook_list- List webhookspb_webhook_update- Update webhook settingspb_webhook_delete- Delete webhookspb_webhook_test- Test webhook endpoints
Search & Analytics (7 tools) ✅
pb_search- Global searchpb_search_features- Advanced feature searchpb_search_notes- Advanced note searchpb_search_products- Product searchpb_analytics_feature_metrics- Feature analyticspb_analytics_user_engagement- User engagement metricspb_analytics_feedback_trends- Feedback trend analysis
Bulk Operations (5 tools) ✅
pb_feature_bulk_create- Bulk create featurespb_feature_bulk_delete- Bulk delete featurespb_note_bulk_create- Bulk create notespb_note_bulk_attach- Bulk attach notes
Integrations (2 tools) ✅
pb_jira_sync- JIRA synchronizationpb_to_jira- Export to JIRA
Export (1 tool) ✅
pb_export- Data export functionality
🚀 Performance & Reliability
- Rate limiting with token bucket algorithm
- Automatic retry with exponential backoff
- Response caching for read operations
- Comprehensive error handling and logging
- Concurrent request support with proper queuing
🔒 Security First
- No hardcoded credentials
- Input validation and sanitization
- HTTPS-only communication
- Encrypted credential storage
- Comprehensive audit logging
Quick Start
Prerequisites
- Node.js 18+
- Productboard Pro plan or higher (for API access)
- MCP-compatible client (Claude Desktop, etc.)
Installation
Option 1: Install via npm (Recommended)
# Install globally
npm install -g @slayoffer/productboard-mcp
# Or run directly with npx
npx @slayoffer/productboard-mcpOption 2: Clone from source
git clone https://github.com/Enreign/productboard-mcp.git
cd productboard-mcp
npm install
npm run build
npm startEnvironment Configuration
Create a .env file with your Productboard credentials:
# Bearer Token Authentication (recommended for getting started)
PRODUCTBOARD_API_TOKEN=your-api-token
# OAuth2 Authentication (for production use)
OAUTH_CLIENT_ID=your-client-id
OAUTH_CLIENT_SECRET=your-client-secret
# Server Configuration
MCP_SERVER_PORT=3000
LOG_LEVEL=info
CACHE_ENABLED=trueMCP Client Configuration
Add this server to your MCP client configuration (e.g., Claude Desktop):
If installed via npm:
{
"mcpServers": {
"productboard": {
"command": "npx",
"args": ["-y", "@slayoffer/productboard-mcp"],
"env": {
"PRODUCTBOARD_API_TOKEN": "your-token-here"
}
}
}
}If installed from source:
{
"mcpServers": {
"productboard": {
"command": "node",
"args": ["/path/to/productboard-mcp/dist/index.js"],
"env": {
"PRODUCTBOARD_API_TOKEN": "your-token-here"
}
}
}
}Development
Available Scripts
npm run dev- Start development server with hot reloadnpm run build- Build for productionnpm test- Run test suitenpm run test:watch- Run tests in watch modenpm run test:coverage- Generate coverage reportnpm run lint- Run ESLintnpm run format- Format code with Prettier
Project Structure
src/
├── core/ # MCP server core functionality
├── auth/ # Authentication management
├── api/ # Productboard API client
├── tools/ # MCP tool implementations
├── middleware/ # Rate limiting, caching, validation
└── utils/ # Logging, configuration, helpers
tests/
├── unit/ # Unit tests
├── integration/ # Integration tests
└── e2e/ # End-to-end tests