yabadoo-mcp
MCP Server oficial do Yabadoo — conecta qualquer Claude (claude.ai, celular, Desktop, Claude Code) ao seu segundo cérebro.
Como conectar (recomendado: servidor remoto, sem instalar nada)
O Yabadoo expõe um servidor MCP remoto (Streamable HTTP) em https://api.yabadoo.io/api/v1/mcp.
Gere uma API Key em app.yabadoo.io → Configurações → API Keys e escolha o cliente:
| Cliente | Como |
|---|---|
| Claude.ai / celular / Claude Desktop | Configurações → Conectores → Adicionar conector personalizado → URL https://api.yabadoo.io/api/v1/mcp?token=sk-yaba-sua-chave (a key vai na URL: trate o link como senha) |
| Claude Code | claude mcp add --transport http yabadoo https://api.yabadoo.io/api/v1/mcp --header "Authorization: Bearer sk-yaba-sua-chave" |
| Cursor / outros clientes MCP | URL acima com o header Authorization: Bearer sk-yaba-... |
Este pacote (yabadoo-mcp) é a alternativa local/STDIO: conecta por REST à API; também exige rede e backend. As tools são as mesmas (paridade travada por teste).
Paginação (0.10.0)
consultar_eventos, buscar_por_relacao e consultar_decisoes aceitam limite e offset
(defaults 15/30/20, máximo 100). A resposta informa faixa/total e a chamada para a próxima página.
Decisões vêm em ordem de criação, com estado vigente/histórico por item. consultar_entidade
continua um resumo com orientação para aprofundar cada seção. Requer o backend da Task 559;
esta versão também inclui o undo por procedência da 557 (0.9.1 não publicada).
Encadeamento de entidades (Task 561)
listar_entidades(busca='nome ou alias') aceita termos literais, sem diferença de caixa ou
acentos, combinados com tipo/limite/offset. O total é do filtro, não da página.
consultar_entidade fornece entity_id; resultados graph-only fornecem node_key.
Use o ID exato em obter_entidade(slug=...) e o graph_node.node_key retornado em vizinhanca.
graph_link.status explicita vínculo ausente, ambiguidade ou conflito; não invente uma chave
nem confunda nó sem vínculo com entidade inexistente. Requer o backend da 561.
Correções de contrato (0.11.1 — requer backend 562/563/565/566/567)
Use 0.11.1 ou superior: 0.11.0 aceitava SDK MCP 2.x incompatível em instalação limpa.
O pacote usa o SDK 1.x (mcp<2); discovery STDIO do wheel é testado antes de publicar.
Tarefas rejeitam título vazio, prioridade desconhecida, ID inválido e datas fora de YYYY-MM-DD.
obter_entidade aceita limite/offset/secao; siga proximas_chamadas por seção.
compacto=True omite metadados nulos/confidence high, preservando conteúdo e handles; default mantém campos.
500 é teto de itens, não quantidade garantida: existe budget de ~64KB (um item indivisível pode exceder).
Busca semântica tem piso de relevância; vazio não prova ausência. Confira o documento antes de afirmar.
Continuam 46 tools e 4 prompts: cancelar lembrete, desfazer decisão e editar/remover inbox ainda não são cobertos.
Alternativa local (STDIO)
pip install yabadoo-mcp
# ou, sem instalar:
uvx yabadoo-mcp
Claude Desktop
Edite ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"yabadoo": {
"command": "uvx",
"args": ["yabadoo-mcp"],
"env": {
"YABADOO_API_URL": "https://api.yabadoo.io",
"YABADOO_API_KEY": "sk-yaba-sua-chave-aqui"
}
}
}
}
Claude Code (CLI)
claude mcp add yabadoo \
--env YABADOO_API_URL=https://api.yabadoo.io \
--env YABADOO_API_KEY=sk-yaba-sua-chave-aqui \
-- uvx yabadoo-mcp
Ou no .mcp.json do projeto (compartilhável via git — sem a key, use variável de ambiente).
O método: prompts do servidor
O servidor expõe 4 prompts que aparecem como slash commands no cliente (no Claude Code: /mcp__yabadoo__bom-dia):
| Prompt | O que faz |
|---|---|
bom-dia |
Briefing do dia: estado do cérebro, pendências (atrasadas primeiro), ontem, o que entrou |
encerrar-sessao |
Extrai desta conversa fatos/relações/eventos/decisões/tarefas/memórias e grava com dedup |
registrar-reuniao |
Transforma transcrição/notas em fatos, relações, eventos, decisões, tarefas e ata |
faxina |
Acha duplicatas, fatos errados e memórias repetidas e propõe correções |
Tools (46)
Busca e leitura
| Tool | O que faz |
|---|---|
buscar_memorias |
Busca global: docs, tarefas, memórias, nós do grafo e entidades (com handles pra encadear) |
buscar_conhecimento |
Busca semântica (vetorial) no conteúdo dos documentos |
buscar_grafo |
Conexões Zettelkasten a partir de termo, título, tag ou node_key |
consultar_entidade |
Dossiê de pessoa/empresa/projeto por nome (homônimos viram lista pra escolher) |
consultar_eventos |
Reuniões/eventos do grafo por período ISO e/ou tema |
buscar_por_relacao |
Pares de entidades por verbo de relação |
estado_do_cerebro |
Retrato numérico do cérebro: contagens, temas, último diário, lixeira, dia local |
Documentos
| Tool | O que faz |
|---|---|
listar_documentos |
Lista paginada (JSON) por categoria/status/busca, com preview |
ler_documento |
Conteúdo por id retornado na busca/lista ou título; caminho só em legado indexado; confira truncamento |
criar_documento |
Cria doc pela pipeline completa (embedding + nó no grafo) |
atualizar_documento / arquivar_documento |
Editar exige toggle; arquivar doc criado via MCP é livre (referência no grafo permanece) |
Read-layer cru (JSON exaustivo)
| Tool | O que faz |
|---|---|
dump_grafo |
Nós + arestas do grafo, paginado |
listar_entidades / obter_entidade |
Entidades do store; detalhe por slug (fatos, eventos, relações, histórico) |
vizinhanca |
Adjacência crua de um nó, até N hops |
listar_fatos / listar_eventos / listar_memorias |
Fatos, eventos de entidade e memórias, paginados |
Escrita aditiva (sem confirmação)
adicionar_evento.data aceita dia válido YYYY-MM-DD ou ausência. Resolva datas relativas
no contexto antes de chamar; não invente dia para mês/ano. data_invalida não cria ficha nem
grava aquele item; em lote os válidos continuam. Leia erros mesmo quando ok=true.
Datas antigas continuam intactas; o dossiê ordena as interpretáveis e sinaliza as desconhecidas.
| Tool | O que faz |
|---|---|
adicionar_fato / adicionar_relacao / adicionar_evento / adicionar_memoria |
Escrita estruturada; lote via itens; ancore por entity_id |
capturar_inbox |
Pensamento cru no inbox (o dono tria depois) |
anotar_diario |
Notas manuais e/ou humor no dia |
registrar_decisao / consultar_decisoes |
Decisão como nó com histórico (supersede) |
criar_action_item / concluir_action_item / atualizar_action_item / deletar_action_item / listar_action_items |
CRUD de tarefas (com notas e subitens) |
criar_lembrete / listar_lembretes |
Lembretes no WhatsApp (planos pagos) |
buscar_diario / buscar_inbox |
Diário (por período) e inbox |
Corretivas (procedência e toggles do dono)
Undo de conteúdo criado via MCP é livre no tenant. Edição/merge/lixeira e undo de outras origens exigem Configurações → API Keys (2 toggles, desligados por padrão). Ler a lixeira é livre.
| Tool | O que faz |
|---|---|
mesclar_entidade |
Funde duplicatas (store + grafo, histórico preservado) |
invalidar_fato / invalidar_evento / remover_relacao |
Retração: sai do vivo, vai pro histórico, nunca volta |
editar_entidade |
Descrição, aliases e tipo |
deletar_entidade / restaurar_entidade / listar_lixeira |
Lixeira de 30 dias; purga permanente em 2 passos (toggle 2) |
editar_memoria / apagar_memoria |
Memórias do user_memory |
Variáveis de ambiente (modo local)
| Variável | Descrição | Padrão |
|---|---|---|
YABADOO_API_KEY |
Sua API key (obrigatório) | — |
YABADOO_API_URL |
URL da API | http://localhost:8000 |
YABADOO_API_TIMEOUT |
Override global do timeout HTTP, em segundos | 30 (escritas 120) |
Desenvolvimento local
cd apps/mcp
uv sync --extra test
uv run pytest tests/ -v
# rodar contra a API local
YABADOO_API_KEY=sk-yaba-... YABADOO_API_URL=http://localhost:8000 uv run yabadoo-mcp
Instalação direto do repositório (sem PyPI):
uvx --from "git+https://github.com/HENRIQUE4345/yabadoo-brain#subdirectory=apps/mcp" yabadoo-mcp
Metadata
Release files for yabadoo-mcp 0.11.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| yabadoo_mcp-0.11.1.tar.gz | 77.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| yabadoo_mcp-0.11.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 111.1 kB
Release files / yabadoo_mcp-0.11.1.tar.gz
| Download URL | yabadoo_mcp-0.11.1.tar.gz |
|---|---|
| Size | 77.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f48a902facd1615d456c12fddd19983603a0c3b0d1339852a4d2ffb25e6f947b
|
|
BLAKE2b-256 checksum How to use checksums |
958899ddba97c0eb1e8ca3e2ee00e5083547c2988d824c865dbd4d2b0e25e702
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.11 {"installer":{"name":"uv","version":"0.11.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / yabadoo_mcp-0.11.1-py3-none-any.whl
| Download URL | yabadoo_mcp-0.11.1-py3-none-any.whl |
|---|---|
| Size | 33.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d1d23779b810d8683b77393a57ad50c9fb6e3165506caf6437a9e0e2c693a57f
|
|
BLAKE2b-256 checksum How to use checksums |
321d5cd88b3936dea14abc4f83753068a7dc19c25014ebc5794dc9280d1f1d0b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.11 {"installer":{"name":"uv","version":"0.11.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|