Tools Reference
The Memsolus MCP server exposes 17 tools organized in four categories. Claude selects and calls these tools automatically based on your instructions.
Memory Management
add_memory
Stores a new persistent memory in the workspace.
| Parameter | Type | Required | Description |
|---|---|---|---|
memory | string | Yes | The memory content — write as a clear, self-contained statement |
user_id | string | No | ID of the user this memory belongs to |
agent_id | string | No | ID of the agent this memory belongs to |
session_id | string | No | ID of the conversation session |
metadata | string (JSON) | No | Arbitrary key-value metadata encoded as a JSON string |
priority | string | No | LOW, MEDIUM (default), or HIGH |
Example response
search_memories
Searches memories using semantic, keyword, or hybrid matching. Returns memories ranked by relevance.
| Parameter | Type | Required | Description |
|---|---|---|---|
query | string | Yes | Natural language search query |
user_id | string | No | Filter results to a specific user |
limit | number | No | Maximum results to return (default 10) |
mode | string | No | hybrid (default), semantic, or keyword |
Example response
get_memories
Lists memories chronologically with pagination. Use when browsing all memories rather than searching by relevance.
| Parameter | Type | Required | Description |
|---|---|---|---|
user_id | string | No | Filter by user ID |
agent_id | string | No | Filter by agent ID |
page | number | No | Page number (default 1) |
limit | number | No | Results per page (default 20) |
Example response
get_memory
Retrieves a specific memory by its ID.
| Parameter | Type | Required | Description |
|---|---|---|---|
memory_id | string | Yes | UUID of the memory to retrieve |
Example response
update_memory
Updates an existing memory's content or priority.
| Parameter | Type | Required | Description |
|---|---|---|---|
memory_id | string | Yes | UUID of the memory to update |
memory | string | No | New memory content |
priority | string | No | New priority: LOW, MEDIUM, or HIGH |
Example response
delete_memory
Permanently deletes a memory. This action cannot be undone.
| Parameter | Type | Required | Description |
|---|---|---|---|
memory_id | string | Yes | UUID of the memory to delete |
Example response
promote_memory
Promotes a TASK-layer memory (temporary, with expiration) to RAW layer (permanent, no expiration).
| Parameter | Type | Required | Description |
|---|---|---|---|
memory_id | string | Yes | UUID of the memory to promote |
Example response
submit_feedback
Submits a quality signal on a memory. Feedback improves retrieval quality over time.
| Parameter | Type | Required | Description |
|---|---|---|---|
memory_id | string | Yes | UUID of the memory |
signal | string | Yes | POSITIVE, NEGATIVE, or NEUTRAL |
comment | string | No | Optional explanation for the feedback |
Example response
get_memory_history
Returns the event timeline for a memory — creation, updates, promotions, and feedback.
| Parameter | Type | Required | Description |
|---|---|---|---|
memory_id | string | Yes | UUID of the memory |
limit | number | No | Number of events to return (default 20) |
Example response
Knowledge
get_knowledge
Returns the consolidated knowledge profile for a user. Use at the start of a conversation to load full context.
| Parameter | Type | Required | Description |
|---|---|---|---|
user_id | string | No | Filter to a specific user |
category | string | No | Filter to a specific knowledge category |
merged | boolean | No | When true (default), returns a single unified Markdown document |
Example response (merged=true)
get_knowledge_entry
Retrieves a specific knowledge entry by its ID.
| Parameter | Type | Required | Description |
|---|---|---|---|
knowledge_id | string | Yes | UUID of the knowledge entry |
Example response
Graph
graph_search
Searches for entities (people, organizations, places, things) in the knowledge graph.
| Parameter | Type | Required | Description |
|---|---|---|---|
query | string | Yes | Text query to search entities |
user_id | string | No | Filter to entities linked to a specific user |
type | string | No | Filter by type: PERSON, ORGANIZATION, PLACE, or THING |
limit | number | No | Maximum results (default 10) |
Example response
graph_traverse
Traverses relationships from a known entity in the knowledge graph.
| Parameter | Type | Required | Description |
|---|---|---|---|
entity_id | string | Yes | UUID of the entity to start from |
direction | string | No | outgoing, incoming, or both (default both) |
hops | number | No | Traversal depth: 1, 2, or 3 (default 2) |
Example response
graph_query
Answers a natural language question using the knowledge graph.
| Parameter | Type | Required | Description |
|---|---|---|---|
question | string | Yes | Natural language question |
Example response
Utilities
get_dashboard_summary
Returns workspace KPIs for a given time window.
| Parameter | Type | Required | Description |
|---|---|---|---|
days | number | No | Time window in days (default 30) |
Example response
get_memory_profile
Returns a summarized profile of a user built from their memories.
| Parameter | Type | Required | Description |
|---|---|---|---|
user_id | string | Yes | UUID or identifier of the user |
Example response
list_entities
Lists all users and agents in the workspace with their memory counts.
No parameters.
Example response
Tool selection guide
| Need | Tool |
|---|---|
| Load full user context at conversation start | get_knowledge with merged=true |
| Find specific info by topic | search_memories |
| Store new information | add_memory |
| Correct or update existing info | update_memory |
| Remove wrong or outdated info | delete_memory (search first if you need the ID) |
| Browse memories chronologically | get_memories |
| Discover who has memories | list_entities |
| Find people or concepts in the graph | graph_search |
| Explore entity connections | graph_traverse |
| Ask complex relational questions | graph_query |
| Get workspace usage statistics | get_dashboard_summary |
| Get a quick overview of a specific user | get_memory_profile |
Related
- Getting Started — installation and client configuration
- Integrations — Claude Desktop, Cursor, HTTP mode, and troubleshooting