Wahlu MCP server
A social media MCP server for your AI agent.
The social media tool your AI agent can run: add one URL, sign in to Wahlu, and your agent can read your calendar, add media, draft posts, check they're ready and schedule them for your review.
Instagram · Facebook · TikTok · YouTube · LinkedIn personal profiles · X · Bluesky · Telegram · Discord · Tumblr
https://mcp.wahlu.com/mcpEvery Wahlu plan includes agent access, through MCP and the API. Claude and ChatGPT directory apps are Coming soon; custom connections work now.
From a brief to a scheduled post.
Your agent brings the ideas and the words. Wahlu holds your brands, media, accounts and calendar, and checks every post against each network's rules.
- 01
Add the URL
Paste https://mcp.wahlu.com/mcp into your agent as a remote MCP server.
- 02
Sign in to Wahlu
OAuth in your browser. Choose the workspace, brands and permissions.
- 03
Ask for a post
The agent drafts it, checks it's ready and schedules it, held for your approval.
Works with your agent.
Each page has the setup steps, checked against the vendor's documentation, and example prompts for every network.
- ClaudeHosted MCP · OAuthAdd Wahlu as a custom connector, then ask Claude to read your calendar, find media, draft posts and schedule them for your review.
- ChatGPTHosted MCP · OAuthAdd Wahlu as a custom connection on chatgpt.com, then ask ChatGPT to draft posts, check they're ready and put them on your calendar for review.
- Claude CodeHosted MCP · OAuthTurn release notes and the changes you just shipped into posts, upload screenshots from your project and schedule them for review.
- CodexHosted MCP · OAuthAdd Wahlu once, and Codex can turn the changes in your branch into posts for each network, upload media from your project and hold the schedule for your review.
- CursorLocal MCP server · API keyRun the Wahlu MCP server on your computer with an API key, then draft launch posts from the work in your editor, upload media from your project and check your schedule.
- Gemini CLILocal MCP server · API keyRun the Wahlu MCP server on your computer with an API key, then turn the work in your project into posts for each network, upload media from your files and hold the schedule for your review.
- VS CodeHosted MCP · OAuthAdd Wahlu to .vscode/mcp.json and sign in when the server starts.
- Other MCP clientsHosted or localClients that support OAuth with Client ID Metadata Documents use the URL. Others can run the local server with an API key.
Building your own workflow instead? Use the REST API or the CLI, as the OpenClaw guide does.
Sign in and choose what it can do.
Connecting opens a Wahlu sign-in in your browser. You never paste a password or API key into the chat.
- 01
Confirm your account
Continue as your Wahlu account, or switch to another one.
- 02
Choose a workspace and brands
The agent only sees the brands you tick.
- 03
Review the permissions
Every permission starts ticked. Untick any you don't want, such as publishing.
- 04
Disconnect at any time
Remove the agent at auth.wahlu.com/connections. Your social accounts stay connected.
38 tools, each behind a permission.
Your agent sees these tools once connected. It can only use the ones whose permission you granted, for the brands you chose.
Discovery
get_contextThe workspace, the brands the agent can use and the permissions you granted.
Permission: No permission needed
get_brand_contextA brand's voice, audience and content pillars, brand kit, custom AI instructions and Link in bio page.
Permission: See your content
list_labelsA brand's labels, so drafts can be tagged.
Permission: See your content
list_targetsA brand's connected social accounts and whether each one is ready to post.
Permission: See connected social accounts
get_platform_capabilitiesThe networks Wahlu supports, with their post types, media rules and settings.
Permission: No permission needed
refresh_target_dynamic_optionsAsks TikTok which privacy options one connected account allows right now.
Permission: Look after social account connections
Media
list_mediaBrowse a brand's images and videos, with pages for larger libraries.
Permission: See your media
get_mediaCheck whether one image or video has finished processing and is ready.
Permission: See your media
import_media_from_urlBring in an image or video from a public link.
Permission: Add media
upload_mediaUpload an image or video the agent holds as data. Larger files, including most video, go to a short-lived upload link.
Permission: Add media + See your media
create_media_repair_derivativeMake a cropped or padded copy when a readiness check offers that fix. The original is never changed.
Permission: Add media
upload_media_from_fileUpload an image or video straight from a file on your computer.Local server only. The hosted server can't read files on your computer.
Permission: Add media
Content
list_content_itemsList a brand's saved drafts and posts.
Permission: See your content
get_content_itemRead one draft's copy, media, accounts and platform settings.
Permission: See your content
create_draftCreate a draft with its caption, media, accounts and settings for each network. It doesn't schedule anything.
Permission: Manage drafts and ideas
update_draft_tiktok_privacySet a TikTok draft's privacy to one of the options TikTok just returned.
Permission: Manage drafts and ideas
preflight_draftCheck a draft is ready for the chosen accounts and time. It changes nothing and lists anything to fix.
Permission: Manage your schedule
list_draftsRead up to 50 unused drafts for one brand.
Permission: See your content
update_draftChange the name or caption of one unused draft.
Permission: Manage drafts and ideas
delete_draftDelete an unused draft and keep its media.
Permission: Manage drafts and ideas
Schedules
list_schedulesThe brand's calendar of scheduled posts for a date range.
Permission: See your schedule
get_scheduleOne schedule's approval, status and anything blocking it.
Permission: See your schedule
create_scheduleSchedule a draft, either held for your review or approved to publish. Approved schedules also need the publish permission.
Permission: Manage your schedule
reschedule_scheduleMove one schedule to a new time.
Permission: Manage your schedule + Publishing
cancel_scheduleCancel a schedule that hasn't started publishing.
Permission: Manage your schedule
get_publish_run_receiptWhat happened on each network when a schedule published.
Permission: See your schedule
cleanup_provider_publicationsRemove posts this connection published, using that publish receipt.
Permission: Publishing
approve_scheduleApprove a held post so it can go out at its set time. Posts with lines to check need your go-ahead first.
Permission: Manage your schedule + Publishing
move_schedule_to_draftRemove an unsent schedule and keep the post as a draft.
Permission: Manage your schedule + Manage drafts and ideas
delete_scheduleDelete an unsent schedule. Keep the content and media.
Permission: Manage your schedule
History
list_historyRead past posts and the links to them on social platforms.
Permission: See publishing history
Link in bio
get_bio_pageRead the draft and published Link in bio page.
Permission: See your content
get_bio_statsRead page views, visitors and link clicks for 7 or 28 days.
Permission: See your content
Autopilot
get_autopilot_planFind a brand's active Autopilot plan and the weeks available to review.
Permission: See your content
get_autopilot_weekRead one week of an Autopilot plan and its ideas.
Permission: See your content
approve_autopilot_itemApprove one idea on a paid plan without starting generation or scheduling a post.
Permission: Manage drafts and ideas
regenerate_autopilot_itemAsk for a new topic for one unused idea. Needs a paid plan.
Permission: Manage drafts and ideas
resolve_autopilot_fact_flagFix a line Wahlu couldn't check against your brand details: use the suggested rewrite, remove it, or mark it true once you confirm it.
Permission: Manage drafts and ideas
Notifications
list_notificationsRead your alerts for one brand without marking them as read.
Permission: See notifications
You stay in control.
Every Wahlu plan includes agent access, through MCP and the API. You choose the workspace, brands and permissions each connection gets, and can disconnect it at any time.
Held until you approve
Agents create schedules at pending_review unless you've told them to publish. A held schedule can't publish until you approve it in Wahlu or ask an agent with Publishing permission to approve it.
Publishing is its own permission
Publishing is separate from Manage your schedule. Leave it unticked and nothing your agent schedules can go out on its own.
Checked before it's scheduled
preflight_draft reports anything that would stop a post, such as media the network won't accept or a caption that's too long, without changing anything.
Some things stay in the app
Use the app for queues, draft media and platform settings, and connecting social accounts. Agents can change the name or caption of an unused draft and approve held schedules with the right permissions.
Included in every plan.
Every Wahlu plan includes agent access, through MCP and the API.
There's no separate developer plan or add-on. The workspace owner needs an active plan and at least one brand; if something's missing, the Wahlu sign-in page says what to do next.
Compare plansContinue with the details
Let your agent set itself up
Give your agent wahlu.com/connect and it follows the steps for you.
MCP server documentation
Hosted OAuth, the local package, TikTok privacy and cleanup rules.
Build a held schedule
Media, draft, readiness check and a held schedule, step by step.
REST API documentation
The same actions over HTTP with a scoped API key.
Give your agent somewhere to put the posts.
Connect your social accounts in Wahlu, then add the MCP server to your agent.