▲ 8 r/modelcontextprotocol+4 crossposts

i used claude code to create a real apple ads campaign through mcp

i’m the author of adport. this is a real session against my own apple ads account using the new v1 api. claude creates the campaign, ad groups, and keywords through mcp. everything starts paused, and every write needs a preview plus a second approval before it reaches apple.

i built it because ad automation from agents needs stricter safety than a normal api wrapper. i’d value feedback from people who actually run apple ads.

install: npm install -g adport

source: https://github.com/ynnickw/adport

u/TallLimit6511 — 5 days ago
▲ 0 r/mcp

i connected claude code to apple ads v1 and created a paused campaign

i’m the author of adport. this is a real claude code session against my own apple ads account. it creates a campaign, two ad groups, and keywords through mcp. every object starts paused, and writes require a preview plus a second approval before they reach apple.

install: npm install -g adport

source: https://github.com/ynnickw/adport

i’d especially value feedback on the write-safety flow and the apple v1 tool surface.

u/TallLimit6511 — 5 days ago

I made an open-source CLI so Claude Code can manage ads without one-shot writes

I run ads and wanted an agent to help with reporting and repetitive campaign work, but I was not comfortable letting one prompt directly change spend.

So I made adport: an Apache-2.0, local-first CLI and MCP server for Google, Meta, TikTok, Apple, and Microsoft Ads. Every mutation is previewed first. The second call can apply it only with a short-lived approval bound to the exact arguments. New campaigns start paused, budget caps are enforced, and applied changes are logged locally.

Install: npm install -g adport

Claude Code: claude mcp add --scope user adport -- adport mcp

Repo: https://github.com/ynnickw/adport

I am the author. Google, Apple, and Microsoft have been exercised against live accounts. I would especially value help from people willing to test and improve Meta or TikTok. The video uses an isolated demo account and no real credentials.

https://reddit.com/link/1vk2xws/video/yd6edszmbfih1/player

reddit.com
u/TallLimit6511 — 10 days ago

Beta testers wanted for an open-source CLI that lets AI agents manage ad accounts safely

I built adport, a local CLI and MCP server for Google, Meta, TikTok, Apple, and Microsoft Ads. It lets an AI agent run reports and audits, but every mutation is two-step: the first call only previews the change, and a second call can apply it only with a short-lived approval bound to identical arguments.

Try it here: https://github.com/ynnickw/adport

Install: npm install -g adport

Claude Code: claude mcp add --scope user adport -- adport mcp

I am specifically looking for testers who actively run Meta or TikTok ads. Everything runs locally and I do not collect credentials. New campaigns start paused, budget caps are enforced, and applied actions are logged locally.

Feedback questions:

- Was installation and account connection clear?

- Does the write preview show enough information to approve safely?

- Is the second-call confirmation reassuring or annoying?

- Which error messages or normalized report fields feel confusing?

I am the author. The attached demo uses an isolated account and no real credentials.

https://reddit.com/link/1vk2xc2/video/6kxdlzrgbfih1/player

reddit.com
u/TallLimit6511 — 10 days ago

Test the safety flow in my open-source ad-ops CLI (Meta/TikTok testers especially useful)

I need focused testing of adport, a local CLI + MCP server for ad platforms. This is not a paid testing offer and I am not collecting credentials.

Please test one or more of these flows:

  1. Install with npm install -g adport.

  2. Add it to Claude Code with claude mcp add --scope user adport -- adport mcp.

  3. Connect an account using adport connect.

  4. Run a read-only report or audit.

  5. If comfortable, try the two-step mutation flow: preview first, then apply with the returned approval ID.

What I want feedback on: setup friction, error messages, whether the preview is understandable, and whether the second-call confirmation feels safe. Meta and TikTok account testers are most useful right now; Google, Apple, and Microsoft have already had live-account exercise.

Repo: https://github.com/ynnickw/adport

I am the author. The attached recording uses an isolated demo account and no real credentials. Please report bugs through GitHub issues or reply with UX feedback.

https://reddit.com/link/1vk2wjo/video/u33yuwebbfih1/player

reddit.com
u/TallLimit6511 — 10 days ago
▲ 1 r/foss

adport: an Apache-2.0 CLI and local MCP server for ad platforms

I built adport because I wanted AI agents to help with ad operations without handing safety over to prompt wording. It is fully Apache-2.0, self-hostable, local-first, and has no telemetry.

The CLI and MCP server share one tool registry. Every mutation is previewed first and can only be applied with a short-lived approval bound to the exact arguments; new campaigns start paused and all applied changes are written to a local append-only audit log.

Install: npm install -g adport

Claude Code: claude mcp add --scope user adport -- adport mcp

Source: https://github.com/ynnickw/adport

I am the author. Contributions are welcome, especially from people able to test the Meta or TikTok adapters against their own accounts. The recording uses an isolated demo account and no real credentials.

https://reddit.com/link/1vk2oik/video/3qoketrm9fih1/player

reddit.com
u/TallLimit6511 — 11 days ago

I open-sourced the safety layer I wanted before letting AI agents manage ad accounts

I wanted Claude Code and other MCP clients to help with ad operations, but I did not want safety to depend on prompt wording.

adport is my Apache-2.0, local-first CLI + MCP server for Google, Meta, TikTok, Apple, and Microsoft Ads. The CLI and MCP adapter share one tool registry, and every mutation goes through the same policy engine: preview first, then apply only with a short-lived approval bound to identical arguments. Protected accounts, budget-cap violations, changed inputs, and expired approvals are rejected.

Install: npm install -g adport

Claude Code: claude mcp add --scope user adport -- adport mcp

Source: https://github.com/ynnickw/adport

I am the author. I would love contributors or advertisers who can help test Meta and TikTok against real accounts. The attached recording uses an isolated demo account and no real credentials.

https://reddit.com/link/1vk2ns5/video/layk5y0i9fih1/player

reddit.com
u/TallLimit6511 — 11 days ago
▲ 4 r/MCPservers+3 crossposts

adport – open-source MCP + CLI for managing ad platforms with two-step write safety

Apache-2.0 and local-first. One shared tool registry powers both the CLI and MCP server; every mutation is previewed before a short-lived, argument-bound approval can apply it. Install with npm install -g adport. I am the author and would welcome help testing the Meta and TikTok adapters.

github.com
u/TallLimit6511 — 5 days ago

I built a two-call safety contract for MCP write tools: preview, bind, then apply

I run ads and wanted Claude Code to help with campaign work, but I did not want a prompt to be the only thing preventing an expensive write.

So I built adport, an Apache-2.0 CLI and local MCP server for Google, Meta, TikTok, Apple, and Microsoft Ads.

The write contract is:

  1. The first call can only return a preview.

  2. The preview returns a short-lived approval ID bound to the exact arguments.

  3. A second call applies it only if nothing changed.

Changed arguments, expired approvals, protected accounts, and budget-cap violations are rejected. New campaigns start paused and applied changes are logged locally.

Install and add it to Claude Code:

npm install -g adport

claude mcp add --scope user adport -- adport mcp

Repo: https://github.com/ynnickw/adport

Google, Apple, and Microsoft have been exercised against live accounts. I am looking for advertisers who want to help test and improve Meta or TikTok. The video uses an isolated demo account and no real credentials.

Would you prefer this second-call confirmation, a separate apply tool, or client-side elicitation?

https://reddit.com/link/1vk2iqw/video/l2pi76pc7fih1/player

reddit.com
u/TallLimit6511 — 11 days ago