# MCP teams - private pilot

> Share selected connected-account reads with a team, using individual device tokens.

This pilot is disabled by default in self-hosted configuration. Availability
depends on the environment and deployed version. Existing MCP connections keep
their current behavior.

## Create a team and invite people

Open **MCP > Teams** using your personal account with a verified email. Enable an
existing team you own, or create one. The team's wallet pays for shared MCP
calls. Access has no end date by default; the owner can set an end date of up
to 30 days for the team or a member.

These are existing FlyMyAI teams of people. Joining also grants their existing
project and prediction-history access. Invitations disclose this before the
recipient accepts, and the owner must approve the request. They are separate
from agent groups and multiagent Agent Teams.

Send an email invitation or copy an invitation link. It expires in 24 hours.
The recipient signs in, reviews the scope, and requests owner approval. A link
alone grants no access. Removing or leaving a team also removes that person's
project/history membership, device tokens and personal connection delegations.

| Role | Access |
| --- | --- |
| Owner | Billing, access period, roles, approvals, emergency pause, ownership transfer |
| Admin | Invite members/viewers, remove members, revoke shared connections |
| Member | Use approved reads and share their own connected accounts |
| Viewer | Team metadata; no tool calls or device tokens |

## Share a connection

Open the team's **Connections** tab, add your connection, then review the account
and exact actions. The **Share** button in **My MCPs** sends a personal email invitation;
see [personal sharing](https://docs.flymy.ai/agents/guides/mcp-personal-sharing.md) for access without a team. New connections remain private until you explicitly choose
**Shared with team**. Other members, including admins, cannot view your private
connections or expand the actions you approved. Approved actions can read and change account data;
select only what the team needs.

Teams can share every action of a connected account, reads and writes; the owner
selects which ones. Built-in FlyMyAI tools and tools that run on FlyMyAI's own key
can't be shared. Resource sets and
custom MCP servers have sharing entry points with their availability displayed;
they are not silently published. A changed native credential requires approval
again. No automatic fallback chooses another account.

Use **Shared by me** and **Shared with me** to review access. **Make private** or
**Revoke** stops new team calls. A provider read already sent may finish; a
revoked recipient cannot collect its result.

## Connect Claude Code, Cursor or an agent

Every teammate uses the same team URL and their own device token. Under
**Connect**, name your device, choose an expiry and create a token. Copy it
before leaving the page; it is shown once. Never use the owner's API key.

The page provides the exact URL and client configuration. For Cursor, replace
the placeholders in your private MCP configuration:

```json
{
  "mcpServers": {
    "flymyai_team": {
      "url": "YOUR_TEAM_MCP_URL",
      "headers": { "Authorization": "Bearer YOUR_DEVICE_TOKEN" }
    }
  }
}
```

For Claude Code, use the same entry with `"type": "http"`. For a FlyMyAI agent,
add an HTTP MCP server using that URL and Bearer token, then attach it to the
agent. Revoke a lost device without disconnecting other teammates. Device
tokens authorize MCP runtime only; they cannot manage the team.

## Spending, audit and ownership

**Usage** shows charges by member and tool. FlyMyAI reserves up to 30 seconds of
tool execution before a call, then returns the unused portion. Provider
charges, if any, stay with that connected
provider account; an agent's own LLM execution is billed separately.

**Audit** keeps call and access metadata for 30 days, without message bodies,
tool arguments or provider credentials. Owners/admins see team activity; members
see their own. Repeated pre-dispatch denials have a daily audit admission cap.

To transfer ownership, choose a teammate under **Members**. They must accept
responsibility for billing. The team wallet remains the payer; personal provider
credentials remain with the person who connected them. Already admitted calls
keep their original payer. The current owner must transfer before leaving.

No invitation-only guest scope is provided by this pilot. An invitation link
joins the human team with the scope described above.
