MCPInstall

whatsapp-flows

Manage WhatsApp Flows via Kapso Platform API. List, create, update, publish flows, manage versions, attach data endpoints, and check encryption. Use when working with WhatsApp Flows, flow JSON, or data endpoints.

Installs
92
Last 24h
—
Trending rank
—
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/gokapso/agent-skills --skill whatsapp-flows
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads whatsapp-flows automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

WhatsApp Flow Management

When to use

Use this skill to manage WhatsApp Flows end-to-end: discover flows, edit flow JSON via versions, publish/test, attach data endpoints, and inspect responses/logs.

Setup

Env vars:

  • KAPSO_API_BASE_URL (host only, no /platform/v1)
  • KAPSO_API_KEY
  • META_GRAPH_VERSION (optional, default v24.0)

Run scripts with Node or Bun:

node scripts/list-flows.js

How to

Create and publish a flow

  1. Create flow: node scripts/create-flow.js --phone-number-id <id> --name <name>
  2. Read references/whatsapp-flows-spec.md for Flow JSON rules
  3. Update JSON: node scripts/update-flow-json.js --flow-id <id> --json-file <path>
  4. Publish: node scripts/publish-flow.js --flow-id <id>
  5. Test: node scripts/send-test-flow.js --phone-number-id <id> --flow-id <id> --to <phone>

Attach a data endpoint (dynamic flows)

  1. Set up encryption: node scripts/setup-encryption.js --flow-id <id>
  2. Create endpoint: node scripts/set-data-endpoint.js --flow-id <id> --code-file <path>
  3. Deploy: node scripts/deploy-data-endpoint.js --flow-id <id>
  4. Register: node scripts/register-data-endpoint.js --flow-id <id>

Debug flows

  • List responses: node scripts/list-flow-responses.js --flow-id <id>
  • Function logs: node scripts/list-function-logs.js --flow-id <id>
  • Function invocations: node scripts/list-function-invocations.js --flow-id <id>

Flow JSON rules

Static flows (no data endpoint):

  • Use version: "7.3"
  • routing_model and data_api_version are optional
  • See assets/sample-flow.json

Dynamic flows (with data endpoint):

  • Use version: "7.3" with data_api_version: "3.0"
  • routing_model is required - defines valid screen transitions
  • See assets/dynamic-flow.json

Read the full spec in references/whatsapp-flows-spec.md before editing.

Data endpoint rules

Handler signature:

async function handler(request, env) {
  const body = await request.json();
  // body.data_exchange.action: INIT | data_exchange | BACK
  // body.data_exchange.screen: current screen id
  // body.data_exchange.data: user inputs
  return Response.json({
    version: "3.0",
    screen: "NEXT_SCREEN_ID",
    data: { ... }
  });
}
  • Do not use export or module.exports
  • Completion uses screen: "SUCCESS" with extension_message_response.params
  • Do not include endpoint_uri or data_channel_uri (Kapso injects these)

Scripts

Platform API

ScriptPurpose
list-flows.jsList all flows
create-flow.jsCreate a new flow
get-flow.jsGet flow details
read-flow-json.jsRead flow JSON
update-flow-json.jsUpdate flow JSON (creates new version)
publish-flow.jsPublish a flow
get-data-endpoint.jsGet data endpoint config
set-data-endpoint.jsCreate/update data endpoint code
deploy-data-endpoint.jsDeploy data endpoint
register-data-endpoint.jsRegister data endpoint with Meta
get-encryption-status.jsCheck encryption status
setup-encryption.jsSet up flow encryption

Meta proxy

ScriptPurpose
send-test-flow.jsSend a test flow message
delete-flow.jsDelete a flow

Logs and responses

ScriptPurpose
list-flow-responses.jsList stored flow responses
list-function-logs.jsList function logs
list-function-invocations.jsList function invocations

Troubleshooting

  • Preview shows "flow_token is missing": Flow is dynamic without a data endpoint. Attach one and refresh.
  • Encryption setup errors: Enable encryption in Settings for the phone number/WABA.
  • OAuthException 139000 (Integrity): WABA must be verified in Meta security center.

References

  • references/whatsapp-flows-spec.md - Flow JSON spec (read before editing)
  • assets/sample-flow.json - Static flow example (no endpoint)
  • assets/dynamic-flow.json - Dynamic flow example (with endpoint)

Related skills

  • whatsapp-messaging - WhatsApp messaging and templates
  • kapso-automation - Workflow automation
  • kapso-api - Platform API and customers

FAQ

What does the whatsapp-flows skill do?

Manage WhatsApp Flows via Kapso Platform API. List, create, update, publish flows, manage versions, attach data endpoints, and check encryption. Use when working with WhatsApp Flows, flow JSON, or data endpoints.

How do I install whatsapp-flows?

Run npx skills add https://github.com/gokapso/agent-skills --skill whatsapp-flows in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/whatsapp-flows/ (personal) or .claude/skills/whatsapp-flows/ (project).

Which AI agents can use whatsapp-flows?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is whatsapp-flows safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains whatsapp-flows?

