Add get_node_relations function for efficient graph traversal #2310
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
This PR adds a new
get_node_relations
function to the MCP memory server that enables efficient graph traversal by retrieving all incoming and outgoing relations for a specific node without loading the entire graph.Changes
getNodeRelations
inKnowledgeGraphManager
classget_node_relations
exposed via the server APIREADME.md
with API documentation for the new function.github/mcp.json
for discoverabilityImplementation Details
Input
nodeName
(string): The name of the entity to get relations forOutput
outgoing
(array): Relations where this node is the sourceincoming
(array): Relations where this node is the targetconnected_entities
(string[]): Names of all connected entitiesUse Cases
Testing
The implementation has been tested locally with:
Files Changed
src/memory/index.ts
: Core implementationsrc/memory/README.md
: API documentationThis enhancement maintains backward compatibility and follows existing code patterns in the memory server.