By the end of this page you will be able to:
- invite a person to your organization;
- help them issue their own key and connect an agent;
- revoke a key if a laptop is lost or a key leaks.
Example: Northwind’s admin David invites Ben (ben@northwind.example) to the Backend unit as a Member.
Invitation
Section titled “Invitation”-
David switches to the organization and opens People → “Invite a person”.
-
He fills in the email, the unit and the role. He leaves “Access term, days” empty — it is meant for contractors.
-
He clicks “Create invitation”. The account shows an invitation link like
https://app.mmwhub.tech/invite?token=…with a “Copy” button. -
David sends the link to Ben himself, in a work chat or by email. MMW does not send invitation emails.
-
Ben opens the link, signs in (or signs up) with the same email, verifies it and clicks “Accept invitation”. The account says “You joined the organization”, and Northwind appears in his space switcher.
Link properties:
| Property | Value |
|---|---|
| Lifetime | 7 days from creation |
| Uses | One: once accepted, the link stops working |
| For whom | Only the specified email |
| Storage | The link is shown once; the server keeps only a hash of the token |
| Revocation | The admin clicks “Revoke” in the Invitations list while it is still pending |
Each link in Invitations shows a status: pending, accepted or revoked. Only the admin can invite, list and revoke invitations.
If an invitation does not work
Section titled “If an invitation does not work”| Message | Cause | What to do |
|---|---|---|
| “Invitation not found, already used or expired.” | 7 days passed, the link was revoked or already accepted | The admin creates a new invitation |
| “This invitation was issued for another email.” | The person signed in with a different email | Sign out and sign in with the invited email |
| “Verify your email first.” | Email not verified | Use the link from the email; if none arrived, click “Send the email again” on the Organizations page |
| “You are already a member of this organization.” | Already a member | Nothing to do |
A member’s key
Section titled “A member’s key”Every person issues a key for themselves. The admin cannot issue a key on someone else’s behalf.
-
Ben switches to Northwind and opens the Keys tab.
-
Under “My keys” he enters a name such as “work laptop” and clicks “Issue key”.
-
The account shows the
mmw_…key once: “The key is shown once. Copy it into your MCP client settings now.” -
Ben connects his agent with this key, exactly as with a personal key — see Connect a client.
claude mcp add mmw-northwind \ -e MMW_API_KEY=mmw_organization_key \ -e MMW_ENDPOINT=https://mcp.mmwhub.tech \ -- uvx --from https://app.mmwhub.tech/downloads/mmw-agent/mmw_agent-0.1.4-py3-none-any.whl mmw-agent{ "mcpServers": { "mmw-northwind": { "url": "https://mcp.mmwhub.tech/mcp", "headers": { "Authorization": "Bearer mmw_organization_key" } } }}An organization key works only with that organization’s memory; a personal key works only with personal memory. If you need both, add two servers with different names, for example mmw and mmw-northwind.
What the admin sees
Section titled “What the admin sees”On the Keys tab the admin sees “Organization keys”: each key’s name, owner and status, and can revoke any of them. But the admin cannot see the secret of someone else’s key or reissue it: otherwise the admin could act in memory as that person, and the audit log and record authorship would mean nothing.
| Key owner | Admin | Others | |
|---|---|---|---|
| Issue | for themselves | for themselves only | — |
| See the secret | once, when issued | no | no |
| See in the list | own keys | every key in the organization | — |
| Revoke | own keys | any | — |
Revocation takes effect immediately: the next agent call with that key is refused. The member issues a new key themselves.