๐ง How-To: Troubleshoot Common Issues
Goal: Solve problems quickly and get back to productive architecture analysis.
When to use this guide: When you encounter errors, unexpected behavior, or need to diagnose issues with the MCP ADR Analysis Server.
๐ Troubleshooting Workflowโ
๐จ Emergency Quick Fixesโ
"Tool not found" or "Unknown tool" errorsโ
Problem: AI assistant can't find MCP tools
Quick Fix:
# 1. Verify server is installed
mcp-adr-analysis-server --version
# 2. Check server status
mcp-adr-analysis-server --test
# 3. Restart your MCP client
"Permission denied" errorsโ
Problem: Server can't read/write files
Quick Fix:
# 1. Check directory permissions
ls -la ./
# 2. Create missing directories
mkdir -p ./adrs
# 3. Fix permissions if needed
chmod 755 ./
AI seems confused or gives poor resultsโ
Problem: Context degradation or AI confusion
Quick Fix:
{
"tool": "troubleshoot_guided_workflow",
"parameters": {
"operation": "run_diagnostics"
}
}
Server installed but nothing happensโ
Problem: You installed the server but don't see any tools or analysis capabilities. Quick Fix: The MCP ADR Analysis Server is not a standalone application โ it requires an MCP-compatible client to connect to it.
Install one of the following MCP clients:
- Claude Desktop โ Anthropic's desktop app with built-in MCP support
- Cline โ VS Code extension
- Cursor โ AI-powered code editor with MCP support
- Windsurf โ AI-powered IDE by Codeium
After installing a client, add the server to its MCP configuration (see Quick Setup).
๐ Systematic Diagnosisโ
Step 1: Verify Installationโ
# Check Node.js version (should be โฅ20.0.0)
node --version
# Check server installation
which mcp-adr-analysis-server
mcp-adr-analysis-server --version
# Test basic functionality
mcp-adr-analysis-server --test
Expected outputs:
- Node.js:
v20.x.xor higher - Server version:
MCP ADR Analysis Server v2.1.0(or current version) - Test:
โ Server health check passed
Step 2: Validate Configurationโ
Check your MCP client configuration:
{
"mcpServers": {
"adr-analysis": {
"command": "mcp-adr-analysis-server",
"env": {
"PROJECT_PATH": "/absolute/path/to/project",
"OPENROUTER_API_KEY": "your_openrouter_api_key_here",
"EXECUTION_MODE": "full",
"AI_MODEL": "anthropic/claude-3-sonnet",
"ADR_DIRECTORY": "./adrs",
"LOG_LEVEL": "DEBUG"
}
}
}
}
Common configuration issues:
- โ
"PROJECT_PATH": "."(relative path) - โ
"PROJECT_PATH": "/Users/you/project"(absolute path) - โ Missing
OPENROUTER_API_KEY(required for AI features) - โ Missing
EXECUTION_MODE(should be "full" for AI or "prompt-only" for basic) - โ Missing
ADR_DIRECTORY - โ Wrong command name
Step 3: Test Basic Functionalityโ
Run this diagnostic sequence:
// 1. Test AI execution status
{
"tool": "check_ai_execution_status"
}
// 2. Test file operations
{
"tool": "list_directory",
"parameters": {
"path": "."
}
}
// 3. Test analysis capabilities
{
"tool": "analyze_project_ecosystem",
"parameters": {
"projectPath": ".",
"recursiveDepth": "shallow"
}
}
๐ Specific Problem Solutionsโ
Analysis Returns Empty or Poor Resultsโ
Symptoms:
- "No architectural patterns detected"
- "Project analysis incomplete"
- Generic or unhelpful recommendations
Solution 1: Enhanced Analysis Mode
{
"tool": "analyze_project_ecosystem",
"parameters": {
"projectPath": ".",
"enhancedMode": true,
"knowledgeEnhancement": true,
"recursiveDepth": "comprehensive",
"includeEnvironment": true
}
}
Solution 2: Check Project Structure
# Ensure you have a proper project structure
ls -la
# Should see: package.json, src/, ./, etc.
# Check for hidden files that might indicate project type
ls -la | grep -E "\.(git|env|config)"
Solution 3: Verify Project Path
{
"tool": "read_file",
"parameters": {
"path": "package.json"
}
}
ADR Generation Failsโ
Symptoms:
- "Cannot generate ADR"
- "Missing decision data"
- Generated ADRs are incomplete
Solution 1: Use Structured Decision Data
{
"tool": "generate_adr_from_decision",
"parameters": {
"decisionData": {
"title": "Clear, specific decision title",
"context": "Detailed background and problem statement",
"decision": "Specific choice made",
"rationale": "Why this decision was made",
"consequences": ["Positive outcome 1", "Challenge 1", "Tradeoff 1"]
}
}
}
Solution 2: Get ADR Suggestions First
{
"tool": "suggest_adrs",
"parameters": {
"projectPath": ".",
"analysisScope": "all",
"maxSuggestions": 5
}
}