Skip to content
Content
Skill

/cf-connect

Set up a specific MCP connector from the ContentForge registry with step-by-step instructions tailored to its transport — verified endpoint URL for HTTP connectors, env vars plus a ready-to-paste .mcp.json entry for npx connectors, credential acquisition guidance, and post-setup

From plugin
contentforge
2822 skills13 agents9 commands
Install
$ npx -y skills add indranilbanerjee/contentforge --skill cf-connect --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/cf-connect

Context preview

The summary Claude sees to decide when to auto-load this skill.

Set up a specific MCP connector from the ContentForge registry with step-by-step instructions tailored to its transport — verified endpoint URL for HTTP connectors, env vars plus a ready-to-paste .mcp.json entry for npx connectors, credential acquisition guidance, and post-setup

SKILL.md

cf-connect.SKILL.md
name: cf-connect
description: "Set up a specific MCP connector from the ContentForge registry with step-by-step instructions tailored to its transport — verified endpoint URL for HTTP connectors, env vars plus a ready-to-paste .mcp.json entry for npx connectors, credential acquisition guidance, and post-setup verification. Triggers on \"/contentforge:cf-connect\", \"connect WordPress\", \"set up the Notion connector\", \"how do I add Google Sheets\", \"a skill says a connector is missing\". Status always comes from scripts/connector-status.py (never memory) and endpoints from .mcp.json.connectors-reference; fuzzy-matches names like wp or gsheets. Setup guidance only — for services not in the registry it hands off to /contentforge:cf-add-integration, and /contentforge:cf-integrations shows the full status dashboard."
argument-hint: "[connector-name]"
effort: low

/contentforge:cf-connect — Guided Connector Setup

Set up a specific MCP integration for ContentForge with step-by-step instructions tailored to the connector's transport type. Handles HTTP connectors (OAuth-based), npx connectors (API keys, environment variables, `.mcp.json` entry), unknown connector names (fuzzy matching), and post-setup verification.

The ground truth about connectors

ContentForge ships with an **empty `.mcp.json`** (`"mcpServers": {}`). This is deliberate (v3.9.0 Cowork-safety decision): no connector auto-connects when the plugin is installed. **Every connector is opt-in** — the user adds it to `.mcp.json` (or connects it at the platform level in Cowork/Desktop Settings → Integrations).

Never claim a connector is pre-wired or already connected. All status claims must come from running `python scripts/connector-status.py` — never from this file or from memory.

When to Use

Use `/contentforge:cf-connect <name>` when:

  • You want to connect a specific service (e.g., `/contentforge:cf-connect wordpress`)
  • A skill told you a connector is missing and suggested using this command
  • You're setting up a new ContentForge installation and configuring integrations
  • You need the exact environment variables and `.mcp.json` entry for an npx connector
  • You want to verify an existing connector is working correctly

What This Command Does

1. **Look Up Connector** — Find the connector in the registry, handle typos and close matches 2. **Check Current Status** — Determine if already configured or needs setup 3. **Present Setup Instructions** — Tailored to transport type (HTTP vs npx) 4. **Guide Credential Acquisition** — Where to get API keys, which permissions to set 5. **Provide .mcp.json Entry** — Ready-to-paste configuration 6. **Verify After Setup** — Confirm environment variables are set and configuration is valid

Required Inputs

**Required:**

  • **Connector name** — The service to connect (e.g., `notion`, `wordpress`, `google-sheets`, `canva`)
  • Fuzzy matching is supported: `wp` matches `wordpress`, `gsheets` matches `google-sheets`, `ga` matches `google-analytics`

**Optional:**

  • **Environment** — `cowork` or `claude-code` (auto-detected if not specified)

What Happens

Step 1: Look Up Connector (Instant)

Run the setup guide lookup:

python scripts/connector-status.py --action setup-guide --name <connector>

This returns:

  • Connector metadata (name, category, description, transport type)
  • Whether it's already configured in this installation
  • Setup steps specific to the transport type
  • Skills unlocked by this connector
  • For npx: required environment variables and `.mcp.json` entry

**If the connector name is not found**, check common aliases before showing an error:

| Input | Matches To | |-------|-----------| | `wp`, `wordpress` | `wordpress` | | `gsheets`, `sheets`, `google-sheets` | `google-sheets` | | `gdrive`, `drive`, `google-drive` | `google-drive` | | `ga`, `ga4`, `google-analytics` | `google-analytics` | | `gsc`, `search-console` | `google-search-console` | | `gcal`, `calendar` | `google-calendar` | | `x`, `twitter` | `twitter-x` | | `li`, `linkedin` | `linkedin-publishing` | | `ig`, `insta` | `instagram` | | `hs`, `hubspot` | `hubspot-cms` | | `sarvam` | `sarvam-ai` |

If no match is found after alias lookup, run `python scripts/connector-status.py --action list-available` and present the actual list.

Step 2: Check Current Status (Instant)

python scripts/connector-status.py --action check --name <connector>

This returns `connected` or `not_connected`, plus (for npx connectors) which env vars are set vs missing. Render exactly what the script reports.

**If already configured:** confirm to the user, list the skills it enables (from the script JSON), and stop — no action needed.

**If not configured, proceed to Step 3.**

Step 3: Present Setup Instructions

Instructions differ based on transport type. Both types require the user to add an entry to `.mcp.json` (or connect at the platform level) — nothing is pre-wired.

HTTP Connectors (e.g., Notion, Canva, Figma, Webflow, Slack, Gmail, Google Calendar, Ahrefs)

HTTP connectors are the easiest: one `.mcp.json` entry, no API keys for OAuth-based ones, and they work in **both Cowork and Claude Code**.

Setup pattern to walk the user through:

1. **Get the verified endpoint URL.** Use the endpoint from the setup-guide script output, cross-checked against `.mcp.json.connectors-reference` (the plugin's catalog of verified HTTP endpoints). Do not guess endpoint URLs from memory — unverified URLs waste the user's time. 2. **Add the entry to `.mcp.json`** in the plugin root:

   "notion": {
     "type": "http",
     "url": "<verified endpoint from the reference file>"
   }

In Cowork/Claude Desktop, the platform-level integration (Settings → Integrations) may be simpler — mention it when available. 3. **Restart the session** so the new entry is picked up. 4. **Authorize on first use.** The first time a skill accesses the connector, the platform shows an OAuth prompt. Sign in and gr

Read more
Ships withcontentforge

🌐 Read this in: English · हिन्दी · 中文 · 日本語 · 한국어 · Español · Português · العربية · اردو · தமிழ் · বাংলা · Русский You need to ship 30 articles this quarter that sound human, cite real sources, link into your funnel, and survive an editor who checks.

Get the whole plugin

Other skills on contentforge.