Cogny CLI · Email & CRO

    Symplify scriptable from Bash.

    List custom properties, journeys, snippets and webhooks, look up contacts and their subscription status, and kick off async statistics exports — from the shell over the Symplify MCP. No REST client to wire up.

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

    cogny --who

    TWO PATHS
    You're a human

    Today you open Symplify to check a contact’s subscription status or read per-message stats screen by screen. With the CLI you look up a contact and start a statistics export as JSON, then poll the batch from a script. Connect Symplify 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 Symplify 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 Symplify MCP. Send --input JSON, get JSON back.

    mcp__Symplify__start_statistics_exportStart an async per-message statistics export; returns a batchId.
    $ cogny tools call mcp__Symplify__start_statistics_export \
      --input '{"export_type":"OPENS","period":"LAST_WEEK"}'
    example response
    {
      "batchId": "b-7f3a91",
      "status": "PENDING"
    }
    mcp__Symplify__get_contactFetch a contact by list id and external original id.
    $ cogny tools call mcp__Symplify__get_contact \
      --input '{"list_id":4021,"original_id":"crm-88142"}'
    example response
    {
      "originalId": "crm-88142",
      "email": "ada@example.com",
      "properties": {
        "firstName": "Ada",
        "country": "SE"
      },
      "subscribed": true
    }
    mcp__Symplify__list_journeysList all journeys (triggered/transactional flows).
    $ cogny tools call mcp__Symplify__list_journeys \
      --input '{}'
    example response
    {
      "journeys": [
        {
          "id": 311,
          "name": "Welcome flow",
          "status": "ACTIVE"
        },
        {
          "id": 327,
          "name": "Abandoned cart",
          "status": "ACTIVE"
        }
      ]
    }

    cogny tools list

    MORE

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

    mcp__Symplify__list_propertiesmcp__Symplify__get_propertymcp__Symplify__get_contact_subscription_statusmcp__Symplify__list_contact_messagesmcp__Symplify__list_snippetsmcp__Symplify__list_webhooksmcp__Symplify__get_batch_statusmcp__Symplify__get_batch_result

    cogny --faq

    Is this an official Symplify CLI?

    No — it is the Cogny CLI calling the Symplify MCP over the cogny-mcp-proxy. You connect Symplify once in Cogny, and then every tool is callable from Bash with your Cogny key.

    How do statistics exports work?

    They are async. `start_statistics_export` returns a batchId; poll it with `get_batch_status` until status is FINISHED, then fetch rows with `get_batch_result`. The window is capped at two weeks — for a full month, use the Symplify → BigQuery sync.

    Why is there no list-all-contacts tool?

    The Symplify API has no list-all-contacts endpoint, so the MCP fetches contacts per list id + originalId via `get_contact`. For bulk contact analysis, run statistics exports or use the BigQuery sync.

    related CLIs

    /cli/rule/cli/get-a-newsletter/cli/mailerlite/cli/klaviyo

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