Skip to main content
Glama
inematds
by inematds

cerebro-mcp

đŸ‡§đŸ‡· PortuguĂȘs · đŸ‡ș🇾 English · đŸ‡Ș🇾 Español

Servidor MCP (Model Context Protocol) que expĂ”e o seu segundo cĂ©rebro — a pasta de Markdown criada pelo kit astra-2cerebro — como ferramentas para qualquer cliente MCP: Claude Code, Codex, Claude Desktop, n8n, bots e scripts.

Um cérebro. Vårios clientes. Nenhuma cópia.

📖 Guia de uso

Guia completo (landing + passo a passo): https://inematds.github.io/cerebro-mcp/guia/

                     ┌──────────────┐
  Claude Code ──┐    │              │
  Codex ────────┌──â–ș │  cerebro-mcp │ ──â–ș ~/meu-cerebro/  (AGENTS.md, contexto/, wiki/, decisoes/ ...)
  Claude Desktop─    │   (stdio ou  │
  n8n / bot ────┘    │    HTTP)     │
                     └──────────────┘

Related MCP server: ohmyself

Por quĂȘ

O kit astra-2cerebro guarda quem vocĂȘ Ă©, o que faz, suas prioridades, decisĂ”es, projetos e uma wiki interligada — tudo em arquivos Markdown. Isso funciona muito bem para o agente que abre a pasta. Mas o Codex no terminal, o Claude Desktop no notebook, um fluxo no n8n e um bot no celular nĂŁo abrem a pasta.

O cerebro-mcp resolve isso: sobe um servidor MCP apontado para a pasta e cada cliente passa a ter cerebro_contexto, cerebro_buscar, cerebro_ler, cerebro_registrar_decisao e as demais ferramentas. O cĂ©rebro continua sendo sĂł arquivos; quem muda Ă© quem consegue lĂȘ-los.

Instalação em 1 minuto

Precisa de Node.js 20 ou superior.

git clone https://github.com/inematds/cerebro-mcp.git
cd cerebro-mcp
npm install
npm test                      # 42 testes contra a fixture em test/fixture

# aponte para o seu cérebro e teste por stdio
CEREBRO_DIR=~/meu-cerebro node scripts/teste-stdio.mjs ~/meu-cerebro

Registrar no Claude Code (uma linha):

claude mcp add cerebro -e CEREBRO_DIR=/caminho/do/cerebro -- node /caminho/cerebro-mcp/bin/cerebro-mcp.mjs

Codex, Claude Desktop, .mcp.json do projeto e modo HTTP: veja INSTALAR.md.

Como funciona

cerebro-mcp [--dir <pasta>] [--escrita] [--http <porta>] [--host <ip>]

Configuração

Como

PadrĂŁo

Pasta do cérebro

--dir <pasta> ou CEREBRO_DIR

pasta atual, se tiver AGENTS.md ou CLAUDE.md; senĂŁo erro claro

Escrita

--escrita ou CEREBRO_ESCRITA=1

desligada (somente leitura)

Transporte

--http <porta>

stdio

Endereço HTTP

--host <ip>

127.0.0.1

Sem --http o servidor fala MCP por stdio — Ă© o que Claude Code, Codex e Claude Desktop usam. Com --http ele sobe um endpoint Streamable HTTP (POST /mcp, sem sessĂŁo) para n8n, bots e scripts na mesma mĂĄquina.

Ferramentas

Ferramenta

O que faz

Escrita?

cerebro_contexto()

contexto/sobre-mim.md + sobre-o-trabalho.md + prioridades.md, concatenados com os caminhos

nĂŁo

cerebro_prioridades()

SĂł contexto/prioridades.md

nĂŁo

cerebro_rotas()

A seção "Mapa de rotas" do AGENTS.md (ou CLAUDE.md)

nĂŁo

cerebro_buscar(consulta, limite?)

Busca por termos em todos os .md (tĂ­tulo > caminho > wikilinks > frontmatter > corpo), com trecho

nĂŁo

cerebro_ler(caminho)

ConteĂșdo de um arquivo (ou listagem de uma pasta) dentro do cĂ©rebro

nĂŁo

cerebro_wiki_indice()

wiki/index.md

nĂŁo

cerebro_wiki_pagina(slug)

PĂĄgina da wiki pelo slug, em entidades/, conceitos/ ou fontes/

nĂŁo

cerebro_projetos()

Cada projetos/<nome>/README.md com a linha de estado

nĂŁo

cerebro_conexoes()

A tabela de conexoes.md

nĂŁo

cerebro_rotinas(limite?)

Rotinas ativas e Ășltimas execuçÔes de rotinas/registro.md

nĂŁo

cerebro_registrar_decisao(titulo, decisao, porque, alternativas?, responsavel?)

Acrescenta entrada datada em decisoes/registro.md

sim

cerebro_adicionar_fonte(nome, conteudo)

Grava fontes/AAAA-MM-DD-<slug>.md sem sobrescrever

sim

cerebro_registrar_execucao(id, resultado, saida?, observacao?)

Nova linha no topo do "Registro de execuçÔes"

sim

As trĂȘs de escrita sĂł aparecem quando o servidor sobe com --escrita. Detalhes, parĂąmetros e exemplos de retorno: docs/ferramentas.md.

Além das ferramentas, cada .md é exposto como recurso cerebro://<caminho> (por exemplo cerebro://wiki/entidades/empresa-x.md), para clientes que preferem "anexar" uma nota.

Exemplos de conversa

Com o servidor registrado, o agente decide sozinho quando chamar cada ferramenta.

