DEV Community

Cover image for I'm a Developer Who Can't Market - So I Built an AI to Do It For Me
Arsene Muyen Lee
Arsene Muyen Lee

Posted on

I'm a Developer Who Can't Market - So I Built an AI to Do It For Me

TL;DR: I'm a technical founder with zero marketing experience. Social media was killing my productivity. So I hooked up Claude Code + Playwright browser automation to manage marketing for me. Here's my journey from suffering to automation.


The Problem: Technical Founder, Marketing Nightmare

I've spent 20+ years writing code. I can architect systems, debug race conditions, and ship features. But marketing? I'm completely lost.

I'm building ProofMi, an app that helps artists prove their photos are real (not AI-generated). The product is straightforward. Getting people to know about it? Absolute torture.

My marketing "strategy" looked like this:

  1. Open Twitter, stare at blank compose box
  2. Type something, delete it, type again
  3. Finally post something awkward
  4. Open Reddit, realize I need a different tone
  5. Rewrite everything
  6. Open LinkedIn, professional-ify the language (whatever that means)
  7. Repeat for TikTok, Instagram...
  8. Forget what I posted where
  9. Miss all the comments
  10. Feel guilty about not "engaging"
  11. Burnout

I'm a developer. I should be building features, not wrestling with social media tabs.

The Breaking Point: Playwright MCP

I was already using Claude Code for development. One day I needed to test something in a browser and discovered the Playwright MCP - Claude Code could literally control a browser.

Me: "Navigate to this page and fill out the form"
Claude: *opens browser, fills fields, clicks submit*
Enter fullscreen mode Exit fullscreen mode

That's when it hit me: What if Claude Code could manage my social media through browser automation?

Not just posting - the whole workflow. Opening platforms, writing posts, copying links, even setting up API credentials. All the tedious clicking I hated.

The Technical Journey

Attempt 1: Pure Browser Automation

My first thought was simple - just have Claude automate browser clicks:

Me: "Go to Twitter and post about my new feature"
Claude: *navigates to twitter.com*
Claude: *clicks compose*
Claude: *types post*
Claude: *clicks post*
Enter fullscreen mode Exit fullscreen mode

It worked! But it was slow and brittle. Every time Twitter changed their UI, everything broke.

Attempt 2: Postiz + MCP

Then I found Postiz - an open-source social media scheduler (like Hootsuite, but free). The beautiful part? It has a built-in MCP server.

MCP (Model Context Protocol) is how Claude Code talks to external services. Instead of clicking through browser UIs, Claude could call Postiz's API directly:

http://localhost:3000/mcp/{your-api-key}
Enter fullscreen mode Exit fullscreen mode

Now Claude can:

  • postiz_list_integrations - See connected accounts
  • postiz_create_post - Schedule posts
  • postiz_list_posts - View scheduled content
  • postiz_delete_post - Remove scheduled posts

Much cleaner than browser clicks.

The Recursive Part: Setting Up APIs with AI

But wait - to connect Postiz to Twitter, I needed Twitter API credentials. That meant:

  • Creating a developer account
  • Making a project and app
  • Configuring OAuth settings
  • Setting callback URLs

Lots of clicking. Lots of forms.

So I asked Claude to do it using Playwright browser automation:

Me: "Set up the Twitter Developer API for me"
Claude: *navigates to developer.x.com*
Claude: *fills out developer application*
Claude: *creates project*
Claude: *configures OAuth*
Claude: *saves API keys to my credentials file*
Claude: "Done. Keys are saved."
Enter fullscreen mode Exit fullscreen mode

The AI was setting up API keys so it could post to social media. Turtles all the way down.

My Workflow Now

Before (suffering):

1. Context switch from coding
2. Open 5 browser tabs
3. Write 5 different versions of the same message
4. Post manually to each platform
5. Track in a spreadsheet I never update
6. Miss comments for days
7. Feel constant guilt
8. Zero consistency
Enter fullscreen mode Exit fullscreen mode

After (automated):

Me: "Post about the new verification feature.
     Twitter should be casual,
     Reddit should ask for feedback"

Claude: "Done. Here are the links:
        - Twitter: https://x.com/proofmiapp/status/...
        - Reddit: https://reddit.com/r/indiedev/..."
Enter fullscreen mode Exit fullscreen mode

Same reach. Zero suffering.

The Setup (If You Want to Try)

1. Run Postiz Locally

git clone https://github.com/gitroomhq/postiz-app
cd postiz-app
docker-compose -f docker-compose.dev.yaml up -d
pnpm install
pnpm run prisma-db-push
pnpm run dev
Enter fullscreen mode Exit fullscreen mode

PostgreSQL, Redis, Temporal - all running. Frontend on 4200, backend on 3000.

2. Get Your Postiz API Key

Go to Settings > API in the Postiz UI, create an API key.

3. Add MCP to Claude Code

In ~/.claude.json:

{
  "mcpServers": {
    "postiz": {
      "type": "url",
      "url": "http://localhost:3000/mcp/YOUR_API_KEY"
    }
  }
}
Enter fullscreen mode Exit fullscreen mode

4. Connect Your Social Accounts

Use Postiz's UI to connect Twitter, Reddit, LinkedIn, etc. Or ask Claude to do it with Playwright browser automation.

What I Learned

1. Browser Automation is Underrated

Playwright MCP is incredibly powerful for one-time setup tasks. Instead of manually clicking through OAuth flows, Claude can do it all. It's like having an intern who never gets tired of forms.

2. MCP Changes Everything

The Model Context Protocol turns Claude Code from a coding assistant into a general automation platform. Any service with an MCP server becomes a natural language interface.

3. Open Source Wins

Postiz being open source meant:

  • Run locally (no SaaS fees)
  • Inspect how their MCP works
  • Potentially contribute back
  • No data leaving my machine

4. Marketing Can Be Systematic

I always thought marketing required "creativity" I didn't have. Turns out, most of it is just:

  • Consistent posting
  • Platform-appropriate formatting
  • Tracking what works

All of which can be automated or assisted by AI.

The Meta Irony

I'm using AI to:

  • Market an app that detects AI fraud
  • Set up API keys for AI tools
  • Write posts about using AI
  • Even write this article

The snake is eating its tail and I love it.

What's Next

  1. Engagement automation - "Reply to comments on yesterday's posts"
  2. Scheduled campaigns - "Post this series over the next week"
  3. Analytics - "Which posts performed best?"
  4. Content suggestions - "What should I post about today based on what's trending?"

Try It Yourself

The full stack:

  • Postiz - Open source social scheduler
  • Claude Code - AI coding assistant with MCP support
  • Playwright MCP - Browser automation for setup tasks

If you're a developer who hates marketing as much as I do, this approach might save your sanity.


What repetitive task are you still doing manually that could be delegated to AI?


Building ProofMi - prove your photos are real at proofmi.xyz

Top comments (0)