Memanto MCP

MEMANTO é um agente de memória. Ele lembra, recorda e responde — para que seus agentes possam alcançar objetivos de longo prazo e evitar confusão.

Documentação

Servidor Memanto MCP

Memória semântica persistente para qualquer agente compatível com MCP.

Este pacote expõe as primitivas de memória do Memantoremember, recall, answer e afins — como ferramentas do Model Context Protocol (MCP) para que qualquer cliente MCP (Claude Desktop, Cursor, Windsurf, Cline, Continue, Goose, agentes personalizados, …) possa se conectar à memória de longo prazo em uma única linha de configuração.

Uma chave de API Moorcheh → memória semântica tipada em todos os agentes que compartilham o namespace, com recuperação abaixo de 90 ms, detecção de conflitos e zero latência de ingestão.


Instalação

pip install memanto-mcp

Requer Python 3.10+, memanto>=0.2.13, mcp>=1.2,<2 e uma chave de API Moorcheh (nível gratuito: 100 mil operações/mês).

Início rápido (Claude Desktop)

  1. Obtenha uma chave de API Moorcheh no console.
  2. Edite claude_desktop_config.json (Configurações → Desenvolvedor → Editar Config):
{
  "mcpServers": {
    "memanto": {
      "command": "memanto-mcp",
      "env": {
        "MOORCHEH_API_KEY": "mch_xxxxxxxxxxxxxxxxxx",
        "MEMANTO_DEFAULT_AGENT_ID": "my-assistant"
      }
    }
  }
}
  1. Reinicie o Claude Desktop. Peça para "lembrar que prefiro respostas concisas" — e amanhã, em um novo chat, pergunte "o que eu prefiro?".

A primeira chamada cria automaticamente o agente e o namespace my-assistant; cada chamada subsequente reutiliza a mesma memória persistente.

Início rápido (Cursor / Windsurf / Cline / Continue / Goose)

A maioria dos clientes consome um arquivo de configuração no formato MCP padrão. O mesmo trecho JSON funciona quase sem alterações:

{
  "mcpServers": {
    "memanto": {
      "command": "memanto-mcp",
      "env": {
        "MOORCHEH_API_KEY": "mch_xxxxxxxxxxxxxxxxxx",
        "MEMANTO_DEFAULT_AGENT_ID": "cursor-workspace"
      }
    }
  }
}
ClienteCaminho do config
Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.json (macOS) / %APPDATA%\Claude\claude_desktop_config.json (Windows)
Cursor~/.cursor/mcp.json (ou por projeto .cursor/mcp.json)
Windsurf~/.codeium/windsurf/mcp_config.json
Cline (VS Code)~/.config/Code/User/globalStorage/cline.cline/settings/cline_mcp_settings.json
Continue~/.continue/config.jsonexperimental.modelContextProtocolServers
Goose~/.config/goose/config.yaml

Ferramentas disponíveis

O servidor registra 7 ferramentas de memória por padrão. Defina MEMANTO_EXPOSE_ADMIN=true para também expor 4 ferramentas de gerenciamento de agentes.

Ferramentas de memória (sempre ativas)

FerramentaQuando o agente deve chamá-la
rememberPersistir um único novo fato/preferência/decisão/objetivo/instrução.
batch_rememberPersistir até 100 memórias em uma única chamada (ex.: extraídas de um documento).
recallBusca semântica — sempre verifique aqui antes de pedir ao usuário para repetir informações estáveis.
recall_recent"O que acabamos de decidir?" — do mais recente para o mais antigo, sem necessidade de consulta.
recall_as_ofRecuperação em um ponto no tempo — "o que sabíamos em 2025-11-01?"
recall_changed_sinceDiferencial — "o que há de novo desde a última verificação?"
answerRAG: resposta fundamentada do LLM sintetizada sobre as memórias do agente.

Ferramentas de administração de agentes (opt-in)

Ativadas quando MEMANTO_EXPOSE_ADMIN=true:

FerramentaFinalidade
create_agentCriar um novo namespace de memória.
list_agentsListar todos os agentes que a chave de API pode ver.
get_agentConsultar os metadados de um agente.
delete_agentRemover os metadados locais de um agente.

Tipos de memória aceitos por remember / batch_remember: fact, preference, goal, decision, artifact, learning, event, instruction, relationship, context, observation, commitment, error.

Valores de proveniência: explicit_statement, inferred, corrected, validated, observed, imported.

Atribuição de origem

source identifica quem escreveu uma memória, para que a recuperação possa ser atribuída e filtrada por escritor. É aberto: user, agent, tool, system ou um escritor específico como cursor, codex, claude_code, mem0. Os rótulos são limitados a 64 letras, dígitos, ., _ ou - para que #source:<value> continue sendo um filtro utilizável.

Quando uma chamada de ferramenta omite source, o servidor atribui a escrita ao cliente MCP conectado a partir do handshake de inicialização (cursor, codex, claude-ai, …), recorrendo a mcp-agent quando o cliente não envia nome. Dois editores que compartilham um mesmo agente permanecem, portanto, distinguíveis na recuperação sem qualquer configuração extra.

