memstate_remember
Save markdown, text, or task summaries to automatically create structured memories with keypath extraction, organization, and versioning for AI agents.
Instructions
Save markdown, task summaries, or any text. Server extracts keypaths and creates structured memories automatically. This is the PREFERRED way to save information.
USE THIS WHEN: Saving task summaries, meeting notes, docs, or any text with multiple facts. The server handles organization, conflict detection, and versioning. NOT FOR: Setting one specific keypath to a short value (e.g. config.port = "8080") — use memstate_set for that.
memstate_remember(project_id="myapp", content="## Task Summary\n- Added OAuth\n- Files: auth.go, middleware.go", source="agent") memstate_remember(project_id="myapp", content="Architecture decision: migrated to JWT tokens for session management")
Content limit: 100,000 chars. Processing is async (~15-18s); returns job_id immediately.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| project_id | Yes | Required. Project to store in (e.g. 'myapp'). Auto-creates if new. | |
| content | Yes | Markdown or text to remember (max 100,000 chars). Server extracts keypaths and creates structured memories automatically. | |
| source | No | Source type: agent, readme, docs, meeting, code | |
| context | No | Optional hint to guide keypath extraction |
Implementation Reference
- src/index.ts:139-144 (handler)The memstate_remember tool is dynamically proxied by the MCP server, so its execution is handled by a generic tool call handler that forwards the request to the remote Memstate MCP server.
server.setRequestHandler(CallToolRequestSchema, async (request) => { return await remote.callTool({ name: request.params.name, arguments: request.params.arguments, }); });