| name | ccpm-mcp-management |
| description | Discovers, manages, and troubleshoots Model Context Protocol (MCP) servers required for CCPM. Auto-activates when MCP tools unavailable, plugin installation fails, or user asks about available tools. Focuses on CCPM-required servers (Linear, GitHub, Context7) and optional PM integrations (Jira, Confluence, BitBucket, Slack). |
CCPM MCP Management
MCP server discovery, configuration, and troubleshooting for CCPM workflows.
When to Use
This skill auto-activates when:
- User asks: "MCP server", "tools available", "Linear not working", "what tools do I have"
- Running
/ccpm:utils:helpcommand - Plugin installation issues
- MCP tools failing to load
- Troubleshooting CCPM setup
CCPM Required MCP Servers
Critical Servers (Must Have)
1. Linear MCP Server
- Purpose: Task tracking, issue management, Linear Documents
- Used by: All
/ccpm:*commands - Tools:
linear_create_issue,linear_update_issue,linear_create_document, etc. - Setup: Required in
.claude/mcp.json
2. GitHub MCP Server
- Purpose: PR creation, repository operations
- Used by:
/ccpm:complete:finalize - Tools:
github_create_pr,github_list_prs,github_get_repo - Setup: Required for completion workflow
3. Context7 MCP Server
- Purpose: Latest library documentation
- Used by:
/ccpm:spec:write,docs-seekerskill - Tools:
context7_fetch_docs,context7_search - Setup: Required for spec writing
Optional Servers (PM Integrations)
4. Jira MCP Server (if using Jira)
- Purpose: Jira ticket integration
- Used by:
/ccpm:planning:create,/ccpm:complete:finalize - Tools:
jira_get_issue,jira_update_status - Setup: Optional, only if syncing with Jira
5. Confluence MCP Server (if using Confluence)
- Purpose: Confluence page integration
- Used by:
/ccpm:planning:plan - Tools:
confluence_get_page,confluence_search - Setup: Optional, for gathering context
6. Slack MCP Server (if using Slack)
- Purpose: Team notifications
- Used by:
/ccpm:complete:finalize - Tools:
slack_post_message,slack_list_channels - Setup: Optional, for notifications
MCP Server Discovery
Check Available Servers
User: "What MCP servers are available?"
Claude: [ccpm-mcp-management activates]
Discovering MCP servers...
✅ REQUIRED SERVERS (All present):
1. Linear MCP
Status: Connected
Tools: 15 available
- linear_create_issue
- linear_update_issue
- linear_get_issue
- linear_create_document
- linear_list_teams
[+ 10 more]
2. GitHub MCP
Status: Connected
Tools: 8 available
- github_create_pr
- github_list_prs
- github_get_repo
[+ 5 more]
3. Context7 MCP
Status: Connected
Tools: 3 available
- context7_fetch_docs
- context7_search
- context7_list_sources
⚠️ OPTIONAL SERVERS (Not configured):
4. Jira MCP - Not configured
Impact: Cannot sync with Jira
Setup: Add to .claude/mcp.json if needed
5. Confluence MCP - Not configured
Impact: Cannot fetch Confluence pages
Setup: Add to .claude/mcp.json if needed
6. Slack MCP - Not configured
Impact: Cannot send notifications
Setup: Add to .claude/mcp.json if needed
All required servers operational ✅
Troubleshooting Server Issues
User: "Linear tools not working"
Claude: [ccpm-mcp-management activates]
Troubleshooting Linear MCP server...
Step 1: CHECK CONNECTION
Testing Linear MCP connection...
❌ Connection failed: ECONNREFUSED
Step 2: DIAGNOSE
Possible causes:
1. Linear MCP server not running
2. Incorrect configuration in .claude/mcp.json
3. Missing Linear API key
4. Network connectivity issues
Step 3: VERIFY CONFIGURATION
Checking .claude/mcp.json...
Found configuration:
```json
{
"mcpServers": {
"linear": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-linear"],
"env": {
"LINEAR_API_KEY": "${LINEAR_API_KEY}"
}
}
}
}
Step 4: CHECK ENVIRONMENT Checking LINEAR_API_KEY... ❌ Environment variable not set
ROOT CAUSE: Missing LINEAR_API_KEY
FIX:
Get Linear API key from https://linear.app/settings/api
Add to environment: export LINEAR_API_KEY="lin_api_xxxxxxxxxxxxx"
Restart Claude Code
Would you like help setting up the API key?
## Configuration Guide
### Minimal CCPM Configuration
**`.claude/mcp.json` (required servers only)**:
```json
{
"mcpServers": {
"linear": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-linear"],
"env": {
"LINEAR_API_KEY": "${LINEAR_API_KEY}"
}
},
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_TOKEN": "${GITHUB_TOKEN}"
}
},
"context7": {
"command": "npx",
"args": ["-y", "@context7/mcp-server"],
"env": {
"CONTEXT7_API_KEY": "${CONTEXT7_API_KEY}"
}
}
}
}
Full CCPM Configuration
With optional PM integrations:
{
"mcpServers": {
"linear": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-linear"],
"env": {
"LINEAR_API_KEY": "${LINEAR_API_KEY}"
}
},
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_TOKEN": "${GITHUB_TOKEN}"
}
},
"context7": {
"command": "npx",
"args": ["-y", "@context7/mcp-server"],
"env": {
"CONTEXT7_API_KEY": "${CONTEXT7_API_KEY}"
}
},
"jira": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-jira"],
"env": {
"JIRA_URL": "https://your-company.atlassian.net",
"JIRA_EMAIL": "${JIRA_EMAIL}",
"JIRA_API_TOKEN": "${JIRA_API_TOKEN}"
}
},
"confluence": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-confluence"],
"env": {
"CONFLUENCE_URL": "https://your-company.atlassian.net/wiki",
"CONFLUENCE_EMAIL": "${CONFLUENCE_EMAIL}",
"CONFLUENCE_API_TOKEN": "${CONFLUENCE_API_TOKEN}"
}
},
"slack": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-slack"],
"env": {
"SLACK_BOT_TOKEN": "${SLACK_BOT_TOKEN}",
"SLACK_TEAM_ID": "${SLACK_TEAM_ID}"
}
}
}
}
Common Issues & Solutions
Issue 1: MCP Server Not Found
Symptom: "MCP server 'linear' not found"
Solution:
# Check if MCP server package exists
npx @modelcontextprotocol/server-linear --version
# If not found, package name might be wrong
# Check official MCP registry
# Update .claude/mcp.json with correct package name
Issue 2: Authentication Failures
Symptom: "Unauthorized" or "Invalid API key"
Solution:
# Check environment variables are set
echo $LINEAR_API_KEY
echo $GITHUB_TOKEN
# If empty, add to shell profile
echo 'export LINEAR_API_KEY="your-key"' >> ~/.zshrc
source ~/.zshrc
# Or use .env file
cat > .env << EOF
LINEAR_API_KEY=lin_api_xxxxx
GITHUB_TOKEN=ghp_xxxxx
CONTEXT7_API_KEY=ctx7_xxxxx
EOF
# Restart Claude Code to pick up changes
Issue 3: Command Not Found
Symptom: "npx: command not found"
Solution:
# Install Node.js and npm
# macOS
brew install node
# Linux
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt-get install -y nodejs
# Windows
# Download from https://nodejs.org
# Verify installation
node --version
npm --version
npx --version
Issue 4: Permission Denied
Symptom: "EACCES: permission denied"
Solution:
# Fix npm permissions
mkdir ~/.npm-global
npm config set prefix '~/.npm-global'
echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.zshrc
source ~/.zshrc
# Or use sudo (not recommended)
sudo npx @modelcontextprotocol/server-linear
Integration with CCPM Commands
/ccpm:utils:help Integration
User: "/ccpm:utils:help"
Claude: [ccpm-mcp-management activates]
CCPM Help - Available Tools
MCP Server Status:
✅ Linear (15 tools) - Task tracking
✅ GitHub (8 tools) - PR creation
✅ Context7 (3 tools) - Documentation
❌ Jira (not configured) - Optional
❌ Slack (not configured) - Optional
Available CCPM Commands: 37 total
- Spec Management: 6 commands
- Planning: 4 commands
- Implementation: 3 commands
- Verification: 3 commands
- Completion: 1 command
- Utilities: 20 commands
For setup help: Ask "How do I configure Jira MCP?"
For troubleshooting: Mention "Linear not working"
Plugin Installation Verification
After installing CCPM plugin:
Claude: [ccpm-mcp-management auto-activates]
Verifying CCPM plugin requirements...
Checking required MCP servers:
✅ Linear MCP - Connected
✅ GitHub MCP - Connected
❌ Context7 MCP - Not found
CCPM plugin requires Context7 for documentation features.
Setup instructions:
1. Add to .claude/mcp.json:
```json
"context7": {
"command": "npx",
"args": ["-y", "@context7/mcp-server"],
"env": {
"CONTEXT7_API_KEY": "${CONTEXT7_API_KEY}"
}
}
Get API key: https://context7.ai/signup
Set environment variable: export CONTEXT7_API_KEY="ctx7_xxxxx"
Restart Claude Code
Would you like help with any of these steps?
## Server Health Monitoring
### Health Check Command
User: "Check MCP server health"
Claude: [ccpm-mcp-management activates]
Running health checks on all MCP servers...
LINEAR MCP: Status: ✅ Healthy Response time: 45ms Tools available: 15/15 Last successful call: 2 minutes ago Rate limit: 4,800 / 5,000 remaining
GITHUB MCP: Status: ✅ Healthy Response time: 120ms Tools available: 8/8 Last successful call: 15 minutes ago Rate limit: 4,950 / 5,000 remaining
CONTEXT7 MCP: Status: ⚠️ Degraded Response time: 3,200ms (slow) Tools available: 3/3 Last successful call: 1 hour ago Note: Docs fetching slower than usual, still functional
JIRA MCP: Status: ❌ Not configured Impact: Cannot sync Jira tickets Action: Configure if Jira integration needed
Overall health: Good (2/3 required servers healthy)
## Best Practices
### Do's
- ✅ Set environment variables in shell profile (persistent)
- ✅ Use `.env` file for project-specific keys
- ✅ Test MCP connections after setup
- ✅ Monitor rate limits
- ✅ Keep MCP server packages updated
- ✅ Document custom MCP configurations
### Don'ts
- ❌ Hardcode API keys in `.claude/mcp.json`
- ❌ Commit API keys to git
- ❌ Ignore authentication errors
- ❌ Run with sudo unnecessarily
- ❌ Use outdated MCP server versions
- ❌ Skip health checks
## Summary
This skill provides:
- ✅ MCP server discovery
- ✅ Configuration validation
- ✅ Troubleshooting guidance
- ✅ CCPM-specific server requirements
- ✅ Health monitoring
- ✅ Setup assistance
**Focus**: CCPM required servers (Linear, GitHub, Context7) + optional PM integrations (Jira, Confluence, Slack)
**Philosophy**: Reliable infrastructure for reliable PM workflows. Monitor, maintain, troubleshoot proactively.
---
**Source**: Adapted from [claudekit-skills/mcp-management](https://github.com/mrgoonie/claudekit-skills)
**License**: MIT
**CCPM Integration**: `/ccpm:utils:help`, plugin installation, troubleshooting
**Required Servers**: Linear, GitHub, Context7
**Optional Servers**: Jira, Confluence, Slack, BitBucket