Configuração

Toda a configuração é feita por variáveis de ambiente (ordem de carregamento: env do processo → arquivo .env no diretório de trabalho).

VariávelObrigatóriaPadrãoDescrição
MOORCHEH_API_KEYsimChave de API Moorcheh.
MEMANTO_DEFAULT_AGENT_IDrecomendadanenhumAgente padrão. Quando definido, as chamadas de ferramenta podem omitir agent_id.
MEMANTO_AGENT_PATTERNnãotoolPadrão (support/project/tool) usado ao criar automaticamente o agente padrão.
MEMANTO_AGENT_AUTO_CREATEnãotrueCriar o agente padrão no primeiro uso se não existir. Agentes explícitos não padrão devem já existir.
MEMANTO_SESSION_DURATION_HOURSnãopadrão do servidor (6)Vida útil da sessão em horas.
MEMANTO_EXPOSE_ADMINnãofalseRegistrar as 4 ferramentas de gerenciamento de agentes.
MEMANTO_MCP_TRANSPORTnãostdiostdio, sse ou streamable-http.
MEMANTO_MCP_HOSTnão127.0.0.1Host de vinculação para transportes sse/http.
MEMANTO_MCP_PORTnão8765Porta de vinculação para transportes sse/http.
MEMANTO_MCP_LOG_LEVELnãoINFONível de log (os logs são sempre enviados para stderr).

Flags de CLI (memanto-mcp --transport sse --port 9000) sobrescrevem variáveis de ambiente.

Execução via HTTP / SSE

Para clientes remotos ou configurações multiprocesso, execute o servidor em um transporte de rede:

# Streamable HTTP (recommended modern transport)
memanto-mcp --transport streamable-http --host 0.0.0.0 --port 8765

# Server-Sent Events (older, still widely supported)
memanto-mcp --transport sse --host 0.0.0.0 --port 8765

Em seguida, aponte seu cliente para http://your-host:8765/mcp (ou o caminho que o transporte escolhido anunciar). Combine com um proxy reverso + autenticação para implantações em produção — o servidor autentica upstream para a Moorcheh usando sua chave de API, mas não autentica clientes MCP de entrada.

Como funciona

┌──────────────┐    MCP/stdio    ┌──────────────────┐    Moorcheh API    ┌─────────────┐
│ Claude / IDE │ ──────────────► │  memanto-mcp     │ ────────────────► │   Moorcheh  │
│   (client)   │ ◄────────────── │  (this package)  │ ◄──────────────── │   Service   │
└──────────────┘    tool calls   └──────────────────┘    HTTPS+API key   └─────────────┘
                                          │
                                          └─ uses memanto.cli.client.SdkClient
                                             (same client the Memanto CLI uses)
  • Na inicialização, as configurações são validadas; a chave de API é verificada de forma preguiçosa na primeira chamada de ferramenta.
  • Na primeira invocação de ferramenta de memória para um determinado agente, o servidor garante que o agente exista (cria automaticamente se necessário) e ativa uma sessão JWT. As sessões se renovam automaticamente antes da expiração, para que conexões MCP de longa duração nunca encontrem um erro de sessão expirada no meio da conversa.
  • O servidor mantém intencionalmente a sessão ativa no encerramento: as sessões JWT são limitadas por TTL e outros clientes Memanto (CLI, REST) podem querer compartilhá-las.

Incorporação programática

Se você está construindo um host MCP personalizado ou conectando este servidor a um processo maior, você pode construir a instância FastMCP diretamente:

from memanto_mcp import MCPServerSettings, build_server

settings = MCPServerSettings()  # reads env / .env
mcp = build_server(settings)

# Add your own tools alongside Memanto's, then run.
mcp.run(transport="stdio")

Solução de problemas

SintomaCorreção
configuration error: MOORCHEH_API_KEY is requiredDefina a variável de ambiente no bloco env da configuração do seu cliente MCP.
Agent '…' does not exist and MEMANTO_AGENT_AUTO_CREATE is disabledReative a criação automática ou chame create_agent (ferramentas de administração) / memanto agent create <id> uma vez.
As ferramentas nunca aparecem no clienteConfirme que o cliente suporta MCP e que o caminho do config corresponde. Veja o log MCP do cliente: as linhas de stderr do servidor (prefixadas com memanto_mcp) aparecerão lá na inicialização.
Saída distorcida no modo stdioAlgo do seu lado está escrevendo em stdout — esse canal é reservado para JSON-RPC. Mova os logs para stderr. O próprio servidor só escreve em stderr.
Primeira chamada lentaCusto de inicialização a frio: importação do SDK + primeira ativação de sessão. Chamadas subsequentes reutilizam a sessão ativa.

Licença

MIT — mesma do projeto Memanto. Veja LICENSE.

Links