Il vuoto di coordinamento
Gli agenti AI accelerano i singoli sviluppatori. Ma i team non sono solo N individui. Hanno un overhead di coordinamento che l'AI non affronta:
- Due sviluppatori sullo stesso codebase; le loro sessioni AI non si scambiano scoperte.
- Una decisione in una sessione Claude Code ("abbiamo scelto Postgres") è invisibile agli agenti degli altri.
- Un handoff perde il contesto accumulato.
- Standup, Slack, PR comment, ticket Linear—fuori dalla vista dell'AI.
Gli approcci esistenti hanno vuoti:
- Notion / Confluence / Linear: gli umani scrivono e leggono. AI aggiunge riassunti, non stato strutturato condiviso.
- Slack / Discord MCP: Claude legge i canali, ma chat non è la forma giusta per "cosa abbiamo deciso sull'auth?"
- Cursor Teams: regole condivise, memorie per repo. IDE-locked.
- Sourcegraph Cody Enterprise (59$/u/mese): contesto codebase e prompt. Ricerca di codice, non tracking di decisioni.
- GitHub Copilot Enterprise: contesto organizzativo. Nessuno store di decisioni interrogabile.
MCP custom come stato di team
Il pattern emergente è MCP server custom come stato di team: un backend che ogni agente può leggere e scrivere, via il protocollo che già usano. DebugBase ha fatto questo per coppie errore/fix—il fix di un agente diventa il fix di tutti. Abbiamo costruito lo stesso per Claude Code.
La nostra Coordination MCP
La Coordination MCP è un prodotto VibeCoded separato (repo: hotak92/vct-coordination). È un MCP server per Claude Code appoggiato a un progetto Supabase condiviso. Ogni membro del team esegue l'MCP in locale; tutti puntano allo stesso Postgres. Le decisioni vivono in human_decisions, i messaggi in vct_channel_messages (schema V2), la conoscenza in shared_knowledge. Lo schema V2 con channel-push rende l'MCP fakechat-compatible: i nuovi messaggi arrivano come eventi <channel source="vct-coordination"> dentro il turno di Claude, senza polling.
La superficie di tool, in sintesi:
send_message/reply_channel— messaggistica diretta o broadcast.ask_human— blocca un agente in attesa di una decisione umana;answer_decisionla risolve;check_decisionla rilegge in seguito.get_team_status— chi è online; gli agenti possono delegare le decisioni pesanti agli umani.sync_work_items— condivide il progresso dei task tra colleghi.sync_knowledge/get_knowledge— push e pull di nodi KG cross-macchina. Un agente sulla macchina di Martino crea un nodo, l'MCP di Fabio lo recupera.post_idea/report_bug— ideazione e bug capture senza uscire dalla sessione.
Decision tracking: ask_human blocca l'agente. Un collega risponde con answer_decision. Mesi dopo, check_decision recupera la motivazione. Questo è lo store di decisioni strutturato che manca a tutti gli altri.
Knowledge sync: sync_knowledge scrive un nodo KG con embedding; get_knowledge recupera via ricerca semantica. Combinato con il weaviate-kg MCP locale, gli agenti ottengono conoscenza personale e di team in una sola chiamata.
VCT Launcher: la superficie visuale
Tutto quanto sopra è esposto in un tab dedicato alla coordinazione nel VCT Launcher — l'app desktop che viene fornita insieme alla Coordination MCP:
- Lista delle decisioni condivise — ogni
ask_humanche gli agenti del team hanno aperto, con lo stato corrente e la motivazione risolta. - Stato online dei membri del team — aggiornato in tempo reale da
get_team_status; vedi chi è in sessione prima di assegnare lavoro. - Item pendenti che richiedono il tuo input — i blocchi
ask_humanin attesa della tua risposta arrivano come notifiche desktop e appaiono in una coda dedicata nel launcher. - Log del knowledge sync — un feed degli eventi
sync_knowledgeper vedere quali nuovi nodi condivisi gli agenti hanno pubblicato dall'ultima sessione.
Skill pack distribuiti dal team. Un admin può distribuire una raccolta curata di .claude/skills/ direttamente dal launcher. Tutte le installazioni Claude Code del team sincronizzano il pack via il canale sync_knowledge della Coordination MCP — nessuna distribuzione manuale di file. Funziona indipendentemente dal fatto che i membri del team usino l'Orchestrator gratuito, Pro o MAO.
Memorie per repo. Ogni progetto è associato al proprio KG_COLLECTION (nome della collezione Weaviate) nell'interfaccia del launcher. Cambiare progetto in Claude Code instrada automaticamente tutte le query KG alla collezione giusta. Nessuna contaminazione incrociata, nessuna configurazione manuale a ogni sessione.
Pricing, onestamente
- Self-host, gratis. Esegui il tuo Supabase, punta l'MCP lì. AGPL-3.0. Repo
hotak92/vct-coordination. - Managed, prezzo da definire. Supabase ospitato da VibeCoded, multi-tenant con row-level security. Non è ancora live — preferiamo dirlo piuttosto che pubblicare una landing finta.
Come si confronta
| Tool | Interrogabile da AI? | Decision tracking | Self-host | MCP-native | Prezzo |
|---|---|---|---|---|---|
| VibeCoded Coordination MCP | Sì | Sì (ask_human + knowledge sync) | Sì | Sì | Self-host gratis / managed TBD |
| Cursor Teams | Sì (dentro Cursor) | Regole + Memories | No | Parziale | A seat |
| Sourcegraph Cody Enterprise | Sì (codice) | No | Sì | No (proprietario) | 59$/u/mese |
| GitHub Copilot Enterprise | Contesto code-search | No | No | No | 39$/u/mese |
| Slack-MCP (community) | Solo chat | No | Sì | Sì | Gratis |
| Notion / Linear AI | Debole | Manuale / solo issue | No | No | A seat |
Cursor Teams funziona bene per chi vive interamente in Cursor. Noi consegniamo le stesse primitive via MCP, così workspace di team, regole condivise, memorie per repo e tracking di decisioni funzionano con qualunque workflow Claude Code—Orchestrator gratuito, Pro, MAO o setup custom. La Coordination MCP è il backend; il VCT Launcher è l'UI. Entrambi inclusi di default.
Dove andare
La Coordination MCP funziona sopra l'Orchestrator gratuito, VibeCoded Pro, o MAO — stesso protocollo. Setup, lista tool live e istruzioni self-host su /products/coordination-mcp. Per il protocollo sottostante, vedi il post companion su MCP.
Sources: