Skip to content

Commit 635ca18

Browse files
committed
docs(11-04): add MCP tool tests and update documentation
- issue-intelligence-tools.test.ts: 55 tests for tool definitions and executors - docs/TOOLS.md: Add Issue Intelligence Tools section with 4 new tools - STATUS.md: Update Phase 11 completion, tool count to 119 Total Phase 11 tests: 181 new tests
1 parent 74e3357 commit 635ca18

3 files changed

Lines changed: 676 additions & 14 deletions

File tree

STATUS.md

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
## Project Overview
44

5-
MCP GitHub Project Manager is an AI-enabled project management system that integrates GitHub Projects v2 with the Model Context Protocol (MCP). It provides 109 MCP tools for comprehensive project management, issue tracking, sprint planning, sub-issue hierarchies, project templates, project linking, project lifecycle management, advanced search and filtering, and AI-assisted task generation.
5+
MCP GitHub Project Manager is an AI-enabled project management system that integrates GitHub Projects v2 with the Model Context Protocol (MCP). It provides 119 MCP tools for comprehensive project management, issue tracking, sprint planning, sub-issue hierarchies, project templates, project linking, project lifecycle management, advanced search and filtering, AI-assisted task generation, and AI-powered issue intelligence.
66

77
## Architecture Summary
88

@@ -41,14 +41,14 @@ MCP GitHub Project Manager is an AI-enabled project management system that integ
4141

4242
## Current Phase
4343

44-
**Phase 8 of 12: Project Lifecycle and Advanced Operations** - Complete
44+
**Phase 11 of 12: AI Issue Intelligence** - Complete
4545

4646
| Plan | Name | Status |
4747
|------|------|--------|
48-
| 08-01 | Schema Definitions | Complete |
49-
| 08-02 | Project Lifecycle Tools | Complete |
50-
| 08-03 | Advanced Operations Tools | Complete |
51-
| 08-04 | Testing and Verification | Complete |
48+
| 11-01 | Interfaces and Schemas | Complete |
49+
| 11-02 | Enrichment and Label Services | Complete |
50+
| 11-03 | Duplicate Detection and Related Linking | Complete |
51+
| 11-04 | MCP Tools and Testing | Complete |
5252

5353
## Completed Phases
5454

@@ -62,15 +62,18 @@ MCP GitHub Project Manager is an AI-enabled project management system that integ
6262
| 6 | Sub-issues & Status Updates | 8 new MCP tools, 2 repositories, 88 new tests |
6363
| 7 | Project Templates & Linking | 10 new MCP tools, 97 new tests, full documentation |
6464
| 8 | Project Lifecycle & Advanced Ops | 6 new MCP tools, 109 new tests, client-side filtering |
65+
| 9 | AI PRD/Task Enhancement | Confidence scoring, validation rules, dependency analysis, effort estimation |
66+
| 10 | AI Sprint and Roadmap Planning | 4 sprint tools, 2 roadmap tools, velocity-based planning |
67+
| 11 | AI Issue Intelligence | 4 issue intelligence tools (enrich, labels, duplicates, related), 181 new tests |
6568

6669
## MCP Compliance
6770

6871
| Metric | Value |
6972
|--------|-------|
7073
| SDK Version | 1.25.3 |
71-
| Registered Tools | 109 |
72-
| Tools with Annotations | 109 (100%) |
73-
| Tools with Output Schemas | 109 (100%) |
74+
| Registered Tools | 119 |
75+
| Tools with Annotations | 119 (100%) |
76+
| Tools with Output Schemas | 119 (100%) |
7477
| Behavior Pattern Types | 6 (readOnly, destructive, idempotent, openWorld, etc.) |
7578

7679
**Tool Categories:**
@@ -89,6 +92,8 @@ MCP GitHub Project Manager is an AI-enabled project management system that integ
8992
- Linking: 6 tools
9093
- Lifecycle: 3 tools
9194
- Advanced Operations: 3 tools
95+
- Sprint/Roadmap AI: 6 tools
96+
- Issue Intelligence AI: 4 tools
9297

9398
## AI Services
9499

docs/TOOLS.md

Lines changed: 153 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
# MCP Tools Reference
22

3-
This document provides comprehensive documentation for all 115 MCP tools available in the MCP GitHub Project Manager.
3+
This document provides comprehensive documentation for all 119 MCP tools available in the MCP GitHub Project Manager.
44

