diff --git a/.cursor-plugin/marketplace.json b/.cursor-plugin/marketplace.json index 5e14bf2e2..438d26d65 100644 --- a/.cursor-plugin/marketplace.json +++ b/.cursor-plugin/marketplace.json @@ -373,6 +373,11 @@ "source": "third_party/x-ads", "description": "Manage ad campaigns, create ads, track conversions, and pull performance stats." }, + { + "name": "meta-ads", + "source": "third_party/meta-ads", + "description": "Manage Meta ad campaigns, creatives, catalogs, and reporting from chat." + }, { "name": "attio", "source": "third_party/attio", diff --git a/README.md b/README.md index d51df4f9b..dd4ffd5eb 100644 --- a/README.md +++ b/README.md @@ -72,6 +72,7 @@ Official Cursor plugins for popular developer tools, frameworks, and SaaS produc | `similarweb` | [Similarweb](third_party/similarweb/) | Cursor | Integrations | Analyze website traffic, audiences, and competitors. | | `xero` | [Xero](third_party/xero/) | Cursor | Integrations | Read and write invoices, contacts, reports, and payroll. | | `x-ads` | [X Ads](third_party/x-ads/) | Cursor | Integrations | Manage ad campaigns, create ads, track conversions, and pull performance stats. | +| `meta-ads` | [Meta Ads](third_party/meta-ads/) | Cursor | Integrations | Manage Meta ad campaigns, creatives, catalogs, and reporting from chat. | | `attio` | [Attio](third_party/attio/) | Cursor | Integrations | Search and update CRM records, lists, notes, and tasks. | | `hunter` | [Hunter](third_party/hunter/) | Cursor | Integrations | Find and verify emails, discover companies, and save leads. | | `gamma` | [Gamma](third_party/gamma/) | Cursor | Integrations | Generate presentations, documents, and webpages. | diff --git a/third_party/meta-ads/.cursor-plugin/plugin.json b/third_party/meta-ads/.cursor-plugin/plugin.json new file mode 100644 index 000000000..9e2c88e38 --- /dev/null +++ b/third_party/meta-ads/.cursor-plugin/plugin.json @@ -0,0 +1,35 @@ +{ + "name": "meta-ads", + "displayName": "Meta Ads", + "version": "1.0.0", + "minClientVersions": { + "cursor": "3.13.0" + }, + "description": "Manage Meta ad campaigns, creatives, catalogs, and reporting from chat.", + "author": { + "name": "Cursor", + "email": "plugins@cursor.com" + }, + "homepage": "https://developers.facebook.com/documentation/ads-commerce/ads-ai-connectors/ads-mcp-server/ads-mcp-server-overview", + "repository": "https://github.com/cursor/plugins", + "license": "MIT", + "logo": "assets/logo.svg", + "keywords": [ + "meta", + "facebook", + "instagram", + "ads", + "advertising", + "campaigns", + "marketing", + "mcp" + ], + "category": "integrations", + "tags": [ + "meta", + "ads", + "facebook", + "mcp" + ], + "mcpServers": "./mcp.json" +} diff --git a/third_party/meta-ads/CHANGELOG.md b/third_party/meta-ads/CHANGELOG.md new file mode 100644 index 000000000..f809f8a9c --- /dev/null +++ b/third_party/meta-ads/CHANGELOG.md @@ -0,0 +1,9 @@ +# Changelog + +All notable changes to this plugin will be documented here. + +## 1.0.0 — initial release + +- Added the `meta-ads` MCP server pointing at Meta's hosted Ads MCP (`https://mcp.facebook.com/ads`). +- Auth uses Meta OAuth (Facebook Login for Business) — no API key to configure in the plugin. +- Logo: placeholder SVG; swap for Meta's official Ads mark if preferred. diff --git a/third_party/meta-ads/LICENSE b/third_party/meta-ads/LICENSE new file mode 100644 index 000000000..ca2bba771 --- /dev/null +++ b/third_party/meta-ads/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2026 Cursor + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/third_party/meta-ads/README.md b/third_party/meta-ads/README.md new file mode 100644 index 000000000..496dd4562 --- /dev/null +++ b/third_party/meta-ads/README.md @@ -0,0 +1,73 @@ +# Meta Ads + +Cursor plugin that connects agents to [Meta Ads](https://www.facebook.com/business/ads) through Meta's official remote [Model Context Protocol](https://modelcontextprotocol.io/) Ads MCP server. + +Manage Facebook and Instagram ad accounts from chat — reporting, campaign creation (writes start paused), catalogs, signals, A/B tests, lift studies, activity logs, and Ad Library search. + +## Install + +1. Open **Cursor Settings → Plugins**. +2. Search for **Meta Ads**. +3. Click **Install**, then complete the Meta sign-in prompt. + +Or run `/add-plugin meta-ads` in chat. + +## MCP + +```json +{ + "mcpServers": { + "meta-ads": { + "type": "http", + "url": "https://mcp.facebook.com/ads" + } + } +} +``` + +Auth is OAuth against your Facebook account or Meta Managed Account via Facebook Login for Business. Cursor prompts for sign-in when the plugin connects. + +## Before you connect + +Owning a Meta developer app is **not** required for Meta's first-party connector path (see [Manage ads from an AI agent with Meta Ads AI connectors](https://www.facebook.com/business/help/1456422242197840)). That path is documented for ChatGPT, Claude, Claude Code, and Perplexity; Cursor may fall into the same flow or may need an app-based setup. + +If OAuth asks for a Meta app client ID (same pattern as Claude Code / ChatGPT Advanced OAuth): + +1. Create or open an app at [developers.facebook.com/apps](https://developers.facebook.com/apps). +2. Add the **Create & manage ads with ads MCP server** use case. +3. In Facebook Login for Business, set redirect URLs for your MCP client (for Cursor Desktop that typically includes `http://localhost:8787/callback` and `cursor://anysphere.cursor-mcp/oauth/callback`). +4. Use that app's ID as the OAuth client ID when connecting. + +Minimum token scopes (user or Employee system user): `ads_mcp_management` plus `ads_read` or `ads_management`. Additional scopes unlock more tools: `ads_management`, `catalog_management`, `business_management`, `pages_show_list`, `instagram_basic`. Admin-role system user tokens are **not** supported. + +## What agents can do + +| Category | Capabilities | +| --- | --- | +| Reporting | Campaign / ad set / ad metrics, opportunity score, anomaly and benchmark insights | +| Creation & management | Create and edit campaigns, ad sets, ads, creatives (new entities start **paused**; activation is a separate step) | +| Catalogs | Catalog and product data, feed troubleshooting | +| Signals | Signal health and dataset quality | +| Experiments | A/B tests and conversion lift studies | +| Activity | Ad account activity logs | +| Research | Meta Ad Library search; Instagram boost-eligible media | + +The hosted server is the source of truth for tool names and schemas. + +## Notes + +- Server URL: `https://mcp.facebook.com/ads`. +- Some ad accounts still return empty tools after a successful OAuth until Meta enables `is_ads_mcp_enabled` for that account (phased rollout). +- Write tools create paused entities; the agent should confirm before `ads_activate_entity`. +- AI agents act with your granted scopes — prefer Read unless Manage is required ([Meta Platform Terms](https://developers.facebook.com/terms) apply). + +## Docs + +- Ads MCP overview: https://developers.facebook.com/documentation/ads-commerce/ads-ai-connectors/ads-mcp-server/ads-mcp-server-overview +- Get started: https://developers.facebook.com/documentation/ads-commerce/ads-ai-connectors/ads-mcp-server/ads-mcp-server-get-started +- Business Help (no-app path): https://www.facebook.com/business/help/1456422242197840 +- Server URL: https://mcp.facebook.com/ads + +## License + +MIT diff --git a/third_party/meta-ads/assets/logo.svg b/third_party/meta-ads/assets/logo.svg new file mode 100644 index 000000000..132726a21 --- /dev/null +++ b/third_party/meta-ads/assets/logo.svg @@ -0,0 +1,4 @@ + + + + diff --git a/third_party/meta-ads/mcp.json b/third_party/meta-ads/mcp.json new file mode 100644 index 000000000..916d9654a --- /dev/null +++ b/third_party/meta-ads/mcp.json @@ -0,0 +1,8 @@ +{ + "mcpServers": { + "meta-ads": { + "type": "http", + "url": "https://mcp.facebook.com/ads" + } + } +}