VocĂȘ: Quais sĂŁo as minhas prioridades deste trimestre? Agente: (chama cerebro_prioridades) TrĂȘs, segundo contexto/prioridades.md: entregar a fase 2 do Projeto Alfa atĂ© o fim de outubro, lançar o site novo e reduzir o relatĂłrio semanal de 4 horas para 1.

VocĂȘ: Por que decidimos fazer o site em gerador estĂĄtico? Agente: (chama cerebro_buscar("site estĂĄtico"), depois cerebro_ler("decisoes/registro.md")) Em 2026-08-20 vocĂȘ registrou: custo zero e pouca manutenção; mudaria de ideia se precisasse de ĂĄrea logada.

VocĂȘ: Registra que vamos aceitar a fase 2 com prazo em outubro. Agente: (servidor com --escrita; chama cerebro_registrar_decisao) Registrado em decisoes/registro.md com a data de hoje. Quer que eu anote as alternativas consideradas?

VocĂȘ: O que a Empresa X pediu na Ășltima reuniĂŁo? Agente: (chama cerebro_wiki_pagina("empresa-x"), segue os links para a fonte) Aprovou o escopo da fase 2 e ficou de definir quem valida os relatĂłrios semanais.

Segurança

  • Leitura por padrĂŁo. Sem --escrita, as ferramentas de escrita nem sĂŁo registradas — o cliente nĂŁo as vĂȘ. E mesmo com elas registradas, o nĂșcleo confere a flag de novo antes de gravar.

  • SĂł dentro da pasta. Todo caminho passa por caminhoSeguro: resolve, confere o prefixo, segue symlinks e confere de novo. ../, caminhos absolutos de fora e links apontando para fora sĂŁo recusados.

  • .env, .git e node_modules sĂŁo invisĂ­veis, mesmo para leitura.

  • HTTP sĂł em 127.0.0.1 por padrĂŁo, sem autenticação. Se expor em outra interface, coloque um proxy com autenticação na frente — e lembre que um cĂ©rebro contĂ©m dados pessoais.

  • Nada sai da mĂĄquina. O servidor nĂŁo faz requisiçÔes externas.

Detalhes em docs/seguranca.md.

Testes

npm test            # node --test: nĂșcleo, escrita e servidor (cliente MCP em memĂłria)
npm run teste:stdio # sobe o binĂĄrio de verdade e conversa em JSON-RPC por stdio
npm run teste:http  # sobe --http em porta livre e faz as chamadas que um n8n faria

Resultado real da fumaça por stdio (node scripts/teste-stdio.mjs, contra test/fixture):

[servidor] [cerebro-mcp] pronto por stdio — cĂ©rebro em .../test/fixture (escrita desligada)
OK  initialize → servidor cerebro-mcp 1.0.0 (protocolo 2025-06-18)
OK  tools/list → 10 ferramentas: cerebro_contexto, cerebro_prioridades, cerebro_rotas, cerebro_buscar, cerebro_ler, cerebro_projetos, cerebro_conexoes, cerebro_rotinas, cerebro_wiki_indice, cerebro_wiki_pagina
OK  tools/call cerebro_buscar → 2 resultado(s) para "empresa x":
OK  tools/call cerebro_rotas → seção encontrada
OK  tools/call cerebro_ler ../../etc/passwd → isError (Erro: Acesso negado: "../../etc/passwd" estĂĄ fora do cĂ©rebro.)
OK  resources/list → 27 recursos cerebro://

Com --escrita, o tools/list devolve 13 ferramentas (as 10 acima mais cerebro_registrar_decisao, cerebro_adicionar_fonte e cerebro_registrar_execucao). O npm test cobre: busca (relevùncia, acentos, wikilinks, pastas ignoradas), leitura com bloqueio de traversal/symlink/.env, extração de rotas e prioridades, projetos, conexÔes, rotinas, wiki, recursos, escrita bloqueada sem --escrita e funcionando com ela (em cópia temporåria da fixture).

Documentação

FAQ curta

Preciso do kit astra-2cerebro? O servidor lĂȘ a estrutura que o kit cria. Qualquer pasta com AGENTS.md ou CLAUDE.md sobe, mas as ferramentas de contexto, wiki e rotinas esperam os arquivos do kit.

Posso apontar dois clientes para o mesmo cĂ©rebro? Sim. Cada cliente sobe o prĂłprio processo do servidor; todos leem a mesma pasta. Escrita simultĂąnea Ă© rara e as trĂȘs operaçÔes sĂł acrescentam texto.

O servidor indexa em algum lugar? Não. A busca varre os .md a cada chamada. Para cérebros com centenas de notas é instantùneo; para milhares ainda é aceitåvel.

Funciona no Windows? Sim, com Node 20+. Nos exemplos, troque os caminhos.

Mais em docs/faq.md.

Créditos e licença

ConstruĂ­do para o kit astra-2cerebro — a estrutura de pastas, o formato das decisĂ”es, rotinas, conexĂ”es e wiki vĂȘm de lĂĄ. Usa o SDK oficial @modelcontextprotocol/sdk.

MIT — Copyright (c) 2026 inematds.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables AI agents to list, search, read, and append to Markdown notes through MCP tool calls, making it easy to interact with a second brain folder.
    -
  • A
    license
    Not graded
    quality
    B
    maintenance
    Exposes a personal markdown-based second brain (Obsidian-style) as an MCP server, enabling agents to search, read, and write notes with privacy controls.
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Provides semantic search, note retrieval, source explanation, daily digests, and health checks for a local Obsidian vault, enabling MCP clients like Claude Desktop and Claude Code to query the second brain via natural language.
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    MCP server that turns a Markdown folder (e.g. Obsidian vault) into a second brain, capturing readings and ideas, connecting them as concepts, and resurfacing related notes on demand.
    38 npm
    MIT