scoutbook
This server lets Claude access and explore a team's markdown handbook through MCP tools.
list_handbook — lists all handbook documents with title, summary, and tags.
read_handbook_doc — reads the full content of a document by its relative path id (e.g.,
deploy.md).search_handbook — searches documents by keywords and returns relevant snippets with context.
It can also manage multiple linked handbooks, update git-backed handbooks, and run in stdio or daemon HTTP modes.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@scoutbook search the handbook for deployment steps"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
scoutbook
Servidor MCP que serve o handbook de um time (um repositório de markdown) ao Claude Code. O objetivo é dar ao Claude de cada time acesso ao "como a gente faz X aqui": estruturar CI/CD, fazer deploy, padrão de projeto, troubleshooting antes de abrir um card, etc.
O scoutbook é um motor genérico: ele não sabe nada sobre o seu time. Você aponta ele para um ou mais diretórios de .md (o repo do handbook de cada time) e ele expõe estas ferramentas ao Claude:
list_handbook— lista todos os documentos (título, resumo, tags).read_handbook_doc— lê um documento pelo id (caminho relativo).search_handbook— busca por palavras-chave e devolve trechos relevantes.list_linked_handbooks— lista os handbooks cadastrados (nome, origem, caminho).update_handbook— sincroniza (git pull) um handbook linkado via git.
Existem dois jeitos de rodar: stdio (um processo por client, igual antes) ou daemon HTTP (um processo só, sempre de pé, servindo vários handbooks e vários clients ao mesmo tempo).
Arquitetura
src/
core/
handbook.ts # descoberta, leitura (cache por mtime) e busca por keyword
frontmatter.ts # parser minimalista de frontmatter, sem dependências
registry.ts # CRUD do registry de handbooks linkados (~/.scoutbook/registry.json)
git.ts # clone raso / update (git pull) dos handbooks linkados via git
cli.ts # comandos: link, unlink, list-links, update, start, stop, status, restart
daemon.ts # ciclo de vida do processo HTTP destacado (pid file, log)
index.ts # adapter MCP: modo stdio (default) e modo HTTP (usado por 'start')A busca é por keyword (sem acento, case-insensitive), com ranking simples (título > tags > corpo).
Related MCP server: vault-mcp-server
Setup
npm install
npm run buildPara desenvolver com reload:
npm run dev # modo stdio, usa ./handbook por padrão
npm run dev /caminho/para/outro/handbookModo daemon (recomendado)
Um processo só, sempre disponível, com um ou mais handbooks linkados.
# linkar um handbook local
npx scoutbook link time-x /caminho/para/handbook-do-time-x
# ou linkar direto de um repo git (clona em ~/.scoutbook/repos/<nome>)
npx scoutbook link time-y https://github.com/org/handbook-time-y --git
npx scoutbook list-links # ver o que está linkado
npx scoutbook update time-y # git pull no link (só funciona pra links --git)
npx scoutbook update # atualiza todos os links git de uma vez
npx scoutbook start # sobe destacado em http://127.0.0.1:4390/mcp
npx scoutbook status # rodando (pid ..., porta ...) | parado
npx scoutbook stop
npx scoutbook restartstart aceita --port <n> (ou env SCOUTBOOK_PORT) pra mudar a porta, e bind é sempre em 127.0.0.1 — não expõe o handbook na rede.
Com um único handbook linkado, as tools funcionam sem precisar informar qual é. Com mais de um, cada chamada de list_handbook/read_handbook_doc/search_handbook/update_handbook precisa do parâmetro handbook (o nome usado no link) — use list_linked_handbooks pra descobrir os nomes.
Log fica em ~/.scoutbook/scoutbook.log, registry em ~/.scoutbook/registry.json.
Modo stdio (compatível com configs antigas)
Um processo novo por conexão — é como o scoutbook funcionava antes do modo daemon, e continua funcionando igual, sem precisar de link nenhum.
Resolvido nesta ordem:
primeiro argumento da CLI (
node dist/index.js /caminho/do/handbook)env
SCOUTBOOK_HANDBOOK_DIR--handbook <nome>— usa um link específico do registryúnico link cadastrado no registry, se houver exatamente um
./handbook(relativo ao CWD) — fallback de desenvolvimento
Conectando ao Claude Code
Daemon (recomendado): aponte pro processo já rodando — veja .mcp.json.daemon.example.
{
"mcpServers": {
"scoutbook": {
"type": "http",
"url": "http://127.0.0.1:4390/mcp"
}
}
}stdio: copie .mcp.json.example para .mcp.json no repo do time e ajuste os caminhos absolutos.
{
"mcpServers": {
"scoutbook": {
"command": "node",
"args": ["/caminho/abs/para/scoutbook/dist/index.js"],
"env": {
"SCOUTBOOK_HANDBOOK_DIR": "/caminho/abs/para/o/repo/handbook-do-time"
}
}
}
}Formato dos documentos
Markdown puro funciona. Frontmatter é opcional e deixa o list/search mais ricos:
---
title: Como fazer deploy
tags: [deploy, producao]
summary: Passo a passo do deploy padrão do time.
---
# Como fazer deploy
...Sem frontmatter, o título cai para o primeiro # heading (ou o nome do arquivo)
e o resumo para o primeiro parágrafo.
Roadmap
Busca semântica opcional.
Exposição também como MCP resources para anexo manual.
Process manager opcional (systemd
--user/launchd) pra subir o daemon no login — hoje é sempre manual (scoutbook start).
Available Tools
3 toolslist_handbookListar handbookA
Lista todos os documentos do handbook do time (título, resumo e tags). Use isto primeiro para descobrir o que existe antes de ler ou buscar.
Inputs: no named parameters.
read_handbook_docLer documento do handbookA
Lê o conteúdo completo de um documento do handbook pelo seu id (o caminho relativo mostrado em list_handbook, ex: 'deploy.md').
Inputs: id (required).
search_handbookBuscar no handbookA
Busca por palavras-chave em todos os documentos do handbook e retorna os mais relevantes com trechos de contexto. Use para responder 'como o time faz X' quando não souber em qual documento está.
Inputs: query (required).
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 3 tools
Each tool has a clearly distinct purpose: listing all documents, reading a specific document by ID, and searching across documents. No ambiguity.
All tool names follow the same verb_noun pattern in snake_case (list_handbook, read_handbook_doc, search_handbook), making them predictable and consistent.
Three tools is well-scoped for a handbook server, covering the essential operations without being overly minimal or excessive.
The tool set covers the full lifecycle expected for a read-only handbook: discover (list), retrieve (read), and search. No obvious gaps.
Maintenance
Related MCP Connectors
Path-scoped team memories, rules and skills for Claude Code, Cursor, Codex and other MCP clients.
Find, read, create and edit Plainer files with Claude Code or Codex. Approve access in your browser.
Persistent, governed institutional memory for Claude Code — specs, decisions, learnings.
Shared work memory for Claude Code, Codex, Cursor and chat, scoped to each repository.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables Claude Code to save, list, and read markdown notes directly from conversations, eliminating manual file management for project ideas, debugging notes, and meeting summaries.ISC
- AlicenseNot gradedqualityCmaintenanceTurns any folder of Markdown files into a searchable, structured knowledge base for Claude Code, enabling persistent memory across sessions via tools like list, read, write, edit, search, and summarize.MIT
- AlicenseNot gradedqualityDmaintenanceEnables recall of promoted team and org knowledge from GitHub repositories via Claude.ai, supporting search and status checks.MIT
- AlicenseNot gradedqualityBmaintenanceEnables Claude to access and update a team's design knowledge stored in a local Markdown folder, including searching decisions and recording new conventions.1MIT