From 8c0268317498647d13e420cf5c79c8e3a3c004ab Mon Sep 17 00:00:00 2001 From: Daniel Chalef <131175+danielchalef@users.noreply.github.com> Date: Wed, 29 Oct 2025 22:58:56 -0700 Subject: [PATCH] fix: Remove protected 'name' attribute from entity type models Pydantic BaseModel reserves 'name' as a protected attribute. Removed the 'name' attribute from dynamically created entity type models as it's not needed - the entity type name is already stored as the class name and dict key. Fixed error: name cannot be used as an attribute for Requirement as it is a protected attribute name. --- mcp_server/src/graphiti_mcp_server.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mcp_server/src/graphiti_mcp_server.py b/mcp_server/src/graphiti_mcp_server.py index c1c21ad4..856e540e 100644 --- a/mcp_server/src/graphiti_mcp_server.py +++ b/mcp_server/src/graphiti_mcp_server.py @@ -154,11 +154,11 @@ class GraphitiService: custom_types = {} for entity_type in self.config.graphiti.entity_types: # Create a dynamic Pydantic model for each entity type + # Note: Don't use 'name' as it's a protected Pydantic attribute entity_model = type( entity_type.name, (BaseModel,), { - '__annotations__': {'name': str}, '__doc__': entity_type.description, }, )