- Add KuzuProviderConfig to schema for KuzuDB configuration
- Update DatabaseDriverFactory to support KuzuDB initialization
- Modify GraphitiService to handle KuzuDB driver instantiation
- Update CLI argument parser to include 'kuzu' option
- Make KuzuDB the default database provider (in-memory by default)
- Add docker-compose-kuzu.yml for standalone KuzuDB deployment
- Fix FalkorDB factory to parse URI into host/port parameters
- Fix EntityNode type access (use labels[0] instead of type)
- Add kuzu dependency to MCP server pyproject.toml
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Update graphiti_mcp_server.py to use correct Graphiti API methods
- Replace non-existent search_nodes with search_ method
- Add new get_episodes tool using EpisodicNode.get_by_group_ids
- Remove problematic search_episodes implementation
- Fix factory imports and client instantiation in factories.py
- Correct import paths for FalkorDriver, Azure clients, Voyage embedder
- Update LLM/Embedder creation to use proper config objects
- Fix Azure OpenAI client instantiation with AsyncAzureOpenAI
- Update NodeResult TypedDict to match actual usage
- Change uuid parameter type to str | None in queue_service
Resolves 20 critical runtime type errors identified by pyright.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Deleted unused test_simple_validation.py file
- Removed syntax/import validation tests (handled by linting)
- Added support for streamable HTTP transport mode
- Updated transport options: sse (default), stdio, http
- Fixed server default to SSE as intended
Transport modes now available:
- SSE: Server-Sent Events for web clients (default)
- stdio: Standard I/O for MCP protocol
- http: Streamable HTTP for modern clients
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
- Changed default transport from 'stdio' to 'sse' as intended
- Removed redundant syntax_validation and import_validation tests (handled by linting)
- Clarified test_integration.py is for HTTP/SSE mode testing
- Simplified test_simple_validation.py to only test server startup
The server now correctly defaults to SSE (Server-Sent Events) mode for HTTP
transport, with stdio as an alternative for MCP protocol communication.
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
- Update default OpenAI embedder from text-embedding-ada-002 to text-embedding-3-small
- Add environment variable support for Neo4j credentials (NEO4J_URI, NEO4J_USER, NEO4J_PASSWORD)
- Add environment variable support for FalkorDB credentials (FALKORDB_URI, FALKORDB_PASSWORD)
- Fixes CI/CD authentication issues where environment variables weren't being recognized
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
- Remove invalid custom_node_types parameter from Graphiti initialization
- Pass entity_types to add_episode method instead of constructor
- Rename custom_types to entity_types in queue_service for clarity
The Graphiti API expects entity_types to be passed to add_episode methods, not the constructor.
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
The GraphitiService.__init__ was accepting semaphore_limit as a parameter but not storing it as an instance attribute, causing an AttributeError when trying to access self.semaphore_limit in the initialize method.
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
- Removed unnecessary blank lines in factories.py
- Fixed formatting to pass CI checks
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Fixed 'Neo4j provider configuration not found' error in CI
- Create default provider configurations when not explicitly provided
- Both Neo4j and FalkorDB now fall back to sensible defaults
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>