Skip to main content
Automation May 27, 2026 · 10 min read

How to Connect Postiz to Claude Desktop via MCP for AI-Powered Content Scheduling

Connect Postiz to Claude Desktop via MCP in 15 minutes. Full Docker setup guide, API token config, and automated content scheduling that saves 10 hours weekly.

Edward Chalupa

Edward Chalupa

Founder, Whtnxt · Dallas, TX

How to Connect Postiz to Claude Desktop via MCP for AI-Powered Content Scheduling

I was spending 8 to 10 hours a week on social media. Not strategy. Not community engagement. Just the mechanical work of drafting posts, finding images, pasting content into Postiz, and scheduling it across platforms. The creative work that actually matters was getting squeezed into whatever time was left after the publishing treadmill.

Postiz itself is a solid scheduler. It handles LinkedIn, Twitter, Instagram, Facebook, and a handful of other platforms from one dashboard. But the workflow between having an idea and seeing it scheduled still had too many steps. Draft in a Google Doc or Notion, copy it over, upload images, set dates, repeat.

The MCP server Postiz exposes changes that. Claude Desktop can talk to Postiz directly, draft content in your voice, find matching images from your library, and push it into the scheduling queue. No copy-paste. No tab switching. Just a prompt and a publish-ready draft.

This guide walks through exactly how I set it up.

What You’re Building

A direct connection between Claude Desktop and Postiz that lets you draft, review, and schedule social media content from a single conversation. When it’s running, you can say something like “write a LinkedIn post about MCP servers for marketers, schedule it for Thursday at 10am,” and Claude handles the draft, image selection, and scheduling in Postiz without you touching the Postiz UI.

What You’ll Need

  • A Postiz account (self-hosted or SaaS. I use the self-hosted Docker version on a Synology NAS). Self-hosting guide is in the Postiz docs, but the standard docker-compose setup works.
  • Claude Desktop (the native app, not the web version). MCP support is built into the Claude Desktop app as of late 2025.
  • Postiz API credentials. You need the API URL and an API token from your Postiz instance. In self-hosted Postiz, this is in Settings > API. For the SaaS version, it’s under Account > Developer Settings.
  • About 15 minutes if you already have Claude Desktop installed.

Step 1: Find Your Postiz MCP Server Details

Postiz ships with a built-in MCP server. You don’t install anything extra. What you need is the MCP server configuration details, which depend on how you run Postiz.

For the self-hosted Docker version, the MCP server endpoint is at:

http://your-postiz-host:5000/mcp

If you’re running Postiz through a reverse proxy or Cloudflare Tunnel (which I recommend for self-hosted setups), the URL will be whatever you’ve exposed. Mine runs through a Cloudflare Tunnel at postiz.whtnxt.io, so the endpoint is:

https://postiz.whtnxt.io/mcp

You also need an API token. In Postiz, go to Settings > API and generate a new token. It looks like a long hex string. Copy it immediately. Postiz only shows it once.

For the SaaS version of Postiz, the MCP endpoint is:

https://api.postiz.com/mcp

And you generate the token from Account > Developer Settings in the web app.

Step 2: Configure the MCP Server in Claude Desktop

Claude Desktop uses a JSON configuration file to discover MCP servers. The file lives at:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Open that file (create it if it doesn’t exist) and add the Postiz MCP server to the mcpServers object:

{
  "mcpServers": {
    "postiz": {
      "type": "url",
      "url": "https://postiz.whtnxt.io/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_POSTIZ_API_TOKEN"
      }
    }
  }
}

Replace YOUR_POSTIZ_API_TOKEN with the token you generated in Step 1, and the URL with your Postiz instance’s MCP endpoint.

If you’re self-hosting Postiz without a tunnel (local network only), use the local HTTP URL instead:

{
  "mcpServers": {
    "postiz": {
      "type": "url",
      "url": "http://192.168.1.50:5000/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_POSTIZ_API_TOKEN"
      }
    }
  }
}

Save the file and restart Claude Desktop completely. You’ll know the MCP server connected successfully when you see a small plug icon next to the chat input, or when Claude mentions Postiz tools are available in its initial message.

Step 3: Verify the Connection Works

Open Claude Desktop and ask it what Postiz tools are available. A good test prompt:

What Postiz tools do you have available? Show me what I can do with them.

If the MCP server is configured correctly, Claude will list tools for things like creating posts, scheduling content, managing queues, and accessing your media library. The specific tool names vary by Postiz version, but expect something like postiz_create_post, postiz_schedule_post, postiz_list_queue, and postiz_upload_media.

