Server definition
- Hash
- sha256:e1680b7f74cc41acae7233af7ae5029ab8f754dc83d6b8d982091f076ebe51d2
- What it is
- What a remote MCP server returned when asked what it offers: 7 tools
The blob, as servednamed by its sha256
{
"instructions": "Memra is this user's persistent long-term memory. Before answering questions about project status, history, past decisions, or recalling prior context — search Memra first using `memra_recall`. When starting a new session or conversation, call `memra_bootstrap` to load priority context. After learning something worth remembering (decisions, user preferences, project context, important facts), store it with `memra_remember`. Treat Memra as the first source of truth before falling back to local files or asking the user to repeat themselves. Use `memra_list` to browse memories when search terms are unclear, or to fetch by tag/date for time-based queries (more efficient than semantic search). Use `memra_remember` with type=decision for irreversible choices and type=pattern for reusable workflows. When you are correcting or updating existing knowledge (a fact has changed, a decision was reversed, a preference was refined), use `memra_supersede` on the old memory instead of `memra_remember` — this preserves the audit trail and stops the stale memory from surfacing in search. Use `memra_history` to view the full supersession chain for any memory when the user asks how something evolved, or when you need to understand prior reasoning before proposing another change.",
"tools": [
{
"description": "Load agent bootstrap context from Memra. Returns priority-ordered memories for agent session initialization.",
"inputSchema": {
"properties": {
"agent_id": {
"description": "Agent identifier, defaults to API key ID",
"type": "string"
},
"exclude_types": {
"description": "Exclude these memory types",
"items": {
"type": "string"
},
"type": "array"
},
"include_types": {
"description": "Only include these memory types",
"items": {
"type": "string"
},
"type": "array"
},
"max_tokens": {
"default": 500,
"description": "Token budget for bootstrap payload",
"type": "integer"
},
"namespace": {
"description": "Tenant namespace",
"type": "string"
},
"project_id": {
"description": "Project ID (required if account has multiple projects)",
"type": "string"
},
"recency_days": {
"default": 7,
"description": "Include context from last N days",
"type": "integer"
}
},
"required": [
"namespace"
],
"type": "object"
},
"name": "memra_bootstrap",
"outputSchema": {
"properties": {
"health_warnings": {
"items": {
"type": "object"
},
"type": "array"
},
"memories": {
"items": {
"properties": {
"content_classification": {
"type": "string"
},
"content_origin": {
"type": [
"string",
"null"
]
},
"trust_state": {
"type": "string"
},
"untrusted_content": {
"type": "boolean"
},
"uri": {
"type": "string"
}
},
"required": [
"uri",
"untrusted_content",
"content_classification"
],
"type": "object"
},
"type": "array"
},
"revision": {
"type": "integer"
},
"token_estimate": {
"type": "integer"
}
},
"required": [
"memories",
"token_estimate"
],
"type": "object"
}
},
{
"description": "Get a single memory by ID with full content. Use when you need the complete text of a memory (search results are truncated).",
"inputSchema": {
"properties": {
"memory_id": {
"description": "The memory ID to retrieve",
"type": "string"
}
},
"required": [
"memory_id"
],
"type": "object"
},
"name": "memra_get",
"outputSchema": {
"properties": {
"content": {
"type": "string"
},
"content_classification": {
"type": "string"
},
"content_origin": {
"type": [
"string",
"null"
]
},
"created_at": {
"type": [
"string",
"null"
]
},
"id": {
"type": "string"
},
"importance": {
"type": [
"integer",
"null"
]
},
"metadata": {
"type": [
"object",
"array",
"null"
]
},
"namespace": {
"type": [
"string",
"null"
]
},
"project_id": {
"type": [
"string",
"null"
]
},
"tags": {
"items": {
"type": "string"
},
"type": "array"
},
"trust_state": {
"type": "string"
},
"type": {
"type": "string"
},
"untrusted_content": {
"type": "boolean"
},
"updated_at": {
"type": [
"string",
"null"
]
},
"uri": {
"type": "string"
},
"verification_method": {
"type": [
"string",
"null"
]
},
"verified_by": {
"type": [
"string",
"null"
]
}
},
"required": [
"id",
"uri",
"type",
"content",
"trust_state",
"untrusted_content"
],
"type": "object"
}
},
{
"description": "View the full supersession chain for a memory (oldest to newest). Use this when you need to audit how a fact or decision evolved over time — e.g., the user asks \"why did we change X?\", you need to understand prior reasoning before proposing another change, or you spotted a superseded_by reference and need the full timeline. Given any memory ID in the chain, returns every predecessor and successor.",
"inputSchema": {
"properties": {
"memory_id": {
"description": "Any memory ID in the chain",
"type": "string"
}
},
"required": [
"memory_id"
],
"type": "object"
},
"name": "memra_history",
"outputSchema": {
"properties": {
"chain": {
"items": {
"properties": {
"created_at": {
"type": "string"
},
"id": {
"type": "string"
},
"status": {
"type": "string"
},
"superseded_by": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string"
}
},
"required": [
"id",
"type",
"status"
],
"type": "object"
},
"type": "array"
},
"length": {
"type": "integer"
}
},
"required": [
"chain",
"length"
],
"type": "object"
}
},
{
"description": "List memories in Memra for a namespace. Returns paginated results with filtering options.",
"inputSchema": {
"properties": {
"limit": {
"default": 20,
"description": "Max results",
"maximum": 100,
"minimum": 1,
"type": "integer"
},
"min_importance": {
"description": "Minimum importance",
"maximum": 10,
"minimum": 1,
"type": "integer"
},
"namespace": {
"description": "Tenant namespace",
"type": "string"
},
"offset": {
"default": 0,
"description": "Pagination offset",
"type": "integer"
},
"project_id": {
"description": "Filter by project ID",
"type": "string"
},
"tags": {
"description": "Filter by tags",
"items": {
"type": "string"
},
"type": "array"
},
"type": {
"description": "Filter by memory type",
"enum": [
"fact",
"event",
"pattern",
"working",
"decision",
"preference",
"context",
"entity",
"reference"
],
"type": "string"
}
},
"required": [
"namespace"
],
"type": "object"
},
"name": "memra_list",
"outputSchema": {
"properties": {
"memories": {
"items": {
"properties": {
"created_at": {
"type": "string"
},
"id": {
"type": "string"
},
"importance": {
"type": "integer"
},
"tags": {
"items": {
"type": "string"
},
"type": "array"
},
"type": {
"type": "string"
}
},
"required": [
"id",
"type"
],
"type": "object"
},
"type": "array"
},
"total": {
"type": "integer"
}
},
"required": [
"memories",
"total"
],
"type": "object"
}
},
{
"description": "Search memories in Memra by semantic similarity. Returns ranked results by relevance. Replaces memra_search.",
"inputSchema": {
"properties": {
"limit": {
"default": 10,
"description": "Max results to return",
"maximum": 50,
"minimum": 1,
"type": "integer"
},
"max_tokens": {
"description": "Token budget: return the best-scoring results that fit within this many tokens (chars/4 heuristic). Combine with a higher limit to fill the budget.",
"minimum": 100,
"type": "integer"
},
"min_confidence": {
"description": "Minimum confidence score",
"maximum": 1,
"minimum": 0,
"type": "number"
},
"namespace": {
"description": "Tenant namespace to search within",
"type": "string"
},
"not_tags": {
"description": "Exclude memories carrying any of these tags.",
"items": {
"type": "string"
},
"type": "array"
},
"project_id": {
"description": "Filter by project ID",
"type": "string"
},
"query": {
"description": "Search query for semantic matching",
"type": "string"
},
"since": {
"description": "Only memories created at or after this ISO-8601 date.",
"type": "string"
},
"tags": {
"description": "Filter by tags",
"items": {
"type": "string"
},
"type": "array"
},
"type": {
"description": "Filter by memory type",
"enum": [
"fact",
"event",
"pattern",
"working",
"decision",
"preference",
"context",
"entity",
"reference"
],
"type": "string"
},
"until": {
"description": "Only memories created at or before this ISO-8601 date.",
"type": "string"
},
"used_ids": {
"description": "Feedback: memory IDs from your PREVIOUS recall that you actually used. They gain a small permanent ranking boost — pass these every time to make recall learn.",
"items": {
"type": "string"
},
"type": "array"
},
"wait_for_revision": {
"description": "Read-your-writes: pass the revision returned by memra_remember to block (max 5s) until that write is indexed and searchable. Use when recalling something you just stored.",
"minimum": 0,
"type": "integer"
}
},
"required": [
"query",
"namespace"
],
"type": "object"
},
"name": "memra_recall",
"outputSchema": {
"properties": {
"estimated_tokens": {
"type": "integer"
},
"results": {
"items": {
"properties": {
"content": {
"type": "string"
},
"content_classification": {
"type": "string"
},
"content_origin": {
"type": [
"string",
"null"
]
},
"created_at": {
"type": [
"string",
"null"
]
},
"excerpt": {
"type": "string"
},
"full_content_available": {
"type": "boolean"
},
"id": {
"type": "string"
},
"importance": {
"type": [
"integer",
"null"
]
},
"last_confirmed": {
"description": "When this memory was last written or refreshed.",
"type": [
"string",
"null"
]
},
"memory_id": {
"type": "string"
},
"score": {
"type": "number"
},
"staleness_score": {
"description": "0 (fresh) to 100 (critical). High values mean the memory may be outdated — verify before relying on it.",
"type": [
"integer",
"null"
]
},
"staleness_status": {
"enum": [
"fresh",
"aging",
"stale",
"critical",
null
],
"type": [
"string",
"null"
]
},
"tags": {
"items": {
"type": "string"
},
"type": "array"
},
"trust_state": {
"type": "string"
},
"type": {
"type": [
"string",
"null"
]
},
"untrusted_content": {
"type": "boolean"
},
"uri": {
"type": "string"
}
},
"required": [
"id",
"uri",
"excerpt",
"score",
"trust_state",
"untrusted_content"
],
"type": "object"
},
"type": "array"
},
"total_candidates": {
"type": "integer"
}
},
"required": [
"results",
"total_candidates"
],
"type": "object"
}
},
{
"description": "Store one or many memories in Memra. Single mode: pass content + namespace. Decision mode: pass type=decision with content + namespace (optionally context). Pattern mode: pass type=pattern with title + steps + namespace. Bulk mode: pass entries[]. If the response contains conflicts[], the new fact contradicts those existing memories — review them and use memra_supersede on the outdated one instead of leaving both active.",
"inputSchema": {
"properties": {
"content": {
"description": "Single/decision mode: memory content. Required unless using entries[] or pattern mode.",
"maxLength": 10000,
"type": "string"
},
"context": {
"description": "Decision mode: reasoning/context for the decision.",
"type": "string"
},
"entries": {
"description": "Bulk mode: array of memory entries (max 25). When provided, the server routes to batch create.",
"items": {
"type": "object"
},
"type": "array"
},
"gotchas": {
"description": "Pattern mode: common pitfalls.",
"items": {
"type": "string"
},
"type": "array"
},
"importance": {
"default": 5,
"maximum": 10,
"minimum": 1,
"type": "integer"
},
"mask": {
"default": false,
"type": "boolean"
},
"metadata": {
"type": "object"
},
"namespace": {
"description": "Tenant namespace. Required for single, decision, and pattern modes.",
"type": "string"
},
"project_id": {
"description": "Project ID (required if account has multiple projects)",
"type": "string"
},
"steps": {
"description": "Pattern mode: ordered steps. Required with title when type=pattern.",
"items": {
"type": "string"
},
"type": "array"
},
"tags": {
"items": {
"type": "string"
},
"type": "array"
},
"title": {
"description": "Pattern mode: title. Required with steps when type=pattern.",
"type": "string"
},
"type": {
"default": "fact",
"description": "Memory type; use decision for decision mode and pattern for pattern mode.",
"enum": [
"fact",
"event",
"pattern",
"working",
"decision",
"preference",
"context",
"entity",
"reference"
],
"type": "string"
},
"verify_checklist": {
"description": "Pattern mode: verification checklist.",
"items": {
"type": "string"
},
"type": "array"
}
},
"type": "object"
},
"name": "memra_remember",
"outputSchema": {
"oneOf": [
{
"properties": {
"action": {
"enum": [
"created",
"duplicate_found"
],
"type": "string"
},
"conflicts": {
"description": "Existing memories this new fact contradicts (NLI-scored). Review each and memra_supersede the outdated one.",
"items": {
"properties": {
"confidence": {
"type": "number"
},
"memory_id": {
"type": "string"
},
"preview": {
"type": "string"
}
},
"required": [
"memory_id",
"preview",
"confidence"
],
"type": "object"
},
"type": "array"
},
"embedding_status": {
"enum": [
"pending",
"complete",
"failed"
],
"type": "string"
},
"memory_id": {
"type": "string"
},
"namespace": {
"type": "string"
},
"project_id": {
"type": "string"
},
"revision": {
"description": "Read-your-writes token — pass to memra_recall as wait_for_revision to guarantee this write is searchable.",
"type": "integer"
},
"type": {
"type": "string"
}
},
"required": [
"memory_id",
"action"
],
"type": "object"
},
{
"properties": {
"created": {
"type": "integer"
},
"results": {
"items": {
"type": "object"
},
"type": "array"
},
"total": {
"type": "integer"
}
},
"required": [
"total",
"created",
"results"
],
"type": "object"
}
],
"type": "object"
}
},
{
"description": "Replace a memory with new content. The old memory is marked superseded and stops appearing in search; the new memory inherits the old memory's type, importance, tags, source and metadata unless overridden. Works for all memory types (use this instead of memra_add when you are correcting or updating existing knowledge).",
"inputSchema": {
"properties": {
"content": {
"description": "New content that replaces the old memory",
"maxLength": 10000,
"type": "string"
},
"importance": {
"description": "Override importance (defaults to old memory's importance)",
"maximum": 10,
"minimum": 1,
"type": "integer"
},
"memory_id": {
"description": "ID of the memory to supersede",
"type": "string"
},
"metadata": {
"description": "Override metadata (defaults to old memory's metadata)",
"type": "object"
},
"tags": {
"description": "Override tags (defaults to old memory's tags)",
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"memory_id",
"content"
],
"type": "object"
},
"name": "memra_supersede",
"outputSchema": {
"properties": {
"embedding_status": {
"enum": [
"pending",
"complete",
"failed"
],
"type": "string"
},
"new_memory_id": {
"type": "string"
},
"revision": {
"description": "Read-your-writes token — pass to memra_recall as wait_for_revision.",
"type": "integer"
},
"superseded_memory_id": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"new_memory_id",
"superseded_memory_id",
"type"
],
"type": "object"
}
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:e1680b7f74cc41acae7233af7ae5029ab8f754dc83d6b8d982091f076ebe51d2 | sha256sum