Some MCP parameters use compact transport-friendly encodings:
datasetsandsession_idsare comma-separated strings, not JSON arrays.top_kmust be between1and100.cognify.dataaccepts either a single string or a JSON array of strings for batch ingestion.
Available Tools
v1.0 Memory Tools (Recommended)
v1.0 Memory Tools (Recommended)
Prefer these tools for new integrations. They map to Cognee’s current main operations.
`remember`
`remember`
Store content as permanent graph memory or session memory in one call. See Remember.
| Parameter | Type | Default | Notes |
|---|---|---|---|
data | str | required | Text to store. |
dataset_name | str | main_dataset | Target dataset for permanent memory. |
session_id | str | None | When set, stores in session cache instead of permanent graph memory. |
custom_prompt | str | None | Custom extraction prompt for permanent-memory mode. |
`recall`
`recall`
Retrieve memory with auto-routing and session-aware behavior. See Recall.
| Parameter | Type | Default | Notes |
|---|---|---|---|
query | str | required | Natural-language query. |
search_type | str | None | Optional override for auto-routing. |
datasets | str | None | Comma-separated dataset names. Name lookup is owner-scoped. |
session_id | str | None | Session-first retrieval scope. |
top_k | int | 10 | Must be between 1 and 100. |
`forget`
`forget`
Delete a dataset or wipe all memory owned by the current user. See Forget.
At least one of
| Parameter | Type | Default | Notes |
|---|---|---|---|
dataset | str | None | Dataset name to delete. |
everything | bool | False | Set to true to delete all user-owned memory. |
dataset or everything=true must be provided.`improve`
`improve`
Enrich an existing graph and optionally bridge session memory into permanent memory. See Improve.
| Parameter | Type | Default | Notes |
|---|---|---|---|
dataset_name | str | main_dataset | Dataset to enrich. |
session_ids | str | None | Comma-separated session IDs to bridge into the permanent graph. |
Legacy Memory Tools
Legacy Memory Tools
Still available for lower-level control or existing integrations.
`cognify`
`cognify`
Transform ingested data into a structured knowledge graph.
If
| Parameter | Type | Default | Notes |
|---|---|---|---|
data | str | required | A single string or a JSON array of strings for batch ingestion. |
dataset_name | str | main_dataset | Dataset to populate. |
graph_model_file | str | None | Path to a custom graph model file. |
graph_model_name | str | None | Class name inside graph_model_file. |
custom_prompt | str | None | Custom extraction prompt. |
graph_model_file is set, graph_model_name should also be provided.`search`
`search`
Retrieve memory with explicit lower-level search control.
| Parameter | Type | Default | Notes |
|---|---|---|---|
search_query | str | required | Natural-language query. |
search_type | str | required | Explicit lower-level search type such as GRAPH_COMPLETION, RAG_COMPLETION, CHUNKS, SUMMARIES, or CYPHER. |
top_k | int | 10 | Must be between 1 and 100. |
datasets | str | None | Comma-separated dataset names. Name lookup is owner-scoped. |
`prune`
`prune`
Reset the local MCP-managed store for a fresh start.This tool has no parameters.
prune is not available in API mode.Retrieval Context Helpers
Retrieval Context Helpers
Use these after retrieval when you need a fuller document view or nearby chunk context.
`get_document`
`get_document`
Retrieve a source document and its chunks.
| Parameter | Type | Default | Notes |
|---|---|---|---|
document_id | str | required | Document ID. A chunk ID is also accepted and resolves to its parent document. |
include_metadata | bool | True | Include metadata in the response. |
max_chunks | int | 0 | Use 0 to return all chunks. |
`get_chunk_neighbors`
`get_chunk_neighbors`
Retrieve nearby chunks from the same document.
| Parameter | Type | Default | Notes |
|---|---|---|---|
chunk_id | str | required | Target chunk ID. |
neighbor_count | int | 2 | Number of chunks to fetch on each side. |
include_target | bool | True | Include the original chunk in the response. |
direction | str | both | One of both, forward, or backward. |
get_document and get_chunk_neighbors are not available in API mode.Interaction Capture
Interaction Capture
`save_interaction`
`save_interaction`
Store a user-assistant exchange so Cognee can process it into memory and related rules.
| Parameter | Type | Default | Notes |
|---|---|---|---|
data | str | required | Interaction content to ingest. |
Data Management
Data Management
`list_data`
`list_data`
List datasets and their data items with IDs for deletion operations.
| Parameter | Type | Default | Notes |
|---|---|---|---|
dataset_id | str | None | Optional dataset UUID. When omitted, lists all datasets. |
`delete`
`delete`
Remove a specific data item from a dataset.
| Parameter | Type | Default | Notes |
|---|---|---|---|
data_id | str | required | Data item UUID. |
dataset_id | str | required | Dataset UUID containing the item. |
mode | str | soft | Either soft or hard. |
`delete_dataset`
`delete_dataset`
Delete an entire dataset by name.
| Parameter | Type | Default | Notes |
|---|---|---|---|
dataset_name | str | required | Dataset name to delete. |
`cognify_status`
`cognify_status`
Check current and recent pipeline runs for a dataset.
| Parameter | Type | Default | Notes |
|---|---|---|---|
dataset_name | str | main_dataset | Dataset to inspect. |
pipelines | list[str] | ["cognify_pipeline"] | Optional list of pipeline names to restrict the status view. |
delete_dataset and cognify_status are not available in API mode. list_data(dataset_id=...) also requires direct mode for detailed per-item listing.Usage Notes
- For new integrations, start with
rememberto store data andrecallto retrieve it. - Use
improvewhen you want to enrich an existing graph or bridge session memory into permanent memory. - Use
forgetto remove a dataset or wipe all memory owned by the current user. - Reach for
cognify,search, andpruneonly when you need lower-level control or are maintaining an older workflow. - Use
get_documentorget_chunk_neighborsafter aCHUNKSresult when the initial match is too narrow. - Use
cognify_statusto verify indexing before querying a freshly processed dataset. - In shared-dataset setups, prefer the Python SDK or REST API when you need UUID-based dataset scoping for a dataset the current user did not create.
Next Steps
Client Integrations
Learn how to use these tools with your AI development environment