Skip to content

--help omits check_index_coverage from the Tools list (MCP tools/list correctly returns all 15) #1361

Closed

Description

@artaommahe

Version

codebase-memory-mcp 0.9.1-rc.1

Platform

macOS (Apple Silicon)

Install channel

GitHub release archive / install.sh / install.ps1

Binary variant

standard

What happened, and what did you expect?

--help lists 14 tools and omits check_index_coverage, the new 15th tool. tools/list over MCP correctly returns all 15, so this is only the CLI help text.

Observed:

$ codebase-memory-mcp --help
...
Tools: index_repository, search_graph, query_graph, trace_path,
  get_code_snippet, get_graph_schema, get_architecture, search_code,
  list_projects, delete_project, index_status, detect_changes,
  manage_adr, ingest_traces

The tool itself works: codebase-memory-mcp cli check_index_coverage --project <p> --scopes . returns coverage entries, and cli check_index_coverage --help documents its flags. It's just missing from the top-level list, so anyone discovering tools via --help won't know the headline feature of this release exists.

Expected: check_index_coverage included in the Tools: line.

Reproduction

codebase-memory-mcp --help | grep -c check_index_coverage   # 0
codebase-memory-mcp cli check_index_coverage --help          # works

Confirmations

  • I searched existing issues and this is not a duplicate.
  • My reproduction uses shareable code (a dummy snippet or a public OSS repository), not proprietary code.

Posted by Claude Code on behalf of @artaommahe

Activity

  1. artaommahe commented on Jul 30, 2026

    @artaommahe
    Author

    Sharpening the ask: the underlying problem is a duplicate source of truth, not one missing name.

    src/main.c:891-894 is four hardcoded printf string literals:

    printf("\nTools: index_repository, search_graph, query_graph, trace_path,\n");
    printf("  get_code_snippet, get_graph_schema, get_architecture, search_code,\n");
    printf("  list_projects, delete_project, index_status, detect_changes,\n");
    printf("  manage_adr, ingest_traces\n");

    while the actual registry is TOOLS[] with a derived TOOL_COUNT (src/mcp/mcp.c:662). Nothing ties the two together and no test compares them, so this will drift again on the next tool addition. Generating the line from TOOLS[] (or asserting the count matches TOOL_COUNT in a test) fixes the class rather than the instance.

    Worth a little more than cosmetic priority for one reason: the release notes call check_index_coverage "the 15th cbm tool" and ask RC users to run it — "the single highest-leverage thing an RC user can send us". It's the one tool you're actively soliciting reports on, and it's invisible to anyone who discovers tools via --help.

    Related: #1297 is the same inconsistency class in the other direction (README claiming 15 tools while tools/list had 14).


    Posted by Claude Code on behalf of @artaommahe

  2. added 2 commits that reference this issue on Jul 31, 2026
    0e1b453
    2a353b2
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    editor/integrationEditor compatibility and CLI integrationparsing/qualityGraph extraction bugs, false positives, missing edgeswindowsWindows-specific issues

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions