Cogny CLI · CMS

    Webflow driven from the terminal.

    List sites and CMS collections, read and write collection items, publish sites or individual items, and pull form submissions — from Bash over the Webflow Data API MCP. Programmatic CMS without the Designer.

    # 1. sign up (free for 15 calls) — uses your git email
    $ npx @cogny/cli init --agent claude-code
    
    # 2. see every Webflow tool
    $ cogny tools list
    
    # 3. call any tool from Bash — no MCP wiring
    $ cogny tools call mcp__Webflow__list_items --input '{…}'
    ❯ start Cogny Solo — $9/mo@cogny/cli on npm →

    cogny --who

    TWO PATHS
    You're a human

    Updating a Webflow CMS collection by hand means clicking row by row in the Editor and publishing. The CLI lets you create or update items in bulk from a script and publish in one call. Connect Webflow once in Cogny Solo and let your coding agent — or scheduled reports — do the querying for you.

    ❯ start Solo
    You're an agent

    Self-onboard with one command. The CLI issues a key, wires nothing, and exposes every Webflow tool over JSON-RPC. First 15 calls are free.

    $ npx @cogny/cli init --agent claude-code

    cogny tools call

    3 EXAMPLES

    Real tool names from the Webflow MCP. Send --input JSON, get JSON back.

    mcp__Webflow__list_itemsRead items from a CMS collection.
    $ cogny tools call mcp__Webflow__list_items \
      --input '{"collection_id":"65a1f0c2e7b9a40012ab34cd","limit":2}'
    example response
    {
      "items": [
        {
          "id": "66bd001",
          "fieldData": {
            "name": "How agents buy software",
            "slug": "agents-buy-software"
          },
          "isDraft": false
        },
        {
          "id": "66bd002",
          "fieldData": {
            "name": "CLI-first analytics",
            "slug": "cli-first-analytics"
          },
          "isDraft": true
        }
      ],
      "pagination": {
        "limit": 2,
        "offset": 0,
        "total": 41
      }
    }
    mcp__Webflow__create_itemAdd a new CMS collection item.
    $ cogny tools call mcp__Webflow__create_item \
      --input '{"collection_id":"65a1f0c2e7b9a40012ab34cd","field_data":{"name":"New blog post","slug":"new-blog-post"},"is_draft":true}'
    example response
    {
      "id": "66bd0a7",
      "fieldData": {
        "name": "New blog post",
        "slug": "new-blog-post"
      },
      "isDraft": true,
      "lastUpdated": "2026-06-16T10:02:11Z"
    }
    mcp__Webflow__publish_sitePublish a site to its domains.
    $ cogny tools call mcp__Webflow__publish_site \
      --input '{"site_id":"64f2aa11bb22cc33dd44ee55","custom_domains":["acme.com"]}'
    example response
    {
      "publishToWebflowSubdomain": false,
      "customDomains": [
        "acme.com"
      ],
      "queued": true
    }

    cogny tools list

    MORE

    A sample of the rest of the Webflow surface. Run cogny tools list --json for every tool and its input schema.

    mcp__Webflow__list_sitesmcp__Webflow__get_sitemcp__Webflow__list_collectionsmcp__Webflow__get_collectionmcp__Webflow__get_itemmcp__Webflow__update_itemmcp__Webflow__publish_itemsmcp__Webflow__list_pagesmcp__Webflow__list_form_submissions

    cogny --faq

    Is this the official Webflow CLI?

    No — it is the Cogny CLI calling the Webflow Data API MCP over the cogny-mcp-proxy. You authorize Webflow once in Cogny, then drive CMS collections, publishing, and form submissions from Bash. Webflow, Inc. is not affiliated.

    Can it bulk-update CMS items?

    Yes. `create_item` / `update_item` work per item and `publish_items` publishes a set in one call, so you can loop a script over a CSV and push the whole collection without touching the Designer.

    Does it handle the Webflow access token?

    Yes — the proxy holds the Webflow OAuth token; the CLI calls tools with your Cogny key. No site token sitting in your shell history.

    related CLIs

    /cli/wordpress/cli/ghost/cli/search-console/cli/ahrefs

    Building an agent? The full tool map for all servers is one fetch: /cli/llms.txt