# Strumenti · Aziende

> Strumenti MCP delle aziende (con il blocco facoltativo di coworking, le offerte e i dati di fatturazione): elencare, registrare, modificare e chiudere aziende, la tua azienda con gli abbonamenti e i crediti, il team, invitare via e-mail, segnare l'admin dell'azienda e rimuovere.

Le [Aziende](/membros/empresas) con l'assistente: registrare l'azienda (e, in un coworking, tipo, i piani e i prodotti che può acquistare, i dati di fatturazione e le date), modificare, chiudere, vedere la tua azienda, il team, invitare via e-mail, seguire, accettare e rifiutare inviti, segnare l'admin dell'azienda e rimuovere. Sono **14 strumenti**.

> [!NOTE]
> Fino al 2026-10-18 questi strumenti si chiamavano `*_resident_company*` (per esempio `get_my_resident_company`). I nomi vecchi non esistono più: l'assistente che li chiama ancora riceve "strumento sconosciuto" e deve usare i nomi di questa pagina.

Ogni strumento ha un'etichetta: <span class="tool-kind tool-kind-read">Solo lettura</span> non cambia nulla, <span class="tool-kind tool-kind-write">Modifica</span> crea o cambia qualcosa subito, e <span class="tool-kind tool-kind-confirm">Chiede conferma</span> agisce solo dopo il tuo sì a un riepilogo. Vedi [Denaro e conferma](/mcp/dinheiro-e-confirmacao).

## In sintesi

