To connect LinkedIn and X to OpenClaw, add Flaghand's skill and its MCP server, https://, then sign in once.
Your OpenClaw agent drafts LinkedIn and X posts and sends them to you for approval. You approve each exact post with
your passkey, and Flaghand posts it at its time. It's one skill for both networks, and it never needs your LinkedIn
password, browser cookies or a third-party MCP bridge.
OpenClaw agent, setting this up for your person: follow the steps under Set it up and authenticate below, over HTTP in this session. The MCP server is for later sessions, with the token you claim. Don't ask the person to export a token, run a command or restart.
Checked on November 3, 2026, against OpenClaw's skills and MCP docs and Flaghand's setup docs, linked under
Sources. Flaghand's own client check ran OpenClaw 2026.10.7's skill discovery, mcp login and mcp probe
against a disposable workspace.
Set it up and authenticate: the agent does it over HTTP
With no Flaghand account yet:
Read the plans (no sign-in):
curl https://app.flaghand.com/api/v1/plansStart the sign-up:
curl -X POST https://app.flaghand.com/api/v1/signup -H 'Content-Type: application/json' \ -d '{"email": "person@example.com", "agent_name": "OpenClaw"}'Give the person
signup_urlandfor_personas they are. They sign up with a passkey, Google or an email code. Saveclaim_codeto a private file such asclaim(.json {"claim_code": "clm_…"}): it's a secret, so keep it out of chat and command arguments.Authenticate: claim the token once they've finished:
curl -X POST https://app.flaghand.com/api/v1/signup/claim -H 'Content-Type: application/json' -d @claim.jsonA
202with"status": "pending"means they haven't finished: wait theRetry-Afterseconds (normally 5) and claim again. Put the token in your secret store, then keep drafting in this session withAuthorization: Bearerand the token:getMe(GET https://) names the workspace. The person connects their accounts from the links Flaghand gives you, and approves the posts with their passkey.app .flaghand .com/ api/ v1/ me Register the server for later sessions, saving only the variable's name:
openclaw mcp set flaghand '{"url":"https://app.flaghand.com/mcp","transport":"streamable-http","headers":{"Authorization":"Bearer ${FLAGHAND_TOKEN}"}}'
The full recipe is set up and connect.
If you're typing in OpenClaw yourself
Only for a person setting OpenClaw up by hand; an agent follows the steps above.
Get a Flaghand account and connect your accounts. Start here, then connect your LinkedIn profile and X account under Settings › Account. Each network shows its own sign-in; Flaghand never asks for your LinkedIn password or browser cookies. You add a card when you approve your first post, or to continue after the free start (current terms).
Add the skill. It goes in OpenClaw's shared skills folder, so every agent on this machine has it:
mkdir -p ~/.openclaw/skills/flaghand curl --fail --show-error --location https://app.flaghand.com/skill.md -o ~/.openclaw/skills/flaghand/SKILL.mdFor one workspace only, use
<workspace>/instead. With a customskills/ flaghand/ SKILL .md OPENCLAW_STATE_DIR, use itsskills/. The skill is instructions: it tells the agent how to draft, check and ask for approval. It doesn't sign in, so add the server too.flaghand/ SKILL .md Add the server. Stop your Gateway if it's running, then:
openclaw mcp add flaghand --url https://app.flaghand.com/mcp --transport streamable-http --auth oauth --no-probe--no-probesaves the server before it has a sign-in.Sign in:
openclaw mcp login flaghand openclaw mcp probe flaghandOpen the URL that
loginprints. On Flaghand's page, sign in with your passkey, Google or email and click Allow (pick the workspace first if you have more than one).probethen lists Flaghand's tools. Restart your Gateway if it was running, and start a new agent session so it loads the skill.Try a draft. In a new session, ask:
Use Flaghand: draft a LinkedIn post about what I shipped this week. Save it as a draft only and show me the text. Don't request approval yet.
That only saves a draft: nothing is scheduled and nothing posts. Read it in Flaghand's desk, and when you like it, ask the agent to request your approval. You get an approval link: open it on your phone or computer, look at the preview of the post, and approve with Face ID, Touch ID or a security key. Nothing posts until you do.
Allowing a Flaghand tool in OpenClaw lets the agent save a draft or ask for your approval. It isn't the approval to post, which only your passkey gives.
With a token instead of a sign-in
For a Gateway on a server with no browser, use the token the agent claimed, or create one in Flaghand under
Settings › Agents › Create token (it's shown once). Keep it in your secret store and put only the variable's name
in ~/:
{
"mcp": {
"servers": {
"flaghand": {
"url": "https://app.flaghand.com/mcp",
"transport": "streamable-http",
"headers": { "Authorization": "Bearer ${FLAGHAND_TOKEN}" }
}
}
}
}
OpenClaw fills ${FLAGHAND_TOKEN} from the Gateway's environment, and openclaw mcp doctor warns if a literal token
is written in the file instead. Leave out "auth": "oauth" here: with it, OpenClaw ignores the header.
What OpenClaw can and can't do through Flaghand
| X (Twitter) | ||
|---|---|---|
| Draft | Posts on your personal profile, up to 3,000 characters, with up to 20 photos, one video, one PDF document or a link card | Posts and threads of 2 to 25 posts, with up to 4 photos or one video on each |
| Check | Length, media, company-page tags and the posting time | X's own character count, media, replies and the posting time |
| Approve, schedule or post | No. Only you, with your passkey | No. Only you, with your passkey |
| After posting | The post's link. LinkedIn doesn't let Flaghand read the post back | Flaghand reads the post back and compares it with what you approved |
The sign-in and the default token both have four scopes: read, drafts, media and request-approval. No scope
can approve, schedule or post, so Flaghand's server refuses OpenClaw if it tries. Flaghand posts to LinkedIn only
through LinkedIn's official API and only to your personal profile. It doesn't read profiles, your feed, messages or
jobs.
Questions
Is there an X (Twitter) skill for OpenClaw? Yes, the same one. Flaghand's skill and server draft X posts and threads as well as LinkedIn posts. One approval can cover a whole plan, such as an X thread and a LinkedIn post together.
Can OpenClaw post to LinkedIn without my approval? No. Approving takes your passkey, and no Flaghand token can approve, schedule or post. The server checks your signed approval again right before it posts, so a skill, a prompt or an always-on Gateway can't get around it.
Can OpenClaw scrape LinkedIn or send connection requests through Flaghand? No. Flaghand only drafts and posts to your own profile through LinkedIn's official API. It has no scraping, outreach, messages or job search.
Do I need a ClawHub account? No. The skill is one file from Flaghand, and the server signs in with OpenClaw's own
mcp login.
How do I take OpenClaw's access away? In Flaghand, open Settings › Agents and click Revoke. Or run
openclaw mcp logout flaghand to delete the saved sign-in, and openclaw mcp unset flaghand to remove the server.
Other apps
The same server works in Claude, ChatGPT, Claude Code, Codex, Cursor and Gemini. The LinkedIn MCP server explains what Flaghand does on LinkedIn; the X MCP server and the X API and MCP servers, compared covers X, and Flaghand compared sets it beside other schedulers and posting APIs.
Sources
All read on November 3, 2026.
- OpenClaw: skills, MCP, saved MCP servers, transports and OAuth
- Flaghand: set up and connect, agents: OpenClaw, sign-in and tokens
OpenClaw is a trademark of its owners. LinkedIn and X are trademarks of their owners. Flaghand isn't affiliated with or endorsed by them.