Meko MCP Server

MCP server and tools reference

The Meko MCP Server provides the primary tools for managing datapacks, conversations, memories, knowledge base, and related search.

To connect from IDEs and MCP-compatible clients, use the Meko MCP URL https://mcp.mekodata.ai/mcp and a user API key from Settings>API Keys. See Integrations and Quick start.

Free tier quotas

On the Free tier, MCP tool calls are metered per account:

Metric Limit (per month) Example tools
Conversations 1,000 conversation_add_message
Retrievals 10,000 memory_search, knowledgebase_search

When a quota is exceeded, further calls are blocked until you upgrade. Datapack creation and knowledge-base uploads are capped separately. See Meko pricing for the full plan table.

Tools

The Meko MCP Server provides 23 tools by default. Experimental conversation-search tools are hidden unless a deployment explicitly enables them.

Authorization comes from the authenticated user and their datapack grants.

Use For
Conversation
conversation_*
Full saved chat history and thread replay.

Example: Save or retrieve this chat
Memory
memory_*
Durable facts, preferences, decisions, and useful outcomes you want to recall across agents.

Example: Remember this about me or the project
Knowledge base
knowledgebase_*
Reusable, persistent, indexed shared documents, and collective memories that can be searched across agents.

Example: Search this in the knowledge base
Datapack
datapack_*
Provisioning and managing Meko workspaces/environments.

Example: Create or manage a workspace
Artifact
artifact_*
Uploading and retrieving files (reports, CSVs, PDFs, code output) for later or cross-agent access.

Example: Save this file for later

Conversation tools

Tool Description
conversation_create Create a stored conversation container.
Use this to save a chat/thread, not just a fact or document.
Typical inputs: agent_id, session_id, datapack_id, title, run_id, metadata
conversation_add_message Add a user/assistant turn to a stored conversation. The optional plan is an array of action strings.
Use this to preserve full exchanges; Meko asynchronously extracts durable facts from the saved user turn.
Typical inputs: conversation_id, input, output, agent_id, reasoning, plan, metadata, seed, datapack_id
conversation_get Fetch an agent-owned conversation, optionally with messages.
The supplied agent_id must own the conversation. Use this to review or replay a past conversation.
Typical inputs: conversation_id, agent_id, include_messages, limit, offset, datapack_id
conversation_list List conversations for a datapack across the current user's agent namespaces.
agent_id is used for trace attribution, not result filtering.
Typical inputs: datapack_id, conversation_id, agent_id, limit, offset
conversation_update Update an agent-owned conversation's title or metadata.
Use this when organizing or relabeling stored conversations.
Typical inputs: conversation_id, agent_id, title, metadata, datapack_id
conversation_delete Permanently delete an agent-owned conversation and all its messages.
Use this to remove saved conversation history.
Typical inputs: conversation_id, agent_id, datapack_id
track_token_usage Record a token-usage observation against a conversation trace, so that LLM, embedding, or extraction spend is attributed for free-tier accounting and dashboards.
Use this to pair a billable model call with a recorded usage entry.
Typical inputs: conversation_id, name, input_tokens, output_tokens, total_tokens, model, message_id, datapack_id

Memory tools

Tool Description
memory_add Store durable facts, preferences, decisions, or useful outcomes.
Use this for direct "remember this" requests, facts found only in assistant/tool output, and corrections. Saved conversation turns are extracted automatically.
Typical inputs: text, conversation_id, agent_id, run_id, metadata, messages, datapack_id
memory_search Search the current user's memories across agent namespaces and return related graph relations.
agent_id is used for trace attribution, not result filtering; don't fan out one search per agent.
limit sets the maximum number of returned results (default: 10); set a smaller value when you need fewer results to reduce response size and LLM context use.
Typical inputs: query, conversation_id, agent_id, limit, datapack_id, run_id
memory_get_all List the current user's memories across agent namespaces in a datapack.
agent_id is used for trace attribution, not result filtering.
Typical inputs: conversation_id, agent_id, datapack_id, promoted
memory_get_by_id Retrieve a single memory by ID.
Use this to inspect a memory.
Typical inputs: memory_id, conversation_id, agent_id, datapack_id
memory_update Replace the text of an existing memory.
Use this to correct a remembered fact; agent_id must match the writer.
Typical inputs: memory_id, text, conversation_id, agent_id, datapack_id
memory_delete_by_id Delete one memory.
Use this to remove a specific stored memory; agent_id must match the writer.
Typical inputs: memory_id, conversation_id, agent_id, datapack_id
memory_delete_all Delete memories for an agent, optionally narrowed by run ID.
Use this for a full reset or broad cleanup.
Typical inputs: conversation_id, agent_id, run_id, datapack_id
memory_promote Move memories into the datapack's shared knowledge base and Collective Memory, removing them from the agent's private store.
Before this one-way action, preview the exact memories, explain team visibility and private-memory removal, and get explicit confirmation. Only datapack owners and maintainers may promote. See Learnings.
Typical inputs: conversation_id, memory_ids, agent_id, datapack_id

Knowledgebase tools

Tool Description
knowledgebase_search Perform hybrid semantic and keyword search over a datapack's knowledge base.
Use this to search uploaded and shared documents.
Typical inputs: query, conversation_id, datapack_id, agent_id, limit

Datapack tools

Tool Description
datapack_create Provision a new datapack.
Use this to set up a new isolated Meko environment.
Typical inputs: name, conversation_id, datapack_id
datapack_describe Return datapack details and optional status.
Use this to inspect an existing datapack.
Typical inputs: datapack_id, include_status, conversation_id
datapack_list List datapacks visible to the current user.
Use this to see all workspaces/environments.
Typical inputs: conversation_id, datapack_id
datapack_update Update a datapack's name and/or description.
At least one of name or description must be provided; clearing a description with an empty string isn't supported.
Typical inputs: datapack_id, name, description, conversation_id
datapack_delete Permanently delete a datapack.
This operation is irreversible and requires an explicit datapack_id.
Typical inputs: datapack_id, conversation_id

Artifact tools

Tool Description
artifact_put Upload a file artifact (report, CSV, PDF, code output, and so on) to a datapack for later retrieval or cross-agent sharing.
Use this when an agent has generated a file it wants to persist. Uploading the same bytes twice is idempotent and returns the same content hash, which is the lookup key for artifact_get.
Typical inputs: filename, content_base64, content_type, conversation_id, datapack_id, agent_id
artifact_get Retrieve a previously uploaded artifact by its content hash.
Use this when an agent needs to read back a file it, or another agent, previously stored using artifact_put. Files smaller than 1 MB are returned inline; larger files are written to the client's local artifact directory and returned by path.
Typical inputs: content_hash, conversation_id, datapack_id, agent_id