It is published by gokapso in gokapso/agent-skills. It has 92 recorded installs.

More from gokapso/agent-skills

View all →

integrate-whatsapp

gokapso/agent-skills

Connect WhatsApp to your product with Kapso: onboard customers with setup links, detect connections, receive events via webhooks, and send messages/templates/media. Also manage WhatsApp Flows (create/update/publish, data endpoints, encryption). Use when integrating WhatsApp end-to-end.

AI & Agents4.7K installs

automate-whatsapp

gokapso/agent-skills

Build and debug Kapso WhatsApp workflows, triggers, functions, and executions.

observe-whatsapp

gokapso/agent-skills

Observe and troubleshoot WhatsApp in Kapso: search Logs across API, Meta webhook, workflow, and webhook-delivery events; debug message delivery; inspect webhook retries; triage API errors; and run health checks. Use when investigating production issues, message failures, workflow behavior, or webhook delivery problems.

Backend & APIs3.7K installs

integrate-whatsapp-calling

gokapso/agent-skills

Open the skill to read its SKILL.md instructions.

AI & Agents450 installs

kapso-api

gokapso/agent-skills

Kapso Platform API for customer onboarding, setup links, phone number provisioning, and connection detection. Use when working with multi-tenant WhatsApp integrations, embedded signup, or customer management.

Backend & APIs94 installs

whatsapp-messaging

gokapso/agent-skills

Open the skill to read its SKILL.md instructions.

AI & Agents91 installs

Popular backend & apis skills

View category →

find-skills

vercel-labs/skills

Helps users discover and install agent skills when they ask questions like "how do I do X", "find a skill for X", "is there a skill that can...", or express interest in extending capabilities. This skill should be used when the user is looking for functionality that might exist as an installable skill.

OfficialBackend & APIs4.1M installs

entra-app-registration

microsoft/azure-skills

Guides Microsoft Entra ID app registration, OAuth 2.0 authentication, and MSAL integration. USE FOR: create app registration, register Azure AD app, configure OAuth, set up authentication, add API permissions, generate service principal, MSAL example, console app auth, Entra ID setup, Azure AD authentication. DO NOT USE FOR: Key Vault secrets (use azure-keyvault-expiration-audit), general Azure resource security guidance.

OfficialBackend & APIs566.7K installs

This skill should be used when the user wants to "write agent code", "build an agent with ADK", "add a tool", "create a callback", "define an agent", "use state management" — in a project that needs ADK (Agent Development Kit) API patterns and code examples. It provides a quick reference for agent types, tool definitions, orchestration patterns, callbacks, state management, the graph Workflow API, and reference recipes to study. Do NOT use for scaffolding (use google-agents-cli-scaffold) or deployment (use google-agents-cli-deploy).

Backend & APIs514.8K installs

embedded-captions

heygen-com/hyperframes

Add captions or subtitles to an existing single-subject talking-head video without editing the footage. Use for plain verbatim captions, cinematic captions embedded behind the subject, VFX captions, “炸/特效/酷炫字幕,” or a named identity from the 35-style catalog. Route by visual identity, not by backend engine. The quiet anchor rail is the default; embed every word only when the user explicitly wants a fully cinematic treatment. The workflow runs locally end to end, including transcription and subject matting; split multi-shot footage before applying it.

Backend & APIs453.3K installs

entra-agent-id

microsoft/azure-skills

Provision Microsoft Entra Agent Identity Blueprints, BlueprintPrincipals, and per-instance Agent Identities via Microsoft Graph, and configure OAuth 2.0 token exchange (fmipath, OBO, cross-tenant) including the Microsoft Entra SDK for AgentID sidecar. USE FOR: Agent Identity Blueprint, BlueprintPrincipal, agent OAuth, fmipath token exchange, agent OBO, Workload Identity Federation for agents, polyglot agent auth, Microsoft.Identity.Web.AgentIdentities. DO NOT USE FOR: standard Entra app registration (use entra-app-registration), Microsoft Foundry agent authoring (use microsoft-foundry).

OfficialBackend & APIs336.6K installs

neon

neondatabase/agent-skills

Overview of Neon, a complete set of cloud backend primitives around Lakebase Postgres: Auth, Object Storage, Functions, the AI Gateway, and Realtime. Start here to choose Neon for undecided login, files, APIs, and LLM calls, set up the CLI or MCP server, and follow the branch-first workflow. Use when building an app or backend on Neon, or when "Neon" or "Lakebase Postgres" is mentioned. Child skill neon-postgres wins for an existing DATABASEURL, SQL, schema, inspect, or search. Child skill neon-auth wins for login, users, sessions, identity routing, and Managed Better Auth setup. Child skill neon-realtime wins for live queries in reactive apps and agents. Also use for object storage, S3, buckets, serverless functions, function triggers, cron, AI gateway, LLM calls, realtime, logs, Loki, Grafana, observability, postgres, database, backend, Claimable Neon, neon.new, or a no-signup database.

Backend & APIs237.1K installs