connect · git:20261028.f6de210 · 2026-10-28 · sha256 7adf495f83384419

connect git:20261028.f6de210A

Immutable. This exact content never changes and is served at /api/v1/blob/7adf495f83384419.

---
name: connect
description: "Connect a known MCP integration: check the registry and status, return exact setup steps. \"connect Google Ads\""
argument-hint: "[connector-name]"
---

# /digital-marketing-pro:connect

> **Script location.** If your host does not set `${CLAUDE_PLUGIN_ROOT}`, the scripts are in this plugin's `scripts/` folder, next to `skills/`. Run them with Python 3.10 or newer: `python`, or `python3` where `python` is not found (macOS, many Linux systems).

## Purpose

Guide users through connecting a specific MCP integration to the Digital Marketing Pro plugin. Provides platform-specific setup instructions, credential requirements, configuration steps, and verification. This is the user-friendly entry point for adding integrations — it handles the common cases (known connectors with established setup paths) while `/digital-marketing-pro:add-integration` handles custom or unknown MCP servers.

## Input Required

The user must provide (or will be prompted for):

- **Connector name**: The service to connect — e.g., "google-ads", "salesforce", "mailchimp", "twilio", "deepl". If the user provides a partial or informal name (e.g., "google analytics", "fb ads", "linkedin"), match it to the closest connector in the registry
- **Environment** (optional): Whether they're using Claude Code (supports HTTP + npx) or Cowork (HTTP only). Defaults to auto-detect based on available context. If the requested connector is npx-only and the user is on Cowork, explain the limitation and suggest HTTP alternatives in the same category

## Process

1. **Look up connector**: Execute `python "${CLAUDE_PLUGIN_ROOT}/scripts/connector-status.py" --action setup-guide --name <connector>` to get the detailed setup guide for the requested connector. If the name doesn't match exactly, search the registry for close matches and suggest the correct name.

2. **Check current status**: Execute `python "${CLAUDE_PLUGIN_ROOT}/scripts/connector-status.py" --action check --name <connector>` to determine if the connector is already configured. If already connected, report that and show which skills it powers — ask if the user wants to verify connectivity or reconfigure.

3. **Present setup instructions based on transport type**:

   **For HTTP connectors** (the registry-backed ones: Slack, Canva, Figma, HubSpot, Ahrefs, Similarweb, Klaviyo, Amplitude, Google Calendar, Gmail, and the official ad-platform servers `meta-ads`, `google-ads-mcp`, `amazon-ads-mcp`):
   - **Nothing is pre-connected.** No `.mcp.json` ships (it is gitignored), so a fresh install has zero auto-connecting MCP servers — this is deliberate (it keeps Cowork and multi-tenant installs safe). These HTTP connectors are an **opt-in catalog**, documented in `.mcp.json.connectors-reference`.
   - To enable one, the user copies its block from `.mcp.json.connectors-reference` into their own `.mcp.json` (or adds it via `/digital-marketing-pro:add-integration`), then restarts the client. HTTP connectors need no API key in the file — once the server is added, Claude prompts for OAuth on first use.
   - Example: "Slack isn't connected yet. Copy the Slack block from `.mcp.json.connectors-reference` into your `.mcp.json` (or run `/digital-marketing-pro:add-integration slack`), restart, then run `/digital-marketing-pro:send-notification` — you'll be prompted to authorize Slack via OAuth."
   - Notion, Stripe, Asana, and Webflow are **catalog-only** HTTP servers: configure them directly from `.mcp.json.connectors-reference` the same way, but they are not in the connector registry, so `/digital-marketing-pro:doctor` and `connector-status.py` will not report on them.
   - List the skills this connector would enable once added

   **Official ad-platform and CRM servers (checked 2026-10-04; see the CONNECTORS.md section "Official ad-platform and CRM MCP servers")**: the setup guide returns an `access` field and a `setup_note`. Read both to the user:
   - **`meta-ads`** (`https://mcp.facebook.com/ads`, open beta): read + write, with a business-authenticated Meta login.
   - **`google-ads-mcp`**: read-only. It runs locally via `pipx` (Claude Code only), or the user self-hosts it over Streamable HTTP, so the URL has a `<...>` placeholder.
   - **`amazon-ads-mcp`**: partners with active Amazon Ads API credentials only. The endpoint comes from their API onboarding.
   - **`hubspot`** (`https://mcp.hubspot.com`, GA): OAuth 2.1 + PKCE with the user's connector app credentials.

   For every read-write server, tell the user plainly:
   - writes happen only through `/digital-marketing-pro:launch-ad-campaign`'s typed approval gate;
   - new ad objects are created PAUSED;
   - DMP never deletes through these servers.

   Never add any of them to the shipped `.mcp.json`; the user copies the entry into their own config.
   - If the user asks for Asana, Webflow or Make.com, use the current Streamable HTTP URLs in the catalog. The old `/sse` URLs use the HTTP+SSE transport that MCP spec 2026-07-28 deprecates; Asana's V1 `/sse` server was shut down on 11 May 2026. Replicate's catalog entry is flagged because its vendor page still lists only `/sse`.

   **For connectors without a hosted server** (Google Ads, Meta, Salesforce, Twilio, etc.):
   - When the setup guide returns `transport: unavailable` with the "no vendor-verified connector" note, read the note to the user and show **no** `npx` command and **no** environment block. Point them to the vendor's own docs, the vendor's hosted HTTP server if the catalog has one, or an aggregator entry for Cowork. A package name the vendor does not publish could be registered by anyone, who would then receive the keys.
   - Only when the guide returns `transport: npx` (a vendor-published package, pinned to an exact version):
   - List the specific environment variables needed with clear descriptions
   - Provide platform-specific instructions for obtaining credentials:
     - Where to go in the platform's dashboard to create API keys
     - What permissions/scopes are needed
     - Any prerequisites (developer accounts, app creation, etc.)
   - Show the exact `.mcp.json` entry to add, copied from the setup guide with its `@version` pin intact
   - Offer two setup paths:
     1. **Quick**: "Set the environment variables and run `/digital-marketing-pro:add-integration <name>` to configure automatically"
     2. **Manual**: Show the JSON block to add to `.mcp.json` directly
   - Note that npx connectors work in Claude Code only, not Cowork