55
## Overview
66

77
| Metric | Value |
88
|--------|-------|
9-
| Total Tools | 115 |
10-
| Categories | 16 |
9+
| Total Tools | 119 |
10+
| Categories | 17 |
1111
| SDK Version | 1.25.3 |
1212
| All tools have | Behavior annotations, Output schemas |
1313

@@ -42,6 +42,7 @@ All tools are annotated with behavior hints that help MCP clients understand the
4242
14. [Project Lifecycle Tools](#project-lifecycle-tools) (3 tools)
4343
15. [Advanced Operations Tools](#advanced-operations-tools) (3 tools)
4444
16. [Sprint and Roadmap AI Tools](#sprint-and-roadmap-ai-tools) (6 tools)
45+
17. [Issue Intelligence Tools (AI)](#issue-intelligence-tools-ai---phase-11) (4 tools)
4546

4647
---
4748

@@ -2879,9 +2880,155 @@ console.log(`Overall confidence: ${result.overallConfidence.score}%`);
28792880

28802881
---
28812882

2883+
## Issue Intelligence Tools (AI) - Phase 11
2884+
2885+
Phase 11 adds AI-powered issue intelligence capabilities for automated issue enrichment, label suggestion, duplicate detection, and related issue discovery.
2886+
2887+
### enrich_issue
2888+
2889+
AI-powered issue enrichment with structured sections (AI-17).
2890+
2891+
**Input Parameters:**
2892+
| Parameter | Type | Required | Description |
2893+
|-----------|------|----------|-------------|
2894+
| issueTitle | string | Yes | Issue title to enrich |
2895+
| issueDescription | string | Yes | Issue body/description (can be empty) |
2896+
| projectContext | string | No | Project description for context |
2897+
| repositoryLabels | array | No | Available labels for suggestions |
2898+
2899+
**Output:**
2900+
```json
2901+
{
2902+
"original": { "title": "...", "body": "..." },
2903+
"preserveOriginal": true,
2904+
"enrichedBody": "## Problem\n...\n## Solution\n...",
2905+
"sections": {
2906+
"problem": { "content": "...", "confidence": 85 },
2907+
"solution": { "content": "...", "confidence": 80 },
2908+
"context": { "content": "...", "confidence": 75 },
2909+
"impact": { "content": "...", "confidence": 82 },
2910+
"acceptanceCriteria": { "content": "...", "confidence": 90 }
2911+
},
2912+
"suggestedLabels": ["bug", "auth"],
2913+
"overallConfidence": { "score": 82, "tier": "high", ... }
2914+
}
2915+
```
2916+
2917+
**Behavior:** AI operation (non-deterministic, makes external AI calls)
2918+
2919+
---
2920+
2921+
### suggest_labels
2922+
2923+
Multi-tier label suggestions with rationale (AI-18).
2924+
2925+
**Input Parameters:**
2926+
| Parameter | Type | Required | Description |
2927+
|-----------|------|----------|-------------|
2928+
| issueTitle | string | Yes | Issue title for analysis |
2929+
| issueDescription | string | Yes | Issue body/description |
2930+
| existingLabels | array | Yes | Available labels in repository |
2931+
| issueHistory | array | No | Historical issues for pattern learning |
2932+
| config | object | No | Configuration (maxSuggestions, preferExisting, includeNewProposals) |
2933+
2934+
**Output:**
2935+
```json
2936+
{
2937+
"high": [{ "label": "bug", "isExisting": true, "confidence": 0.92, "rationale": "...", "matchedPatterns": ["crash"] }],
2938+
"medium": [{ "label": "auth", "isExisting": true, "confidence": 0.75, "rationale": "...", "matchedPatterns": [] }],
2939+
"low": [],
2940+
"newLabelProposals": [{ "name": "security", "description": "...", "color": "ff0000", "rationale": "..." }],
2941+
"confidence": { "score": 85, "tier": "high", ... }
2942+
}
2943+
```
2944+
2945+
**Behavior:** AI operation (non-deterministic, makes external AI calls)
2946+
2947+
---
2948+
2949+
### detect_duplicates
2950+
2951+
Embedding-based duplicate detection with tiered confidence (AI-19).
2952+
2953+
**Input Parameters:**
2954+
| Parameter | Type | Required | Description |
2955+
|-----------|------|----------|-------------|
2956+
| issueTitle | string | Yes | Issue title to check |
2957+
| issueDescription | string | Yes | Issue body/description |
2958+
| existingIssues | array | Yes | Issues to compare against |
2959+
| thresholds | object | No | Custom thresholds (high: 0.92, medium: 0.75) |
2960+
| maxResults | number | No | Maximum results (default: 10) |
2961+
2962+
**Output:**
2963+
```json
2964+
{
2965+
"highConfidence": [{ "issueId": "123", "issueNumber": 42, "title": "...", "similarity": 0.95, "reasoning": "..." }],
2966+
"mediumConfidence": [...],
2967+
"lowConfidence": [...],
2968+
"confidence": { "score": 78, "tier": "medium", ... }
2969+
}
2970+
```
2971+
2972+
**Confidence Tiers:**
2973+
- High (0.92+): Auto-link as duplicate recommended
2974+
- Medium (0.75-0.92): Review recommended
2975+
- Low (<0.75): Reference only
2976+
2977+
**Behavior:** AI operation (uses embeddings, may fall back to keyword matching)
2978+
2979+
---
2980+
2981+
### find_related_issues
2982+
2983+
Multi-type relationship detection (AI-20).
2984+
2985+
**Input Parameters:**
2986+
| Parameter | Type | Required | Description |
2987+
|-----------|------|----------|-------------|
2988+
| issueId | string | Yes | Source issue ID |
2989+
| issueTitle | string | Yes | Source issue title |
2990+
| issueDescription | string | Yes | Source issue body |
2991+
| repositoryIssues | array | Yes | Issues to search for relationships |
2992+
| issueLabels | array | No | Source issue labels for component matching |
2993+
| config | object | No | Toggle relationship types |
2994+
2995+
**Output:**
2996+
```json
2997+
{
2998+
"relationships": [
2999+
{
3000+
"sourceIssueId": "src-123",
3001+
"targetIssueId": "456",
3002+
"targetIssueNumber": 42,
3003+
"targetIssueTitle": "...",
3004+
"relationshipType": "semantic",
3005+
"subType": null,
3006+
"confidence": 0.85,
3007+
"reasoning": "85% semantic similarity - similar topic"
3008+
},
3009+
{
3010+
"relationshipType": "dependency",
3011+
"subType": "blocks",
3012+
"confidence": 0.9,
3013+
"reasoning": "Keyword match: 'enables work on'"
3014+
}
3015+
],
3016+
"confidence": { "score": 75, "tier": "medium", ... }
3017+
}
3018+
```
3019+
3020+
**Relationship Types:**
3021+
- **semantic**: Similar topic/feature (via embeddings)
3022+
- **dependency**: blocks/blocked_by chains (via keywords + AI)
3023+
- **component**: Same area (via shared labels)
3024+
3025+
**Behavior:** AI operation (uses embeddings and LLM, may fall back to keyword/label matching)
3026+
3027+
---
3028+
28823029
## Tool Registration
28833030

2884-
All 115 tools are registered in `src/infrastructure/tools/ToolRegistry.ts`. The registry:
3031+
All 119 tools are registered in `src/infrastructure/tools/ToolRegistry.ts`. The registry:
28853032

28863033
1. Validates tool definitions at registration time
28873034
2. Generates MCP-compliant tool descriptors with annotations
@@ -2903,12 +3050,13 @@ All 115 tools are registered in `src/infrastructure/tools/ToolRegistry.ts`. The
29033050
| Health tools | `src/infrastructure/tools/health-tools.ts` |
29043051
| Sprint AI tools | `src/infrastructure/tools/sprint-ai-tools.ts` |
29053052
| Roadmap AI tools | `src/infrastructure/tools/roadmap-ai-tools.ts` |
3053+
| Issue Intelligence AI tools | `src/infrastructure/tools/issue-intelligence-tools.ts` |
29063054
| Tool Registry | `src/infrastructure/tools/ToolRegistry.ts` |
29073055
| Output schemas | `src/infrastructure/tools/schemas/*.ts` |
29083056
| Behavior annotations | `src/infrastructure/tools/annotations/tool-annotations.ts` |
29093057

29103058
---
29113059

29123060
*Generated: 2026-02-01*
2913-
*Tool count: 115*
3061+
*Tool count: 119*
29143062
*MCP SDK: 1.25.3*

0 commit comments

Comments
 (0)