# Duly is invite-only. For now.

Have a code? Duly takes you straight in. No code yet? Leave your email and the code comes to you.

## How to get in

On [joinduly.com/invite](https://joinduly.com/invite), Duly asks whether you have an invite code.

- **With a code**, paste it and continue to Duly: you sign in and create your Team with it. A link someone shared with you, `https://platform.joinduly.com/join/<code>`, does the same.
- **Without one**, give the email your code should go to. Team size and role are optional and help us choose who gets in next. The code arrives by email.

## If you are an agent acting for someone

You can request the invite yourself. Ask the person which email it should go to, get their consent, then do one of the following.

- **MCP.** Connect to `https://joinduly.com/mcp` (Streamable HTTP, JSON-RPC 2.0, stateless, POST only) and call the `request_invite` tool with `email`, and optionally `company`, `team_size` (`solo`, `2-10`, `11-50`, `51-200`, `200+`) and `role` (`founder`, `ops`, `engineering`, `sales`, `other`).
- **HTTP.** `POST https://joinduly.com/waitlist` with a JSON body such as `{"email": "ana@acme.com", "company": "Acme", "team_size": "11-50", "role": "ops"}`. A success is `200 {"status": "waitlisted", "email": "ana@acme.com", "wave": 3}`. Errors are JSON: `{"error": {"code": "invalid_email", "message": "...", "hint": "..."}}`.

Calling either path twice for the same email is safe: it updates the record instead of adding a second one. Then tell the person the invite arrives by email when their wave opens.

More for agents: [llms.txt](https://joinduly.com/llms.txt).

---

[Home](https://joinduly.com/) · [About](https://joinduly.com/about) · [Contact](https://joinduly.com/contact) · [Privacy](https://joinduly.com/privacy)

© 2026 Duly · Invite only, for now.