4. **Handle unknown connectors**: If the connector name isn't in the registry:
   - Search for close matches and suggest them
   - If no match found, explain that it's a custom integration and guide them to `/digital-marketing-pro:add-integration`, which accepts only the vendor's own server (hosted, or a vendor-published npm package pinned to an exact version) or a custom server they build
   - List the categories of connectors available so they can explore alternatives

5. **Verify after setup** (for npx connectors): After the user confirms they've set up credentials, offer to verify connectivity:
   - Check that all required environment variables are set and non-empty
   - Prove it with one read: `python "${CLAUDE_PLUGIN_ROOT}/scripts/connector-status.py" --action probe --name <connector>`. It makes a single read-only GET with the key (Slack auth.test, one HubSpot contact, the Klaviyo account, the SendGrid key's scopes, the Brevo account, Customer.io campaigns, Mailchimp ping, Ahrefs usage limits), never writes, and returns only the HTTP status and a count. Ask the user before running it: it sends their key to the vendor.
   - A connector that runs through the host's MCP connection or OAuth (Google Ads, Meta, LinkedIn, TikTok and the rest) returns `not_probeable`: say so, and ask the user to run one read in the MCP tool, instead of calling it connected
   - Report success or diagnose failure with specific guidance

## Output

A connector setup guide containing:

- **Connector info**: Name, category, description, transport type (HTTP/npx), and current status (connected/not connected)
- **Skills unlocked**: List of all skills this connector enables, with brief descriptions of what each skill does
- **Setup instructions**: Step-by-step guide appropriate to the transport type — OAuth flow for HTTP, credential setup for npx
- **Credential requirements** (npx only): Exact environment variable names, where to obtain them, and required permissions
- **Configuration entry** (npx only): The exact JSON block to add to `.mcp.json`, ready to copy
- **Verification steps**: How to confirm the connector is working after setup
- **Alternative connectors**: Other connectors in the same category that the user might consider (e.g., "If you prefer Salesforce over HubSpot for CRM, run `/digital-marketing-pro:connect salesforce`")
- **Next steps**: "Run `/digital-marketing-pro:integrations` to see your updated integration dashboard" and relevant skills to try

## Agents Used

- No specialized agent needed — this skill uses the `connector-status.py` script directly and provides platform-specific guidance based on the connector registry