Add MCP server support and fix memory tools user isolation
MCP integration:
- New navi/mcp/ package: client, manager, config, tools
- ToolRegistry learns register_external() for MCP tools
- reload_tools reconnects MCP servers on hot reload
- New built-in mcp_status tool
- Startup/shutdown wiring for MCP connections
- 12 new tests (unit + integration with real stdio server)

Memory tools fix:
- memory, memory_save, memory_search, memory_forget now read
  current_user_id from tool context and pass it to MemoryStore
- Fixes invisible facts for authenticated users

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
1 parent c0d9616 commit 9ff657c32ae198b9714ee98d1db9799029ad8721
@Eugene Sukhodolskiy Eugene Sukhodolskiy authored on 10 May
Showing 19 changed files
View
navi/api/deps.py
View
navi/core/registry.py
View
navi/main.py
View
navi/mcp/__init__.py 0 → 100644
View
navi/mcp/client.py 0 → 100644
View
navi/mcp/config.py 0 → 100644
View
navi/mcp/manager.py 0 → 100644
View
navi/mcp/tools.py 0 → 100644
View
navi/tools/mcp_status.py 0 → 100644
View
navi/tools/memory.py
View
navi/tools/memory_forget.py
View
navi/tools/memory_save.py
View
navi/tools/memory_search.py
View
navi/tools/reload_tools.py
View
pyproject.toml
View
tests/_mcp_test_server.py 0 → 100644
View
tests/integration/test_mcp_integration.py 0 → 100644
View
tests/unit/test_mcp.py 0 → 100644
View
tests/unit/test_startup.py