Skip to content

[RED TEAM] MCP server missing tools for 4 new commands (arch-metrics, memory, export-snapshot, import-snapshot) — CLI/MCP count drift 67 vs 50 #121

Description

@Wolfvin

Temuan

Setelah merge #107, #109, #110, CLI command count naik ke 67, tapi MCP server hanya expose 50 tools. 4 command baru TIDAK terdaftar sebagai MCP tools:

AI agents yang akses CodeLens via MCP (e.g. Claude Desktop, Cursor) tidak bisa menggunakan fitur-fitur baru ini. Ini melanggar principle dari issue #90 ("single-source-of-truth for command + MCP tool counts").

Cara reproduce

import sys
sys.path.insert(0, 'scripts')
import mcp_server
tools = mcp_server._TOOL_DEFINITIONS
print(f'Total MCP tools: {len(tools)}')  # Output: 50

# Check for new commands
cli_commands = ['arch-metrics', 'memory', 'export-snapshot', 'import-snapshot']
for cmd in cli_commands:
    found = any(cmd in str(t) for t in tools)
    print(f'  {cmd}: {"FOUND" if found else "MISSING"}')
# CLI count
python scripts/codelens.py --command-count
# Output: 67

Output aktual

Total MCP tools: 50
  arch-metrics: MISSING
  memory: MISSING
  export-snapshot: MISSING
  import-snapshot: MISSING

CLI count: 67
MCP count: 50
Drift: 17 commands not exposed via MCP

Output yang diharapkan

MCP server harus expose minimal 4 command baru sebagai tools (arch-metrics, memory, export-snapshot, import-snapshot). Idealnya MCP tool count should track CLI command count (principle dari issue #90).

Severity

MEDIUM — AI agents via MCP cannot access new features. Bukan crash atau data loss, tapi fitur gap yang mengurangi value dari 8 PRs untuk MCP users. PR #110 description mention "memory system + CLI" — CLI-only memang by design phase-1, tapi tetap perlu MCP exposure agar konsisten dengan principle #90.

PR terkait

#107 (snapshot export/import), #109 (arch-metrics), #110 (memory system). Fix: tambahkan 4 tool definitions di scripts/mcp_server.py _TOOL_DEFINITIONS yang delegate ke command handlers yang sudah ada.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions