Memory & RAG Tools
The 60db MCP Server exposes the full Memory/RAG layer to MCP clients like Claude Desktop. These tools let an AI assistant persist user memories, ingest knowledge base documents (91+ formats with built-in OCR), run hybrid semantic recall, and assemble LLM-ready context for retrieval-augmented generation.All memory tools are pay-as-you-go from the workspace wallet. Every billable response surfaces the new balance, the charge amount, and the transaction ID in the formatted output so the agent can reason about cost. See the pricing reference for rates and refund policy.
Tool summary
| Tool | Billed | Purpose |
|---|---|---|
sixtydb_memory_ingest | ✓ | Store a single memory |
sixtydb_memory_ingest_batch | ✓ | Batch-store up to 100 memories |
sixtydb_memory_upload_document | ✓✓ | Extract + ingest a document (PDF, DOCX, XLSX, images, etc.) |
sixtydb_memory_search | ✓ | Hybrid semantic + keyword recall |
sixtydb_memory_context | ✓ | Assemble LLM-ready context for RAG |
sixtydb_memory_list_collections | — | List collections in the workspace |
sixtydb_memory_create_collection | — | Create a team/knowledge/hive collection |
sixtydb_memory_get_usage | — | Monthly spend breakdown + wallet balance |
sixtydb_memory_get_status | — | Poll a memory’s ingestion state |
sixtydb_memory_delete | — | Soft-delete a memory (24h undo) |
Ingest a memory
Store a single fact, preference, or conversation snippet:text(required) — content to store, max 100,000 characterstitle(optional) — display titlecollection(optional) — target collection ID (defaults to personal)type—user,knowledge, orhive(default:user)infer— if true, the memory service extracts structured facts via LLM
Upload a document
The most powerful memory tool — give the agent a file path and 60db handles format detection, OCR, chunking, and ingestion:file_path(required) — absolute path on the agent’s local filesystemcollection(optional) — target collectiontype—user|knowledge|hive(default:knowledge— right choice for docs)title(optional) — display title, defaults to filenamechunk_size(optional) — characters per chunk (200–8000, default 1500)chunk_overlap(optional) — character overlap between chunks (default 200)
- Extract fee: $0.003 per MB (pre-charged)
- Ingest fee: $0.0001 per 1,000 extracted characters (post-charged)
Search memories
Hybrid semantic + keyword recall with optional cross-encoder reranking, across user memories AND knowledge documents in one call:query(required) — search text, max 2,000 charscollection(optional) — collection to searchmode—fast(dense retrieval, ~100-200ms) orthinking(wider pool + cross-encoder rerank, ~200-400ms)max_results— 1–50, default 10alpha— 0 (keyword only) to 1 (semantic only), default 0.8recency_bias— weight for newer memories (0–1), default 0graph_context— include knowledge-graph relationships
rerank_top_k— max candidates the cross-encoder reranks (1-500)rerank_timeout_ms— hard timeout for rerank call (50-5000ms)min_rerank_score— drop results below this score (0-1)fetch_multiplier— in thinking mode, fetch N x max_results candidates (1-10)
rerank_score (cross-encoder confidence, 0-1) alongside the regular score (dense similarity). The rerank score is the more reliable ranking signal.
Tuning by query type:
| Query type | Recommended |
|---|---|
| Exact phrase match | alpha: 0.2, mode: fast |
| Conceptual question | alpha: 0.9, mode: fast |
| Complex multi-faceted | alpha: 0.7, mode: thinking |
| Latest-events focus | alpha: 0.6, recency_bias: 0.3 |
Assemble context (RAG)
Purpose-built for retrieval-augmented generation. Returns aprompt_ready string you can prepend directly to an LLM system message:
prompt_ready string and the charge is automatically refunded so the chat flow keeps working.
Cost: flat $0.0005 per query.
Collections
List everything the caller can see:Monitor spend
Track usage and wallet balance without affecting the wallet:current_month (default), last_30_days, all_time.
Handling insufficient credits
When the wallet runs out, billable tools return an error withINSUFFICIENT_CREDITS structure. Agents should:
- Catch the 402 case
- Call
sixtydb_memory_get_usageto show the shortfall to the user - Prompt the user to top up via the 60db dashboard (link:
/app/billing) - Retry the original operation once the wallet is funded
Billing transparency in every response
Every billable tool response includes a Billing footer in the formatted output:billing: { balance, charged, txId } object for programmatic consumers.