Skip to main content

AI Mailbox MCP Server — async communication between AI agents

Project description

mcp-master-of-puppets

Servidor MCP para comunicação assíncrona entre agentes de IA via caixas de entrada baseadas em arquivos.

Cada agente (Claude, GPT, Gemini, Deepseek…) tem seu próprio inbox. As mensagens são arquivos .md com frontmatter YAML. Um inbox-index.yaml por inbox mantém o uso da janela de contexto baixo — os agentes leem o índice primeiro e abrem apenas as mensagens relevantes.

Regra de naming dos subagents: o inbox deve seguir o formato agentname-role, com nomes em minúsculas e separados por hífen. Exemplo: claude-backend-senior.

Como funciona

Quando vários agentes de IA trabalham no mesmo projeto, eles não têm como se comunicar diretamente — cada um opera em sua própria sessão, sem memória compartilhada.

Este MCP resolve isso com um sistema de mailbox baseado em arquivos dentro do próprio repositório. Cada agente tem um inbox em .agents/mail/{agent-id}/. As mensagens são arquivos .md com frontmatter YAML. Um inbox-index.yaml por inbox evita que o agente precise abrir todas as mensagens de uma vez — ele lê o índice primeiro, filtra o que é relevante e só então abre as mensagens selecionadas.

O fluxo básico:

  1. Cada agente sabe seu agent-id (ex: claude, gpt, gemini)
  2. Ao iniciar, lê seu inbox e as tasks atribuídas a ele
  3. Executa a tarefa e envia mensagens para os outros agentes via mailbox
  4. Quando tem dúvida ou precisa de permissão, posta na fila review/ para o tech lead
  5. Ao finalizar sem pendências, gera um resumo do ciclo para o tech lead revisar

O resultado é um time de agentes que colabora de forma assíncrona, preserva histórico de decisões e evita conflitos de trabalho paralelo — tudo em arquivos rastreáveis pelo git.

Instalação e execução

uvx mcp-master-of-puppets

Ou com pip:

pip install mcp-master-of-puppets
mcp-master-of-puppets

Configuração no Claude Code

Adicione ao .claude/settings.json do seu projeto:

{
  "mcpServers": {
    "mail-agents": {
      "command": "uvx",
      "args": ["mcp-master-of-puppets"],
      "env": {
        "AGENTS_ROOT": "."
      }
    }
  }
}

AGENTS_ROOT é a raiz do projeto onde .agents/ será criado (padrão: diretório atual).

Configuração no Codex CLI

Adicione ao ~/.codex/config.toml:

[[mcp_servers]]
name = "mail-agents"
command = "uvx"
args = ["mcp-master-of-puppets"]

[mcp_servers.env]
AGENTS_ROOT = "."

Os subagents iniciados com CLI codex sobem com -a never, para não pedir aprovações interativas durante a execução em background.

Estrutura de pastas criada

.agents/
  mail/
    mailbox-rules.md
    all/                 ← broadcasts
    review/              ← fila do tech lead
    codex/               ← líder, se aplicável
    claude-backend-senior/
    gemini-qa/
  tasks/                 ← arquivos de tasks dos agentes

Regra para IDs de subagents

  • Todo subagent deve usar agentname-role, com pelo menos um hífen.
  • São aceitos apenas a-z, 0-9 e -.
  • Exemplos válidos: claude-backend-senior, gemini-qa, codex-frontend.
  • Exemplos inválidos: claude, Claude-QA, worker_1.

Essa validação é aplicada em mailbox_init_session e mailbox_spawn_agents.

Ferramentas disponíveis (16)

Ferramenta Descrição
mailbox_read_inbox Lê o índice do inbox de um agente
mailbox_read_message Abre uma mensagem específica
mailbox_mark_read Marca mensagem como lida
mailbox_send_message Envia mensagem para outro agente
mailbox_send_broadcast Broadcast para múltiplos agentes
mailbox_read_broadcast_inbox Lê o índice do all/ compartilhado
mailbox_read_broadcast Abre uma mensagem de broadcast
mailbox_create_review Posta na fila de revisão do tech lead
mailbox_read_review_inbox Lê o índice da fila de revisão
mailbox_read_review_message Abre uma mensagem da fila de revisão
mailbox_list_tasks Lista tasks de um agente
mailbox_read_task Lê um arquivo de task
mailbox_update_task_status Atualiza status da task e renomeia o arquivo
mailbox_create_task Cria uma nova task
mailbox_list_agents Lista agentes conhecidos (scan das pastas de inbox)
mailbox_read_rules Lê o mailbox-rules.md

Formato das mensagens

DD-MM-YYYY-HHmm-{from}-{to}-{assunto}.md
---
from: gpt
to: claude
date: 19-05-2026 14:30
subject: auth-refactor
status: unread
---

## Contexto
## Arquivos Alterados
## O Que Foi Feito
## Preciso Que Você Revise
## Problemas Encontrados
## Perguntas
## Próxima Ação Sugerida

Publicando atualizações

1. Edite o pyproject.toml e incremente a versão:

version = "0.1.1"

2. Reconstrua e publique no PyPI:

uv build
uv publish --token pypi-SEU_TOKEN

3. Faça commit e crie a tag da release no GitHub:

git add -A
git commit -m "chore: release v0.1.1"
git tag v0.1.1
git push && git push --tags

Após a publicação, usuários que usam uvx mcp-master-of-puppets receberão a versão mais recente automaticamente na próxima execução.

Licença

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mcp_master_of_puppets-0.7.3.tar.gz (32.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mcp_master_of_puppets-0.7.3-py3-none-any.whl (44.4 kB view details)

Uploaded Python 3

File details

Details for the file mcp_master_of_puppets-0.7.3.tar.gz.

File metadata

  • Download URL: mcp_master_of_puppets-0.7.3.tar.gz
  • Upload date:
  • Size: 32.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"25.04","id":"plucky","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for mcp_master_of_puppets-0.7.3.tar.gz
Algorithm Hash digest
SHA256 edb609cf7ad0b7d12448c4106faa1c906a8ad9a9343531f6016c718aa9484cab
MD5 75257273fd0ed520c95d1495760e265a
BLAKE2b-256 6584b4f8ea893671779bed24e38ec89073b07c7c89e3ca969f1433befd37a9b8

See more details on using hashes here.

File details

Details for the file mcp_master_of_puppets-0.7.3-py3-none-any.whl.

File metadata

  • Download URL: mcp_master_of_puppets-0.7.3-py3-none-any.whl
  • Upload date:
  • Size: 44.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"25.04","id":"plucky","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for mcp_master_of_puppets-0.7.3-py3-none-any.whl
Algorithm Hash digest
SHA256 59d4d4818c449c3c991ef2699a5c2102583766fefa64520e209fe7afd74ee163
MD5 4db3302a5d7a4fd59033ae475eff47bb
BLAKE2b-256 28053e45d3566090aa02fec74f14614bf04d41c5258f083a5e08bc8c02a5f353

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page