If Claude says it has no Postiz tools, the MCP server isn’t connecting. Check three things:

  1. The URL in your config is reachable from your machine. Open it in a browser. You should get a response, not a timeout.
  2. The API token is valid. Try using it with curl: curl -H "Authorization: Bearer YOUR_TOKEN" https://your-postiz-host/mcp/tools
  3. Claude Desktop was fully restarted. Closing the window isn’t enough. Quit the app completely from the menu bar and relaunch.

Step 4: Build Your First Content Workflow

Once the connection is verified, you can start scheduling content directly from Claude. Here’s the workflow I use for a typical LinkedIn post:

Draft a LinkedIn post about the differences between MCP and regular API servers.
Keep it under 300 characters. Find a relevant image from my media library.
Schedule it for tomorrow at 10:00 AM Central.

Claude will call the Postiz MCP tools in sequence: generate the draft, search your media library for an appropriate image, create the post draft, and schedule it. The whole sequence takes about 30 seconds. The same process used to take me 10 to 15 minutes per post.

For batch workflows, I use a more structured prompt:

I need 5 LinkedIn posts for next week, one per day Monday through Friday.
Topics: workflow automation, content repurposing, AI tools for marketers,
self-hosted analytics, and email newsletter strategy.
Keep each under 250 characters. Use the image tagged "automation" from my
media library for all of them. Schedule for 10:00 AM each day.

Claude handles the batch creation, scheduling each post to its designated day and time. If a generated draft needs editing, you can ask Claude to revise it before it’s scheduled. The interaction feels like working with a content assistant rather than filling out forms.

Step 5: Automate the Content Pipeline (The Real Win)

The single-post and batch workflows above already save time, but the real leverage comes from automated content pipelines. Set up a recurring prompt that Claude runs on a schedule, or use the Postiz API through an n8n workflow.

My current setup uses an n8n marketing automation engine that runs each morning:

  1. Pulls content ideas from a self-hosted NocoDB table
  2. Sends them through Claude’s API for drafting
  3. Pushes finished drafts into Postiz via its API
  4. Postiz handles the scheduling and publishing

The full system runs unattended. I review the queue once a week to make sure nothing slipped past quality control.

The Pitfalls I Hit

Pitfall 1: Wrong MCP Server Type

Postiz uses a URL-based MCP server, not a command/stdio server. If you configure the Postiz MCP entry with "command": "node" and "args", it won’t work. The "type": "url" field is required. I lost about 20 minutes on this because I copied the pattern from a different MCP server that used stdio transport.

Pitfall 2: API Token Format

Some Postiz versions expect the token without the Bearer prefix in the MCP header. If you get a 401 error, try removing Bearer and just passing the raw token. The correct format depends on your Postiz version — check the server logs if authentication fails.

Pitfall 3: Docker Networking for Self-Hosted Instances

If Postiz is running in Docker and Claude Desktop is on the same machine, use host.docker.internal instead of localhost in the Postiz URL, or use the container’s internal IP. Docker containers can’t reach localhost on the host by default. This cost me about 30 minutes of debugging before I realized the MCP endpoint was unreachable from the host network namespace.

When to Use This (And When Not To)

This setup shines when you’re publishing 5 or more posts per week across multiple platforms and your content strategy is stable enough that you can express it in prompts. The MCP connection saves the most time on batch scheduling, recurring content types, and template-based posts.

It’s not a good fit for:

  • High-touch, highly personalized content. If every post needs custom visuals, unique formatting, or deep subject matter review, the MCP drafting step will need heavy editing and you’re better off writing directly in Postiz.
  • Real-time or reactive content. Breaking news, trending topics, and time-sensitive posts don’t benefit from scheduling through an assistant. Just post directly.
  • Compliance-heavy industries. If every social post needs legal review before publishing, an automated pipeline creates more overhead than it saves. The review step becomes the bottleneck, not the drafting.

What’s Next

Once the Postiz MCP connection is running, the next step is connecting it to your broader automation stack. I feed content ideas from a NocoDB table through Claude for drafting, then push into Postiz for scheduling. The same MCP architecture that connects Claude to Postiz also connects it to your database, your email platform, and your analytics tools. Each tool you add multiplies what the system can do without manual intervention.

If you’re interested in custom MCP servers for your specific tools, I build them as part of client engagements. The Postiz MCP connection takes about 15 minutes to set up. A full content automation pipeline connecting your CRM, CMS, and social scheduling takes a few days to architect and deploy. Most teams see a 50 to 60 percent reduction in time spent on content operations within the first two weeks.

postizmcpclaude desktopsocial media automationcontent schedulingai automation
Share: