Paste one prompt. The agent does the rest.
Merge & Tell has an MCP server. Add it to Claude Code, claude.ai, Cursor or any agent that speaks the protocol, paste the prompt, and it walks you from no account to a first queued post. It hands you a link for the four things only a browser can do, waits, and checks each one landed. It never asks for a password, and nothing publishes until you say so.
In a terminal, in the repository you want posts from (so the agent can commit a .marketing.yml for you).
claude mcp add --transport http merge-and-tell https://merge.tel/mcp claude mcp login merge-and-tell
claude plugin marketplace add jfreal/mergetel claude plugin install merge-and-tell@mergetel
The login opens a browser tab where you sign in (or sign up) and allow the agent. No token to paste.
Set up Merge & Tell for me. Use the merge-and-tell MCP server. Call get_setup_state, then work through each step with me until my first post is queued. When a step needs something only I can do in a browser, give me the link and wait. Never ask me for a password, token, or card. Show me what will publish and ask before publishing anything.
What the agent will do
It calls one tool, get_setup_state, which returns the checklist below with a status per step, and works the first one that is not done. Steps marked needs a browser come back to you as a link.
- Pick a plan. Needs a browser (Stripe). The free plan runs nothing, but the agent can already
preview_pra public pull request so you see real output before paying. - Install the GitHub App. Needs a browser. The link names your account, and the installation is bound to it once the GitHub account that pressed Install is a sign-in here.
- Describe the product. The agent reads your site, proposes a one-liner and a description, and saves what you agree to.
- Name the reader. The ICP every post is written for, from the same read of your site.
- Write a voice. Five questions about how you talk, saved as a brand voice (we) or a person voice (I).
- Connect a social account. Needs a browser: OAuth consent for X, LinkedIn, Mastodon, WordPress.com; a form in the app for Bluesky, Discord, WordPress. The agent never sees the credential.
- Route repositories to accounts. Social sets, when you have more than one product or a founder account. Done by tools.
- Timezone and posting times. Done by tools.
- First post. Pick a recent merged PR, generate, show the plan, ask you, queue.
Three rules the server enforces
- No credentials through the agent. No tool accepts a password, app password, webhook URL or card. The step gets a link instead.
- Nothing publishes without a confirm. Approving a PR, disconnecting an account and hiding a repository do nothing unless the agent passes
confirm: true, which it may only do after asking you. - Every change is on the record. What an agent does shows in the Activity feed with its name, and you can disconnect it from Account at any time.
The full reference
Every tool by name, what each scope allows, personal tokens, disconnecting an agent, and what the refusals mean: the MCP server reference.
Without an agent
Every step above is a screen in the app. Sign in, pick a plan on Pricing, install the App from Repositories, connect accounts on Social, write voices on Voices, set times on Schedule, and the Readiness screen says what is still in the way. How the pieces fit explains why they are separate screens.