| Strumento | Cosa fa | Ruolo minimo | Tipo |
|---|---|---|---|
| [`list_companies`](#list-companies) | Le aziende, con tipo, stato e dimensione del team | Moderatore o finanza | <span class="tool-kind tool-kind-read">Solo lettura</span> |
| [`get_company`](#get-company) | Un'azienda | Moderatore o finanza | <span class="tool-kind tool-kind-read">Solo lettura</span> |
| [`get_my_company`](#get-my-company) | L'azienda in cui sei, con il team e cosa hai tramite lei | Qualsiasi | <span class="tool-kind tool-kind-read">Solo lettura</span> |
| [`create_company`](#create-company) | Registra un'azienda, con il blocco di coworking facoltativo | Admin | <span class="tool-kind tool-kind-write">Modifica</span> |
| [`update_company`](#update-company) | Modifica il nome e il blocco di coworking | Admin | <span class="tool-kind tool-kind-write">Modifica</span> |
| [`close_company`](#close-company) | Chiude l'azienda, con o senza il team | Admin | <span class="tool-kind tool-kind-confirm">Chiede conferma</span> |
| [`list_company_members`](#list-company-members) | Il team di un'azienda | Qualsiasi (l'API verifica il legame) | <span class="tool-kind tool-kind-read">Solo lettura</span> |
| [`invite_company_member`](#invite-company-member) | Aggiunge qualcuno al team via e-mail | Qualsiasi (l'API verifica il legame) | <span class="tool-kind tool-kind-write">Modifica</span> |
| [`update_company_member`](#update-company-member) | Segna o toglie l'admin dell'azienda | Admin | <span class="tool-kind tool-kind-write">Modifica</span> |
| [`remove_company_member`](#remove-company-member) | Toglie qualcuno dal team | Qualsiasi (l'API verifica il legame) | <span class="tool-kind tool-kind-confirm">Chiede conferma</span> |
| [`list_company_invitations`](#list-company-invitations) | Gli inviti in sospeso inviati dall'admin dell'azienda | Qualsiasi (l'API verifica il legame) | <span class="tool-kind tool-kind-read">Solo lettura</span> |
| [`list_my_company_invitations`](#list-my-company-invitations) | I tuoi inviti aziendali | Qualsiasi | <span class="tool-kind tool-kind-read">Solo lettura</span> |
| [`accept_company_invitation`](#accept-company-invitation) | Accetta il tuo invito ed entra nel team | Qualsiasi (il proprio invito) | <span class="tool-kind tool-kind-write">Modifica</span> |
| [`decline_company_invitation`](#decline-company-invitation) | Rifiuta il tuo invito, definitivamente | Qualsiasi (il proprio invito) | <span class="tool-kind tool-kind-confirm">Chiede conferma</span> |

I ruoli sono quelli delle rotte: l'assistente non fa mai più di quanto la persona collegata farebbe sullo schermo. Il proprietario e l'admin vedono tutti e 14; il moderatore e la finanza, 10 (i due di lettura del team della community e gli otto aperti a qualsiasi ruolo); il membro, 8 (`get_my_company`, `list_company_members`, `invite_company_member`, `remove_company_member`, `list_company_invitations`, `list_my_company_invitations`, `accept_company_invitation` e `decline_company_invitation`).

**Otto strumenti compaiono per qualsiasi ruolo** perché l'admin di un'azienda di solito è un membro comune, e chiunque può ricevere un invito. L'API decide in base al legame: il team lo legge solo il team della community o le persone dell'azienda stessa, e invitano e rimuovono solo il proprietario, l'admin o l'admin di quell'azienda (finché è attiva). Gli altri ricevono "nessun permesso".

**L'invito dell'admin dell'azienda dipende dall'accettazione.** Non collega mai subito, nemmeno chi è già nella community: la persona riceve l'invito via e-mail ed entra nel team solo quando accetta (`accept_company_invitation`). Il proprietario e l'admin della community continuano a collegare direttamente.

**Il blocco di coworking resta alla gestione.** Il tipo di residenza, le date, le offerte (`offers`), i dati di fatturazione (`billing`) e il link di acquisto (`purchaseLink`) arrivano al proprietario, all'admin e alla finanza; il moderatore sa solo se l'azienda ha il coworking (`coworking`). `get_my_company` porta le offerte e il link a tutto il team, e la fatturazione solo all'admin dell'azienda.

**L'azienda si abbona e paga, ma non tramite l'assistente.** Registrare le offerte e i dati di fatturazione non addebita nulla. L'acquisto spetta all'admin dell'azienda, nell'app, tramite il `purchaseLink` (l'assistente non riceve mai la carta): l'assistente consegna il link. Poi l'admin dell'azienda si occupa della fatturazione con gli strumenti di [Abbonamenti](/mcp/ferramentas-assinaturas) (`list_my_subscriptions` e `list_my_purchases` con `company_id`, `pay_my_subscription_now`, `quote_my_add_on` e `add_my_add_on`, `quote_plan_change` e `change_my_plan`, `manage_my_subscription`), con PIX o boleto, e legge il portafoglio dei crediti in [Crediti](/mcp/ferramentas-creditos) (`get_company_credit_balance`, `list_company_credit_entries`).

**Uscire dal team sospende l'addebito.** Quando rimuovi qualcuno o chiudi l'azienda con il team, il riepilogo avvisa che l'addebito alla persona rimossa viene sospeso; l'abbonamento resta registrato finché non viene annullato, cosa che si fa in [Abbonamenti](/mcp/ferramentas-assinaturas).

## `list_companies`

<span class="tool-kind tool-kind-read">Solo lettura</span>

**Le aziende**, per nome, con `coworking` (se il blocco di coworking è acceso), lo stato (`active`, o `ended` quando chiusa o con l'uscita prevista nel passato) e quante persone ci sono nel team. Le aziende non sono membri e non compaiono mai negli elenchi dei membri. Il proprietario, l'admin e la finanza ricevono anche il blocco (tipo di residenza, inizio e uscita), la data di chiusura, le offerte, i dati di fatturazione e il `purchaseLink`, tutto vuoto con il coworking spento; il moderatore riceve solo `coworking`. *Ruolo minimo: moderatore (o finanza).*

| Parametro | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
| `status` | `active` o `ended` | No | Filtra per stato |
| `search` | testo | No | Parte del nome |

**Chiedi così:** *"Quali aziende sono attive oggi?"*

## `get_company`

<span class="tool-kind tool-kind-read">Solo lettura</span>

**Un'azienda.** Con il blocco di coworking, le offerte, i dati di fatturazione e il `purchaseLink` per il proprietario, l'admin e la finanza, che ricevono anche gli abbonamenti dell'azienda (`subscriptions`) e il saldo del portafoglio dei crediti (`credit_balance`); gli acquisti dell'azienda sono in `list_purchases` (`buyer.companyId`). Il moderatore riceve solo `coworking`. Azienda di un'altra community: "non trovata". L'admin di un'azienda usa `get_my_company`. *Ruolo minimo: moderatore (o finanza).*

| Parametro | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
| `company_id` | id | Sì | L'azienda (da `list_companies`) |

**Chiedi così:** *"Acme è in regola con il piano? Quanti crediti ha?"*

## `get_my_company`

<span class="tool-kind tool-kind-read">Solo lettura</span>

**La tua azienda.** L'azienda in cui è la persona collegata se è admin dell'azienda, il team e `canManageTeam`, vero per l'admin di un'azienda attiva (falso dopo la chiusura), più le offerte, `canPurchase` e `purchaseLink`. Per **chiunque faccia parte del team** di un'azienda attiva porta `benefits`: cosa ha tramite l'azienda, senza prezzi. In `items`, i piani e i prodotti attivi dell'azienda (abbonamento o acquisto attivo: `title`, `isPlan`, `kind`, `source`, `plan`) con gli `spaces` e i `contents` che ognuno sblocca; in `credits`, il saldo del portafoglio (`balance`) e la prossima scadenza (`expiringSoon`). Con l'azienda chiusa, `benefits` è `null`. Per l'admin dell'azienda porta anche i dati di fatturazione (`billing`), gli abbonamenti (`subscriptions`, con il rinnovo in sospeso), gli acquisti (`purchases`) e il saldo dei crediti (`credit_balance`); con un abbonamento in ritardo, il passo successivo suggerito è `pay_my_subscription_now`. Senza azienda, restituisce `company: null`; gli inviti in sospeso sono in `list_my_company_invitations`. *Ruolo minimo: qualsiasi.*

Nessun parametro.

**Chiedi così:** *"Cosa ho tramite la mia azienda?"* · *"Chi c'è nella mia azienda?"* · *"L'abbonamento della mia azienda è in regola?"*

## `create_company`

<span class="tool-kind tool-kind-write">Modifica</span>

**Registrare un'azienda.** Solo il nome è obbligatorio: senza i campi di coworking, l'azienda è solo nome e team. Nel blocco di coworking, `offer_product_ids` elenca i piani e i prodotti che l'azienda può acquistare (solo prodotti digitali) e `billing` i dati di fatturazione. Qui non si addebita nulla e non chiede conferma: la risposta porta il `purchaseLink`, la pagina in cui l'admin dell'azienda acquista, e l'assistente consegna il link. Prodotto di un'altra community: "non trovato"; prodotto non digitale: rifiutato. L'azienda non ha un accesso proprio; le persone entrano con `invite_company_member`. `parcel_notice_admins_only` fa ricevere l'avviso di [pacco](/espacos/encomendas#pacchi-per-un-azienda) solo agli admin dell'azienda (predefinito: tutti i dipendenti con accesso allo spazio). *Ruolo minimo: admin (proprietario o admin).*

| Parametro | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
| `name` | testo | Sì | Il nome, fino a 120 caratteri |
| `coworking` | vero/falso | No | Accende o spegne il blocco di coworking. Omesso, si accende quando un campo del blocco è compilato |
| `residence_type` | `PRIVATE_OFFICE`, `FIXED_DESK` o `VIRTUAL_OFFICE` | No | Ufficio privato, postazione fissa o ufficio virtuale |
| `offer_product_ids` | elenco di id, fino a 20 | No | I piani e i prodotti digitali che l'azienda può acquistare (da `list_plans` o `list_products`) |
| `billing` | `legal_name`, `tax_id` (CNPJ), `email` | No | I dati di fatturazione; ogni campo è facoltativo e `null` lo cancella |
| `starts_at` | AAAA-MM-GG | No | L'inizio nel coworking |
| `ends_at` | AAAA-MM-GG | No | L'uscita prevista, non prima dell'inizio |
| `parcel_notice_admins_only` | vero/falso | No | Solo gli admin dell'azienda ricevono l'avviso di pacco (predefinito: falso) |

**Chiedi così:** *"Registra Acme Tecnologia nel coworking, ufficio privato, dal 1/11, con la possibilità di acquistare il piano Ufficio privato mensile. Ragione sociale Acme Tecnologia Ltda, e-mail di fatturazione financeiro@memberfy.net."* · *"Registra l'azienda Studio Silva."*

## `update_company`

<span class="tool-kind tool-kind-write">Modifica</span>

**Modificare.** Solo ciò che invii: nome, `coworking`, tipo, offerte, dati di fatturazione, inizio o uscita. L'elenco `offer_product_ids` inviato sostituisce il precedente (`[]` o `null` lo svuota). `null` cancella un campo del blocco; compilarne uno accende il coworking; `coworking: false` lo spegne e cancella tutto il blocco. Per chiudere adesso, usa `close_company`. *Ruolo minimo: admin (proprietario o admin).*

| Parametro | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
| `company_id` | id | Sì | L'azienda |
| `name`, `coworking`, `residence_type`, `offer_product_ids`, `billing`, `starts_at`, `ends_at`, `parcel_notice_admins_only` | vari | No | Solo ciò che cambia |

**Chiedi così:** *"Acme esce il 31/12. Aggiorna l'uscita prevista."* · *"In Acme, avvisa solo gli admin quando arriva un pacco."*

## `close_company`

<span class="tool-kind tool-kind-confirm">Chiede conferma</span>

**Chiudere l'azienda adesso.** L'azienda smette di accettare inviti, di dare accesso al team e di essere addebitata; l'anagrafica e il blocco di coworking restano registrati. Non c'è riapertura. Con `remove_members` (predefinito: vero), tutti escono dal team, e chi è entrato nella community tramite l'azienda ed è ancora membro esce anche dalla community. Il riepilogo elenca chi esce e avvisa che il loro addebito viene sospeso e l'abbonamento resta registrato finché non viene annullato. Azienda già chiusa: rifiutato. La prima chiamata restituisce il riepilogo e il codice di conferma. *Ruolo minimo: admin (proprietario o admin).*

| Parametro | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
| `company_id` | id | Sì | L'azienda |
| `remove_members` | vero/falso | No | Predefinito: vero. Falso mantiene il team legato all'azienda chiusa |

**Chiedi così:** *"Chiudi Acme e togli il suo team."*

## `list_company_members`

<span class="tool-kind tool-kind-read">Solo lettura</span>

**Il team di un'azienda**, con gli admin per primi: nome, ruolo lavorativo, se è admin dell'azienda, se è entrato tramite l'azienda e, per il team della community e l'admin dell'azienda, l'e-mail. Lo leggono il team della community o le persone dell'azienda stessa. *Ruolo minimo: qualsiasi (l'API verifica il legame).*

| Parametro | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
| `company_id` | id | Sì | L'azienda (da `list_companies` o `get_my_company`) |

**Chiedi così:** *"Mostrami il team di Acme."*

## `invite_company_member`

<span class="tool-kind tool-kind-write">Modifica</span>

**Aggiungere al team via e-mail.** Dal **proprietario o admin**, collega subito: chi è già nella community riceve solo il legame, senza e-mail (`linked`); chi non c'è entra nella community come membro e **riceve l'invito via e-mail** (`invited`): l'assistente lo dice prima. Dall'**admin dell'azienda**, non collega mai: la risposta è sempre `invited` con `pending: true` e l'`invitation_id`, chiunque sia la persona, e l'assistente dice *"Invito inviato. La persona entra nel team quando accetta."*, senza affermare se era già nella community. Rifiutato se la community non accetta nuovi membri, se la persona ha chiesto di non partecipare, se è già in questo team o se l'azienda è chiusa; per il proprietario e l'admin, anche se è già in un'altra azienda. Invitano il proprietario, l'admin e l'admin di quell'azienda (finché è attiva); `is_admin` solo il proprietario e l'admin. L'admin dell'azienda invia fino a 30 inviti all'ora (oltre, 429 con `Retry-After`); il proprietario e l'admin non hanno questo limite. *Ruolo minimo: qualsiasi (l'API verifica il legame).*

| Parametro | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
| `company_id` | id | Sì | L'azienda |
| `email` | testo | Sì | L'e-mail della persona |
| `name` | testo | No | Il nome, se l'account viene creato ora |
| `is_admin` | vero/falso | No | Entra già come admin dell'azienda (proprietario o admin) |

**Chiedi così:** *"Invita joao@memberfy.net nel team della mia azienda."*

## `update_company_member`

<span class="tool-kind tool-kind-write">Modifica</span>

**Segnare o togliere l'admin dell'azienda.** L'admin dell'azienda invita e rimuove il proprio team. *Ruolo minimo: admin (proprietario o admin).*

| Parametro | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
| `company_id` | id | Sì | L'azienda |
| `member_id` | id | Sì | La persona (da `list_company_members`) |
| `is_admin` | vero/falso | Sì | Vero segna; falso toglie |

**Chiedi così:** *"Rendi Maria admin di Acme."*

## `remove_company_member`

<span class="tool-kind tool-kind-confirm">Chiede conferma</span>

**Togliere qualcuno dal team.** Se la persona è entrata nella community tramite l'azienda ed è ancora membro, esce anche dalla community e perde l'accesso; se era già nella community, perde solo il legame. Il riepilogo dice quale dei due e avvisa che l'addebito alla persona rimossa viene sospeso e l'abbonamento resta registrato finché non viene annullato. Rimuovono il proprietario, l'admin e l'admin di quell'azienda (finché è attiva). La prima chiamata restituisce il riepilogo e il codice di conferma. *Ruolo minimo: qualsiasi (l'API verifica il legame).*

| Parametro | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
| `company_id` | id | Sì | L'azienda |
| `member_id` | id | Sì | La persona (da `list_company_members`) |

**Chiedi così:** *"Togli João dal team di Acme; ha lasciato l'azienda."*

## `list_company_invitations`

<span class="tool-kind tool-kind-read">Solo lettura</span>

**Gli inviti in sospeso dell'azienda**: quelli che l'admin dell'azienda ha inviato e a cui nessuno ha risposto, dal più recente, con l'e-mail digitata e la data. Non dice mai chi è la persona né se era già nella community. Gli inviti del proprietario e dell'admin collegano subito e non compaiono qui. Lo leggono il team della community e l'admin di quell'azienda finché è attiva. *Ruolo minimo: qualsiasi (l'API verifica il legame).*

| Parametro | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
| `company_id` | id | Sì | L'azienda |

**Chiedi così:** *"Chi ho invitato nella mia azienda e non ha ancora accettato?"*

## `list_my_company_invitations`

<span class="tool-kind tool-kind-read">Solo lettura</span>

**I tuoi inviti.** Gli inviti in sospeso della persona collegata per entrare in un team (*"sei stato invitato nell'azienda X"*), dal più recente, con l'azienda, chi ha invitato e la data. Solo aziende attive di questa community; senza inviti, elenco vuoto. *Ruolo minimo: qualsiasi.*

Nessun parametro.

**Chiedi così:** *"Ho qualche invito aziendale?"*

## `accept_company_invitation`

<span class="tool-kind tool-kind-write">Modifica</span>

**Accettare il tuo invito.** La persona entra nel team (non come admin dell'azienda). Non chiede conferma. Invito di un'altra persona, già risposto o di un'altra community: "non trovato". Azienda chiusa dopo l'invito, o persona già nel team di un'altra azienda: rifiutato, con il messaggio dell'API. *Ruolo minimo: qualsiasi (il proprio invito).*

| Parametro | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
| `invitation_id` | id | Sì | L'invito (da `list_my_company_invitations`) |

**Chiedi così:** *"Accetta l'invito di Acme."*

## `decline_company_invitation`

<span class="tool-kind tool-kind-confirm">Chiede conferma</span>

**Rifiutare il tuo invito.** Nessun legame viene creato e l'invito sparisce per sempre: per entrare in seguito serve un nuovo invito. La prima chiamata restituisce il riepilogo e il codice di conferma. *Ruolo minimo: qualsiasi (il proprio invito).*

| Parametro | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
| `invitation_id` | id | Sì | L'invito (da `list_my_company_invitations`) |

**Chiedi così:** *"Rifiuta l'invito di Acme."*

## Ricette suggerite

- **Registrare un'azienda:** registrare l'azienda con le offerte (`create_company`), consegnare il `purchaseLink`, invitare chi se ne occuperà (`invite_company_member`) e segnarla come admin dell'azienda (`update_company_member`, o `is_admin` già nell'invito).
- **L'admin invita e la persona accetta:** l'admin dell'azienda invita il collega (`invite_company_member`) e lo segue in `list_company_invitations`; il collega vede l'invito (`list_my_company_invitations`) e lo accetta (`accept_company_invitation`).
- **Cosa ho tramite l'azienda:** chiunque nel team lo chiede, e l'assistente risponde con il `benefits` di `get_my_company` (piani, contenuti e crediti dell'azienda, senza prezzi).

## Correlati

- [Aziende](/membros/empresas)
- [Strumenti](/mcp/ferramentas)
- [Strumenti · Membri](/mcp/ferramentas-membros)
- [Strumenti · Abbonamenti](/mcp/ferramentas-assinaturas)
- [Strumenti · Crediti](/mcp/ferramentas-creditos)
- [Denaro e conferma](/mcp/dinheiro-e-confirmacao)
- [Ricette](/mcp/receitas)
