GitHub

Memory System Integration

The Functor MCP server provides complete integration with the DRIP memory system, exposing all 10 memory modules as MCP tools.

Episodic Memory Tools

  • episodic_add_episode - Add temporal episodes
  • episodic_search_episodes - Semantic episode search
  • episodic_get_episode - Get specific episode
  • episodic_get_session_history - Get session episodes
# Add episode
await client.episodic_add_episode(
session_id="session_123",
event_type="query",
event_data={
"query": "What is quantum computing?",
"response": "Quantum computing is..."
},
user_id="user_456",
entities=["quantum", "computing"],
kg_names=["KG_Technology"]
)

Semantic Memory Tools

  • semantic_add_fact - Add semantic facts
  • semantic_search_facts - Search facts
  • semantic_update_fact - Update facts
  • semantic_get_fact - Get specific fact
# Add fact
await client.semantic_add_fact(
content="Deep learning uses neural networks with multiple layers",
kg_name="KG_Technology",
source="research_paper",
confidence=0.95
)

Procedural Memory Tools

  • procedural_create_procedure - Create workflows
  • procedural_execute_procedure - Execute procedures
  • procedural_get_procedure - Get procedures
  • procedural_list_procedures - List all procedures
# Create procedure
await client.procedural_create(
procedure_id="data_analysis_workflow",
name="Data Analysis Pipeline",
steps=[
{"id": "load", "description": "Load dataset", "dependencies": []},
{"id": "clean", "description": "Clean data", "dependencies": ["load"]},
{"id": "analyze", "description": "Perform analysis", "dependencies": ["clean"]}
],
description="Standard data analysis workflow"
)

Additional Memory Tools

  • Short-term: short_term_add_to_buffer, short_term_get_buffer
  • Long-term: long_term_archive, long_term_retrieve
  • Pruning: pruning_analyze_candidates, pruning_execute
  • Personalization: personalization_add_preference, personalization_get_context
  • Observability: observability_get_stats, observability_visualize_kg
  • Multi-tenant: tenant_create, tenant_get_usage
  • Rollout: rollout_simulate, rollout_evaluate_branch