Skip to content

Failed to index rdue to timeout #2144

Closed

Description

@AesElh

Version

codebase-memory-mcp 0.10.8

Platform

Windows (x64)

Install channel

GitHub release archive / install.sh / install.ps1

Binary variant

standard

What happened, and what did you expect?

i have an mcp server running inside github copilot plugin for intelij, i told it to "index this project" but evventually the mcp call timed out.

Reproduction

  1. configure mcp server in interlij for github copilot plugin
  2. start new chat sol 5.6 model
  3. tell it to "index this project"
  4. mcp server fails later with timeout

trying to index the repo via the ui, seems to work.

Logs


Diagnostics trajectory (memory / performance / leak issues)


Project scale (if relevant)

No response

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.

Activity

  1. added
    priority/highNeeds near-term maintainer attention; high-impact bug, regression, safety issue, or release blocker.
    on Sep 19, 2026
  2. DeusData commented on Sep 25, 2026

    @DeusData
    Owner

    Thank you @AesElh for the clear report, and for noticing that indexing from the UI works. That pointed straight at the cause.

    index_repository waits for the whole index before replying. On a large project that takes longer than Copilot for IntelliJ allows a single tool call, so the client gives up and cancels. The daemon then sees nobody waiting and stops that index, which is why every retry timed out again.

    The fix (#2357) adds an opt-in async mode:

    • index_repository(repo_path="...", async: true) starts the index in the daemon (or joins one already running for that project) and returns right away. The index keeps running even if the client cancels, times out or disconnects.
    • Then call index_repository(repo_path="...", status: true) and repeat until state is succeeded, failed or cancelled; you also get started_at, finished_at and an error summary.
    • Async needs something that outlives the call: an open MCP session (your IDE's) is enough; a one-shot terminal cli ... --async needs codebase-memory-mcp daemon start first.

    The default synchronous call works as before. When one is cut short, the reply and the next call now suggest the async mode, and the tool description explains all of this so the agent can choose it on its own. Until the release ships, indexing from the UI, or with codebase-memory-mcp cli index_repository --repo-path <path> in a terminal, avoids the client deadline. Thanks again!

  3. added a commit that references this issue on Sep 30, 2026
  4. DeusData commented on Sep 30, 2026

    @DeusData
    Owner

    Thank you again for reporting this, @AesElh! The fix is now on main in cb251ed (merged via #2357), and it will ship in the next release.

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

    bugSomething isn't workingpriority/highNeeds near-term maintainer attention; high-impact bug, regression, safety issue, or release blocker.stability/performanceServer crashes, OOM, hangs, high CPU/memoryux/behaviorDisplay bugs, docs, adoption UXwindowsWindows-specific issues

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions