Add unified get_status MCP tool for project overview
Description
Recent Comments
## Code Review: PR #30 ✓ PASS (Re-review) **Files Reviewed:** - `mcp-bridge/src/tools/index.ts` (+16 lines) - `app/controllers/api/v1/mcp_controller.rb` (+68/-13 lines) - `spec/requests/api/v1/mcp_spec.rb` (+73 lines) ### Fix Verified ✓ The missing `get_status` tool definition has been **properly added** to `mcp-bridge/src/tools/index.ts` (lines 236-251). ```typescript { name: "get_status", description: "Get comprehensive project status including ticket counts...", inputSchema: { type: "object", properties: {} }, execute: async (_args: any) => { // ... calls /mcp/execute with tool: 'get_status' } } ``` ### Acceptance Criteria Met ✓ - ✓ Shared serialization methods extracted (`serialize_ticket`, `serialize_member`) - ✓ `list_tickets` and `list_members` refactored to use shared serializers - ✓ `get_status` tool returns aggregated project state - ✓ `get_status` reuses same serializers (no duplication) - ✓ Worker and reviewer status included (orchestrator excluded) - ✓ Tickets needing attention highlighted - ✓ MCP tool registered in mcp-bridge - ✓ Test coverage added (3 new tests) ### Ready to Merge All acceptance criteria from ticket #78 have been met. The fix addresses the previous review feedback.
## Fix Applied Per reviewer feedback, added the missing `get_status` tool definition to `mcp-bridge/src/tools/index.ts`. ### Changes - **File**: `mcp-bridge/src/tools/index.ts` - **Added**: `get_status` tool definition (lines 236-251) - **Pattern**: Follows existing pattern used by `list_members` - calls `/mcp/execute` with `tool: 'get_status'` The Rails API endpoint (`handle_get_status`) was already implemented in the previous commit. The PR now includes the complete implementation: 1. ✅ Rails endpoint `app/controllers/api/v1/mcp_controller.rb:handle_get_status` 2. ✅ MCP tool definition `mcp-bridge/src/tools/index.ts:get_status` 3. ✅ Test coverage Commit pushed to branch. Ready for re-review.
## Code Review: FAIL ### Critical Issue: Missing MCP Tool Implementation The ticket requested adding a **`get_status` MCP tool**, but the PR only implemented the Rails HTTP API endpoint. The actual MCP tool definition in `mcp-bridge/src/tools/index.ts` was **NOT added**. ### What Was Reviewed - `app/controllers/api/v1/mcp_controller.rb` - Added `handle_get_status` method ✓ - `spec/requests/api/v1/mcp_spec.rb` - Added tests ✓ ### What Was Missing - `mcp-bridge/src/tools/index.ts` - No `get_status` tool definition added ✗ ### Required Fix Add the `get_status` tool to `mcp-bridge/src/tools/index.ts` following the pattern of existing tools like `list_members`: ```typescript { name: "get_status", description: "Get comprehensive project status including ticket counts, tickets needing attention, and worker/reviewer availability.", inputSchema: { type: "object", properties: {} }, execute: async (_args: any) => { try { const response = await api.post('/mcp/execute', { tool: 'get_status', params: {} }); return { content: [{ type: "text", text: JSON.stringify(response.data.result, null, 2) }] }; } catch (error) { return formatError(error); } } } ``` ### Acceptance Criteria Not Met - ✗ `get_status` tool definition added to MCP bridge - ✓ (Rails API endpoint exists, but MCP tool is missing) Please add the MCP tool to `mcp-bridge/src/tools/index.ts` and resubmit.
Ticket Stats
Comments
4 commentsAdd a Comment
No Subtasks Yet
Break down this ticket into smaller, manageable subtasks