Until now, the MCP server did not support semantic_search, even though this functionality is already available in the CLI. In addition, repository indexing in the MCP server always required wiping all existing data and performing a full reindex, while an update (incremental indexing) mechanism already exists in the CLI and only needed to be exposed.
This PR addresses both issues:
Semantic search support for the MCP server
The semantic_search tool is now registered only when the optional semantic dependencies are installed. This prevents the tool from being exposed in environments where it would otherwise return empty or misleading results.
Repository update without data loss
A new update mechanism is exposed in the MCP server, allowing the existing graph to be updated without clearing all data first. This mirrors the behavior already available via the CLI and avoids unnecessary full reindexing.
I have implemented these changes in my fork. Please let me know if anything should be handled differently or if there are adjustments you’d prefer before merging.
Thank you for your time and review!