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.6.1.tar.gz (21.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.6.1-py3-none-any.whl (25.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: mcp_master_of_puppets-0.6.1.tar.gz
  • Upload date:
  • Size: 21.2 kB
  • Tags: Source
  • Uploaded using 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":"Fedora Linux","version":"44","id":"","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.6.1.tar.gz
Algorithm Hash digest
SHA256 fb8bc0deeefd5f0c76755faa1755f9ee8f21285512da31732dc9b466f91e1ead
MD5 8d0e519818afda9e7a0556956612ea49
BLAKE2b-256 5ee3216f8f4b0b32ee2086e526316256c1373e35266da36dd83e9f9277d9bb84

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mcp_master_of_puppets-0.6.1-py3-none-any.whl
  • Upload date:
  • Size: 25.8 kB
  • Tags: Python 3
  • Uploaded using 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":"Fedora Linux","version":"44","id":"","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.6.1-py3-none-any.whl
Algorithm Hash digest
SHA256 83ff92477cf8499d59b1692b36c036d69d086802a5d2dbca556440f2490c0753
MD5 850c873492e357e642d0d3803476dc28
BLAKE2b-256 f0eb3943c5e95793dbf4176fe493a305e168f096b88ef68bc793e873ecbc45c8

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