MCP Server
Streamable HTTP Model Context Protocol endpoint for agent-bound memory, context and relationship tools.
Use this when an MCP-compatible agent needs controlled access to Copepod memory. The API key identifies the agent and tenant.
Endpoints
Available endpoints
/tools/cme_status
Checks service health and the tenant derived from the authenticated key.
Health check
Check that the MCP service and memory API are available.
{ "type": "invoke", "name": "cme_status" }/tools/cme_create
Creates a memory and returns a queued response. The memory may not be searchable immediately.
Create memory
Submit a new memory to the queue.
{ "type": "invoke", "name": "cme_create", "arguments": { "title": "Meeting notes", "content": "Discussed project timeline...", "tags": ["meeting", "planning"] } }/tools/cme_get
Get a memory by ID.
Fetch memory
Look up a memory by ID.
{ "type": "invoke", "name": "cme_get", "arguments": { "memory_id": "uuid-string" } }/tools/cme_search
Searches accessible memory using hybrid, hybrid+graph or vector-only retrieval.
Search memories
Search shared memory with the graph retrieval channel.
{ "type": "invoke", "name": "cme_search", "arguments": { "query": "project planning", "limit": 10, "mode": "hybrid+graph" } }/tools/cme_list
List memories with pagination support.
List memories
Paginated memory list.
{ "type": "invoke", "name": "cme_list", "arguments": { "limit": 50, "offset": 0 } }/tools/cme_update
Queues an update to an existing memory. Poll with cme_get until the updated state is available.
Update memory
Modify an existing memory.
{ "type": "invoke", "name": "cme_update", "arguments": { "memory_id": "uuid-string", "title": "Updated title", "content": "Updated content..." } }/tools/cme_delete
Delete a memory by ID.
Delete memory
Remove a memory that should no longer exist. Update it instead when the information has changed.
{ "type": "invoke", "name": "cme_delete", "arguments": { "memory_id": "uuid-string" } }/tools/cme_context_build
Builds or refreshes a durable private context using bounded retrieval and deterministic extraction. No generative model composes the capsule.
Build durable context
Create a cited private context for the authenticated agent.
{ "type": "invoke", "name": "cme_context_build", "arguments": { "subject": "Atlas launch plan", "subject_kind": "project", "max_tokens": 700, "candidate_limit": 8 } }/tools/cme_context_get
Reloads one of the authenticated agent's private durable contexts by context ID.
/tools/cme_link
Creates a typed graph link between two verified memories.
/tools/cme_brief
Stores an agent-authored brief that cites between two and twenty verified source memories.
Request example
Build a durable context
Compile a bounded private capsule from authorised evidence.
{
"type": "invoke",
"name": "cme_context_build",
"arguments": {
"subject": "Atlas launch plan",
"subject_kind": "project",
"max_tokens": 700,
"candidate_limit": 8
}
}Base path
https://api.copepod.ai/mcp/
Schemas
Request and response fields
cme_search parameters
Parameters accepted by the memory search tool.
| Field | Type | Required | Description |
|---|---|---|---|
| query | string | required | Search query text. |
| limit | number | optional | Number of results (default 10). |
| mode | "hybrid" | "hybrid+graph" | "vector-only" | optional | Retrieval mode. hybrid+graph is the default. |
| graph | boolean | optional | Compatibility flag that adds the knowledge graph channel to hybrid retrieval. |
| min_quality | number | optional | Soft quality weighting from 0 to 1. |
| agent_id | uuid | optional | Narrows results to one agent's records. It does not establish caller identity. |
MCP connection
Connection values for the public Streamable HTTP endpoint.
| Field | Type | Required | Description |
|---|---|---|---|
| url | string | required | https://api.copepod.ai/mcp/ |
| X-API-Key | header | required | An active API key bound to the agent using the connection. |
Response examples
What the API returns
Built context
The response includes the private context ID, revisions, context capsule and citations.
{
"context_id": "uuid-string",
"definition_revision": 1,
"snapshot_version": 1,
"context": "# Atlas launch plan\n...",
"freshness": "fresh",
"citations": [...]
}Queued write response
Create and update operations return queued status.
{
"status": "queued",
"memory_id": "uuid-string"
}Notes
Implementation notes
- The public MCP service uses Streamable HTTP at https://api.copepod.ai/mcp/.
- Write operations return queued responses. Poll with cme_get until the change is visible.
- The API key supplies tenant and agent identity. Do not configure or send CME_TENANT_ID.
- Context lifecycle tools include cme_contexts, cme_context_refresh, cme_context_archive and cme_context_promote. Relationship tools include cme_links and cme_unlink.