Run email marketing from Claude Code.
Paste one line into Claude Code. It installs the plugin, opens the browser sign-in, and starts reading subscribers, drafting campaigns and pulling analytics. No API token.
Read lumail.io/claude-code/install and install the Lumail plugin for me.Takes about a minute. Prefer to run the commands yourself? They are all below.
- No API token, ever
- One browser sign-in
- Scoped to one organization
Read lumail.io/cli/install and set up the Lumail CLI for me.The CLI reaches the full API, including sending — same browser sign-in, plus the lumail skill.
Ask for the work, not the menu path.
Claude Code picks the right Lumail tools and runs them against the one organization you authorized. Read tools inspect live data, write tools create real drafts and real subscribers.
Add [email protected] to my newsletter and tag them vip.
Create a draft campaign for the product launch with three subject line options.
Show me subscriber growth over the last 30 days.
Build a welcome sequence of three emails over a week and leave it as a draft.
Sign in once. Nothing to copy.
The plugin points Claude Code at an OAuth 2.1 endpoint with dynamic client registration. Claude Code registers itself, runs PKCE, and keeps the token in its own credential store. Your password never touches the agent.
- 01
Claude Code registers itself
One command opens lumail.io in your browser. There is no client ID to configure and no secret on disk.
- 02
You pick the organization
Sign in to Lumail and choose exactly which organization the agent may reach. Only owners and admins can authorize one.
- 03
You approve the scopes
Lumail asks for lumail.read and lumail.write, and shows you what each one covers before you grant it.
Your token carries the organization as a signed claim, so a session can never reach another organization in your account. Revoke it from Lumail settings and access stops on the next request.
What Claude Code can and cannot do.
The OAuth connection exposes a deliberately narrow tool set: everything needed to research, organize and draft, and nothing that reaches your audience's inbox.
Available over OAuth
Read subscribers, tags, custom fields and segments
Read campaigns, their content, analytics and send progress
Read workflows, workflow groups and org-wide stats
Add subscribers and apply or remove tags in bulk
Create and edit campaign drafts, and duplicate existing ones
Create and configure workflow drafts
Not exposed at all
Send or schedule a campaign
Publish or activate a workflow
Unsubscribe a contact
Delete anything at all
Reach another organization in your account
Change billing or organization settings
These are not permission prompts you could click through by accident — the tools are not registered on the OAuth endpoint, so the agent never sees them. Sending stays in the Lumail app, or in your terminal with npx lumail.
Two commands and a browser tab.
The plugin ships the MCP connection and two skills. Nothing runs locally, and there is no token to store, so there is nothing to rotate later.
Let your agent do it
Paste this into Claude Code. It reads the install guide at lumail.io/claude-code/install, adds the marketplace, installs the plugin, runs the browser login, and verifies the connection.
Read lumail.io/claude-code/install and install the Lumail plugin for me.Or run it yourself
Four steps, all in your own terminal. Claude Code 2.x or newer is required for plugin marketplaces.
- 01
Add the marketplace
The plugin is published in a public repository. Adding the marketplace registers it as lumail.
claude plugin marketplace add https://github.com/Melvynx/lumail-skills.git - 02
Install the plugin
This installs the MCP connection plus the lumail and lumail-plugin skills, which teach Claude Code how to drive them.
claude plugin install lumail@lumail - 03
Sign in through your browser
A Lumail tab opens. Sign in, pick the organization the agent may reach, and approve the scopes. That is the whole credential step.
claude mcp login plugin:lumail:lumail - 04
Verify, then start a new session
Claude Code reads its tool list at session start, so open a fresh conversation before your first prompt. Begin with a read-only question.
claude mcp get plugin:lumail:lumail
Connection details
- Marketplace
- lumail
- Plugin
- lumail@lumail
- Server URL
https://lumail.io/mcp- Transport
- HTTP (streamable)
- Auth
- OAuth 2.1 + PKCE, with DCR
- Scopes
lumail.read, lumail.write
Need to send from an agent?
The OAuth connection cannot send, by design. The Lumail CLI reaches the full API including sending, and it signs in with the same browser flow — still no token to paste.
npx lumail auth loginUseful access, clear boundaries.
Every request is checked against the organization baked into your access token, and against your membership in it. Nothing about that lives in a file you have to protect.
One organization per authorization
The token carries a signed organization claim. Other organizations in your account stay invisible to Claude Code, even if you are an owner of all of them.
Owners and admins only
Lumail refuses to issue a plugin token for an organization where you are a plain member, so a teammate cannot quietly wire an agent into your list.
Revoke without touching your setup
Disconnect from Lumail settings and the next request fails. No config to edit, no token to hunt down in a dotfile.
Frequently asked questions
What is the Lumail plugin for Claude Code?
It is a Claude Code plugin that installs an OAuth MCP connection to your Lumail organization, plus two skills that teach Claude Code how to use it. Once connected, Claude can read subscribers, campaigns, tags, workflows and analytics, and create drafts.
Do I need an API token?
No. The plugin uses OAuth: you sign in on lumail.io in your browser, choose an organization, and approve the scopes. Claude Code stores the resulting token itself. Nothing sensitive is written to your project or dotfiles.
How do I install it?
Paste 'Read lumail.io/claude-code/install and install the Lumail plugin for me.' into Claude Code and it does the whole setup. Manually: claude plugin marketplace add, claude plugin install lumail@lumail, then claude mcp login plugin:lumail:lumail.
Can Claude send a campaign?
Not over this connection. Send, schedule, publish, unsubscribe and delete tools are not registered on the OAuth endpoint, so the agent never sees them. Sending happens in the Lumail app, or through the Lumail CLI if you want it in a terminal.
Why did my first prompt say the tools are missing?
Claude Code captures its MCP tool list when a session starts, so the conversation that installed the plugin cannot use it. Open a new conversation after installing and the Lumail tools will be there.
Do I need a paid plan?
No. The free plan includes MCP access with 100 requests per minute. Premium raises it to 700 and Business to 2,000, counted per organization.
What is the difference between the plugin and the CLI skill?
The plugin gives Claude tools it calls directly over HTTP, scoped to safe operations. The CLI skill teaches Claude to run npx lumail in your terminal, which reaches the full API including sending, with every command visible to you. They install together and work side by side.
How do I revoke access?
Disconnect the app from your Lumail settings, which cuts access immediately. You can also remove the plugin locally with claude plugin uninstall lumail@lumail.
Put your email operation in the terminal.
Install the plugin, sign in once, and start with a read-only question. Claude Code takes it from there.
Read lumail.io/claude-code/install and install the Lumail plugin for me.