Commit graph

33 commits

Author SHA1 Message Date
Preston Rasmussen
71f1f66d11
Search client update (#1026)
* update bulk interfae handling

* bump version

* format
2025-10-26 22:07:36 -04:00
Naseem Ali
d0a3cd97ae
Integrate MCP for FalkorDB (#910)
* Integrate MCP for FalkorDB

* fix lint errors
2025-10-21 12:06:57 -04:00
Charles Chan
cb44ae932e
fix: neo4j username/password should not be hardcoded (#711)
fix: neo4j password should not be hardcoded
2025-07-13 09:12:06 -07:00
Daniel Chalef
4b578c1d53
bump v0.17.0 (#700)
* bump v0.17.0

* bump mcp
2025-07-10 16:14:11 -07:00
Daniel Chalef
aa6e38856a
[REFACTOR][FIX] Move away from DEFAULT_DATABASE environment variable in favour of driver-config support (dc) (#699)
* fix: remove global DEFAULT_DATABASE usage in favor of driver-specific
config

Fixes bugs introduced in PR #607. This removes reliance on the global
DEFAULT_DATABASE environment variable. It specifies the database within
each driver. PR #607 introduced a Neo4j compatability, as the database
names are different when attempting to support FalkorDB.

This refactor improves compatability across database types and ensures
future reliance by isolating the configuraiton to the driver level.

* fix: make falkordb support optional

This ensures that the the optional dependency and subsequent import is compliant with the graphiti-core project dependencies.

* chore: fmt code

* chore: undo changes to uv.lock

* fix: undo potentially breaking changes to drive interface

* fix: ensure a default database of "None" is provided - falling back to internal default

* chore: ensure default value exists for session and delete_all_indexes

* chore: fix typos and grammar

* chore: update package versions and dependencies in uv.lock and bulk_utils.py

* docs: update database configuration instructions for Neo4j and FalkorDB

Clarified default database names and how to override them in driver constructors. Updated testing requirements to include specific commands for running integration and unit tests.

* fix: ensure params defaults to an empty dictionary in Neo4jDriver

Updated the execute_query method to initialize params as an empty dictionary if not provided, ensuring compatibility with the database configuration.

---------

Co-authored-by: Urmzd <urmzd@dal.ca>
2025-07-10 17:25:39 -04:00
jawwadfirdousi
4e3f3618fb
REFACTOR: use env variables in docker-compose for mcp (#663)
* use env variables in docker-compose for mcp

* add defaults

---------

Co-authored-by: Daniel Chalef <131175+danielchalef@users.noreply.github.com>
2025-07-04 17:51:57 -07:00
Daniel Chalef
743d5e8612
Refactor: Replace dictionary responses with structured response classes in graphiti_mcp_server.py (#668)
Updated the error and success responses in various functions to utilize structured response classes (ErrorResponse, SuccessResponse, FactSearchResponse, EpisodeSearchResponse, StatusResponse) for improved consistency and clarity. Incremented version in pyproject.toml to 0.2.1.
2025-07-02 22:18:50 -07:00
Daniel Chalef
027035a241
feat: add pre-built Docker image for Graphiti MCP server (#657)
* Update Docker Compose to use the latest Graphiti MCP image and enhance README documentation

* Enhance README.md with updated quick start instructions for various clients, including specific sections for Claude Desktop and Cursor, and clarify service startup steps using Docker Compose.
2025-07-01 16:14:41 -07:00
Daniel Chalef
4652161c92
Add GitHub Actions workflow for building and pushing MCP Server Docker image (#656)
* Add GitHub Actions workflow for building and pushing MCP Server Docker image

This commit introduces a new workflow that triggers on changes to the pyproject.toml file in the main branch. It builds and pushes the Docker image to Docker Hub, extracting the version from the pyproject.toml and setting up necessary permissions and steps for the process.

* Add workflow_dispatch input to MCP Server Docker workflow

This commit adds an optional input parameter, `push_image`, to the GitHub Actions workflow for the MCP Server Docker image. This allows users to control whether to push the image to the registry during manual workflow dispatch, enhancing flexibility for testing purposes.

* Update Docker workflow conditions and increment version to 0.2.0

This commit modifies the MCP Server Docker workflow to include the `push_image` input conditionally for both pull requests and manual dispatches. Additionally, the version in `pyproject.toml` is updated from 0.1.0 to 0.2.0 to reflect the changes made.

* Remove unnecessary package write permission from MCP Server Docker workflow

* Add permissions for packages, actions, and security events in MCP Server Docker workflow

* Update MCP Server Docker workflow to use Ubuntu 24.04 for build environment

* Update MCP Server Docker workflow permissions to include id-token write access

* Remove unused cache configuration from MCP Server Docker workflow
2025-07-01 15:55:08 -07:00
Daniel Chalef
19772aa5a1
update mcp to graphiti 0.14 (#641)
* Update dependencies in pyproject.toml and uv.lock: bump graphiti-core to 0.14.0, add backoff and posthog packages, and update related version specifications.

* Update Dockerfile to change ownership command for app directory to verbose mode
2025-06-27 14:43:53 -07:00
Daniel Chalef
cb4e187aed
feat: add telemetry with PostHog and update Docker configurations (#633)
* Implement telemetry feature for anonymous usage statistics collection in Graphiti; update Dockerfile CMD format for better signal handling; adjust Neo4j URI and healthcheck in docker-compose.yml; add new dependencies in pyproject.toml and poetry.lock.

* remove duplicated properties

* Update Dockerfile CMD to use JSON array format for improved signal handling

* remove tommlib dep only in 3.11

* Delete server/graph_service/logging_config.py
2025-06-27 12:23:30 -07:00
Daniel Chalef
a7ca777af5
migrate to uv (#634) 2025-06-27 12:12:49 -07:00
Daniel Chalef
fc104cbe41
Update SEMAPHORE_LIMIT default value in docker-compose.yml to 10 for improved concurrency management (#628) 2025-06-25 21:45:46 -07:00
Daniel Chalef
9cc2e86071
Azure OpenAI improvements and fixes; Improve Graphiti Azure OpenAI config (#620)
* Azure OpenAI improvements and fixes; Improve Graphiti Azure OpenAI config

* format
2025-06-25 14:48:12 -04:00
Daniel Chalef
a7ae6784c8
mcp concurrency limit (#623)
* update graphiti dep

* - Introduce SEMAPHORE_LIMIT environment variable in graphiti_mcp_server.py to manage concurrency and mitigate 429 rate limit errors.
- Document SEMAPHORE_LIMIT usage in README.md for better user guidance.

* Log the concurrency limit in Graphiti initialization for better visibility.

* Document SEMAPHORE_LIMIT environment variable in README.md to clarify its role in managing episode processing concurrency and handling 429 rate limit errors.
2025-06-24 15:35:33 -07:00
Guy Korland
0d7dd9d363
set requires-python to fix poetry install (#609)
set requires-python
2025-06-24 09:39:00 -07:00
robrichardson13
b8e6762cb2
fix: ensure fact_embedding is removed from attributes in format_fact_… (#611)
fix: ensure fact_embedding is removed from attributes in format_fact_result

This ensures that fact_embedding is completely cleaned from the result,
both from the main level and from the attributes dictionary.
2025-06-23 22:01:26 -07:00
abab-dev
0d6a76d891
fix: rename add_episode to add_memory (#588) 2025-06-16 21:34:02 -07:00
Daniel Chalef
3d7e1a4b79
feat: add Azure client wrappers for embedding and LLM, integrate into server (#581)
* create wrappers for azure clients

* rremove unused crossencoder client

* format

* chore: update graphiti-core to 0.12.0rc5 and pydantic to 2.11.5

* Update graphiti_core/llm_client/azure_openai_client.py

Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>

---------

Co-authored-by: Preston Rasmussen <109292228+prasmussen15@users.noreply.github.com>
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
2025-06-13 11:55:08 -04:00
Denys Kurylenko
5287810d2d
Made docker compose work on Mac. Fixes #519 (#574)
made docker compose work on Mac
2025-06-12 19:15:39 -07:00
Daniel Chalef
d174abb2ba
Implement Small Model in MCP Server; Default to 4.1-nano (#516)
Add small LLM model support and update README

- Introduced a new small LLM model configuration option (`SMALL_LLM_MODEL`) in `GraphitiLLMConfig`.
- Updated environment variable documentation to include `SMALL_MODEL_NAME`.
- Added command-line argument support for `--small-model` to override the small model name.
- Enhanced logging for small model configuration to improve user feedback.

These changes enhance flexibility in model selection for LLM operations.
2025-05-21 21:24:53 -07:00
Daniel Chalef
9ab8abf9b4
MCP Fixes (#512)
* Refactor group_id handling and update dependencies

- Changed default behavior for `group_id` to 'default' instead of generating a UUID.
- Updated README to reflect the new default behavior for `--group-id`.
- Reformatted LLMConfig initialization for better readability.
- Bumped versions of several dependencies including `azure-core`, `azure-identity`, `certifi`, `charset-normalizer`, `sse-starlette`, and `typing-inspection`.
- Added `python-multipart` as a new dependency.

This update improves usability and ensures compatibility with the latest library versions.

* Update Graphiti MCP server instructions and refactor method names for clarity

- Revised the welcome message to enhance clarity about Graphiti's functionality.
- Renamed methods for better understanding: `add_episode` to `add_memory`, `search_nodes` to `search_memory_nodes`, `search_facts` to `search_memory_facts`, and updated related docstrings to reflect these changes.
- Updated references to "knowledge graph" to "graph memory" for consistency throughout the codebase.

* Update README for Graphiti MCP server configuration and integration with Claude Desktop

- Changed server name from "graphiti" to "graphiti-memory" in configuration examples for clarity.
- Added instructions for running the Graphiti MCP server using Docker.
- Included detailed steps for integrating Claude Desktop with the Graphiti MCP server, including optional installation of `mcp-remote`.
- Enhanced overall documentation to improve user experience and understanding of the setup process.

* Enhance error handling in GeminiEmbedder and GeminiClient

- Added checks to raise exceptions when no embeddings or response text are returned, improving robustness.
- Included type ignore comments for mypy compatibility in embed_content calls.

* Update graphiti_core/embedder/gemini.py

Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>

* Update graphiti_core/llm_client/gemini_client.py

Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>

---------

Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
2025-05-21 19:39:41 -07:00
Adam Katav
576faa5e7c
#491 (#493)
* #491 Added small_model=

* #491 Renamed OpenAIEmbedderConfig parameter `model` to `embedding_model`
2025-05-20 11:03:22 -04:00
Daniel Chalef
967e5600fa
Enhance README.md with quick start guide for clients (#394)
Enhance README.md with quick start guide for clients and update environment variable instructions. Update uv.lock to reflect package version changes and add new dependencies. Notable updates include bumping graphiti-core to 0.10.5 and adding graph-service as a dependency.
2025-04-24 16:43:45 -07:00
Diego Colombo
a193476abe
enable use of Azure OpenAI with mcp server (#368)
* add azure open ai dependency

* update readme

* Create support for azure open ai endpoints

* fix: formatting

---------

Co-authored-by: paulpaliychuk <pavlo.paliychuk.ca@gmail.com>
2025-04-17 21:05:08 -04:00
Preston Rasmussen
c8d5c45269
update to 4.1 models (#352) 2025-04-14 21:02:36 -04:00
Daniel Chalef
0f6ac57dab
chore: update version to 0.9.3 and restructure dependencies (#338)
* Bump version from 0.9.0 to 0.9.1 in pyproject.toml and update google-genai dependency to >=0.1.0

* Bump version from 0.9.1 to 0.9.2 in pyproject.toml

* Update google-genai dependency version to >=0.8.0 in pyproject.toml

* loc file

* Update pyproject.toml to version 0.9.3, restructure dependencies, and modify author format. Remove outdated Google API key note from README.md.

* upgrade poetry and ruff
2025-04-08 20:47:38 -07:00
Daniel Chalef
6b12896723
fix MCP config handling and docker compose setup (#332)
fix config handling and docker compose setup
2025-04-07 14:22:14 -07:00
Preston Rasmussen
f4dd39128c
add entity type validation handling (#320)
* add entity type validation handling

* bump version
2025-04-04 13:53:04 -04:00
Daniel Chalef
e12edf2cd6
Update default MCP Server model to gpt-4o-mini (#317)
---

For more details, open the [Copilot Workspace session](https://copilot-workspace.githubnext.com/getzep/graphiti?shareId=XXXX-XXXX-XXXX-XXXX).
2025-04-02 11:43:58 -07:00
Daniel Chalef
80f288102a
remove example usage (#306)
Update README.md
2025-03-26 23:11:22 -07:00
Daniel Chalef
b73ca24cfb
feat: enhance episode processing and node search with new entity types and update dependencies (#304)
* add custom entities

* improve prompts

* ruff fixes

* models + queue

* moar
2025-03-26 23:10:09 -07:00
Daniel Chalef
4307274967
Add MCP Server (#301)
* experimental

* experimental

* experimental

* wip

* wip

* wip

* wip

* code cleanup

* refactor and cleanup

* fix lint

* remove unneeded mcp dep

* polish
2025-03-24 17:08:19 -07:00