{
  "markdown": "# Sent Agent Skills for SMS, WhatsApp, RCS, and MCP\n\nThe official Sent agent plugin combines focused [Agent Skills](https://agentskills.io/) with live [Model Context Protocol (MCP)](https://modelcontextprotocol.io/) tools. Use it to send and track business messages, manage contacts and templates, query analytics and account readiness, diagnose delivery failures, and guide SMS 10DLC, WhatsApp Business, RCS/RBM, and Sender Profile implementations.\n\nThis repository is both:\n\n- a skills collection that can be discovered and installed with the `skills` CLI; and\n- a portable [Agent Plugins 1.0.0](https://agent-plugins.org/) package with generated Codex and Claude Code adapters.\n\nEach skill's canonical documentation lives in its `SKILL.md`. The collection READMEs provide the searchable task index; skill-specific `references/`, `scripts/`, and `agents/openai.yaml` files provide deeper guidance only where needed.\n\n## Install\n\n### Install skills with the Skills CLI\n\nList the available skills without installing them:\n\n```bash\nnpx skills add https://github.com/sentdm/sent-plugin --list\n```\n\nInstall the `sent` dispatcher when you want the agent to route broad Sent requests:\n\n```bash\nnpx skills add https://github.com/sentdm/sent-plugin --skill sent\n```\n\nInstall one or more focused skills when the task is already known:\n\n```bash\nnpx skills add https://github.com/sentdm/sent-plugin \\\n  --skill sent-messaging \\\n  --skill messaging-performance-analyzer\n```\n\nInstall all skills:\n\n```bash\nnpx skills add https://github.com/sentdm/sent-plugin --skill '*'\n```\n\nThe Skills CLI installs agent instructions. Live account reads and mutations additionally require the Sent MCP server through a compatible, authorized client.\n\n### Install the Claude Code plugin\n\n```text\n/plugin marketplace add sentdm/sent-plugin\n/plugin install sent@sent\n```\n\nFor local plugin development:\n\n```bash\nclaude --plugin-dir ./claude-plugins/sent\n```\n\n### Install as a portable agent plugin\n\nThe repository root is directly discoverable as an Agent Plugins 1.0.0 package. [`packages/sent`](packages/sent) is the canonical portable artifact; [`plugins/sent`](plugins/sent) and [`claude-plugins/sent`](claude-plugins/sent) are generated host adapters.\n\n## Find the right skill\n\n| Skill | Use for | Example searches and requests | Path |\n|---|---|---|---|\n| `sent` | Route broad, ambiguous, or multi-step Sent work | “What can Sent do?”, “set up business messaging”, “which Sent skill should I use?” | [`skills/sent/SKILL.md`](skills/sent/SKILL.md) |\n| `sent-messaging` | Send SMS, WhatsApp, or RCS messages; inspect one message and its activity timeline; handle ambiguous send outcomes | “send this approved template”, “did message `msg_123` deliver?”, “the send timed out” | [`skills/sent-messaging/SKILL.md`](skills/sent-messaging/SKILL.md) |\n| `sent-contacts` | List, find, inspect, bulk-create, summarize, or delete Sent contacts | “import these contacts”, “find this contact”, “show messaging history”, “delete contact” | [`skills/sent-contacts/SKILL.md`](skills/sent-contacts/SKILL.md) |\n| `sent-templates` | List, find by name or ID, inspect, or delete existing templates | “find an approved template”, “get template status”, “delete this template” | [`skills/sent-templates/SKILL.md`](skills/sent-templates/SKILL.md) |\n| `sent-analytics` | Query message volume, aggregate deliverability, contact metrics, or phone-number capabilities | “delivery rate last week”, “messages sent this month”, “look up this number” | [`skills/sent-analytics/SKILL.md`](skills/sent-analytics/SKILL.md) |\n| `sent-account-readiness` | Check the authorized account, balance, onboarding/KYC status, organization, and Sender Profile scope | “am I ready to send?”, “check balance”, “what is blocking onboarding?” | [`skills/sent-account-readiness/SKILL.md`](skills/sent-account-readiness/SKILL.md) |\n| `messaging-performance-analyzer` | Diagnose MDR/message-activity funnels, delivery failures, error-code clusters, read-rate gaps, and channel fallback | “why did SMS delivery drop?”, “analyze this MDR”, “why are RCS messages falling back?” | [`skills/messaging-performance-analyzer/SKILL.md`](skills/messaging-performance-analyzer/SKILL.md) |\n| `sms-10dlc-registration` | Prepare US A2P 10DLC brand, campaign, TCR, opt-in, sample-message, and rejection-remediation evidence | “register a 10DLC campaign”, “TCR brand vetting”, “carrier filtering”, “opt-in proof” | [`skills/sms-10dlc-registration/SKILL.md`](skills/sms-10dlc-registration/SKILL.md) |\n| `waba-embedded-signup` | Connect a WhatsApp Business Account, map WABA and phone-number identifiers, and verify webhook/profile readiness | “connect WhatsApp”, “Embedded Signup failed”, “map this WABA to a Sender Profile” | [`skills/waba-embedded-signup/SKILL.md`](skills/waba-embedded-signup/SKILL.md) |\n| `waba-template-author` | Write, classify, lint, and revise WhatsApp utility, marketing, and authentication templates | “utility or marketing?”, “fix Meta rejection”, “draft an OTP template” | [`skills/waba-template-author/SKILL.md`](skills/waba-template-author/SKILL.md) |\n| `rcs-agent-onboarding` | Prepare an RCS Business Messaging agent, carrier-approval evidence, capabilities, SMS fallback, and launch checks | “onboard an RBM agent”, “RCS carrier approval”, “design SMS fallback” | [`skills/rcs-agent-onboarding/SKILL.md`](skills/rcs-agent-onboarding/SKILL.md) |\n| `sender-profile-architect` | Design multi-tenant and multi-brand Sender Profile boundaries, webhook routing, lifecycle, and channel ownership | “model 50 messaging tenants”, “profile per brand?”, “route webhooks by tenant” | [`skills/sender-profile-architect/SKILL.md`](skills/sender-profile-architect/SKILL.md) |\n| `template-builder-ui` | Design or audit a tenant-facing SMS, WhatsApp, and RCS template editor and submission workflow | “build a WhatsApp template editor”, “design template validation”, “handle approval states” | [`skills/template-builder-ui/SKILL.md`](skills/template-builder-ui/SKILL.md) |\n| `sent-integration-starter` | Stand up and harden a Sent v3 integration: SDK choice, idempotent sends, retry policy, error families, launch checklist | “add Sent to our app”, “what retry policy?”, “are we production ready?” | [`skills/sent-integration-starter/SKILL.md`](skills/sent-integration-starter/SKILL.md) |\n| `sent-webhook-engineer` | Build and debug webhook receivers: signature verification, replay window, dedupe, retries, auto-disable recovery | “401 on every webhook”, “verify the signature header”, “our endpoint went inactive” | [`skills/sent-webhook-engineer/SKILL.md`](skills/sent-webhook-engineer/SKILL.md) |\n| `sent-routing-strategist` | Choose channels and diagnose routes: broadcast versus automatic routing, reroute behavior, and delivery outcomes | “RCS then SMS fallback?”, “why is channel auto?”, “recipients got two messages” | [`skills/sent-routing-strategist/SKILL.md`](skills/sent-routing-strategist/SKILL.md) |\n| `sent-two-way-messaging` | Design inbound flows: keyword consent, opt-out state, the WhatsApp 24-hour window, RCS STOP chips, conversation history | “do I handle STOP myself?”, “auto-reply stopped working”, “page conversation history” | [`skills/sent-two-way-messaging/SKILL.md`](skills/sent-two-way-messaging/SKILL.md) |\n| `sent-profile-provisioning` | Execute the Sender Profile lifecycle: create, inheritance, completion callback, campaigns, users and roles | “create a profile via the API”, “completion callback never arrived”, “invite a developer” | [`skills/sent-profile-provisioning/SKILL.md`](skills/sent-profile-provisioning/SKILL.md) |\n| `migrate-to-sent` | Migrate from Twilio, Sinch, Infobip, Vonage, or Bird: concept mapping, dual-run, staged cutover, rollback | “moving off Sinch”, “Vonage failover equivalent”, “dual-run comparison metrics” | [`skills/migrate-to-sent/SKILL.md`](skills/migrate-to-sent/SKILL.md) |\n\nUse `sent-analytics` for aggregate dashboard totals and trends. Use `messaging-performance-analyzer` for message-level evidence, funnel drop-off, and root-cause analysis. Use `sent-templates` for existing records, `waba-template-author` for WhatsApp content and policy decisions, and `template-builder-ui` for product UX.\n\nFor engineering work, use `sent-integration-starter` to stand up and harden a new integration, `sent-webhook-engineer` for receiver construction and delivery debugging, `sent-routing-strategist` for channel selection and route diagnosis, `sent-two-way-messaging` for inbound and consent flows, `sent-profile-provisioning` to execute the profile lifecycle that `sender-profile-architect` designs, and `migrate-to-sent` when replacing an incumbent provider.\n\n## Live MCP capabilities\n\nThe plugin declares the Streamable HTTP endpoint `https://mcp.sent.dm/mcp` and exposes these operations through the authorized connection:\n\n| Area | Tools |\n|---|---|\n| Messaging | `messages.send`, `messages.get`, `messages.activities.list` |\n| Contacts | `contacts.list`, `contacts.get`, `contacts.create_many`, `contacts.delete`, `contacts.message_summary` |\n| Templates | `templates.list`, `templates.get`, `templates.get_by_name`, `templates.delete` |\n| Lookup and analytics | `numbers.lookup`, `dashboard.messages_sent`, `dashboard.deliverability`, `dashboard.contacts` |\n| Account | `account.get`, `balance.get`, `onboarding.status` |\n\nThe MCP client performs OAuth 2.1 authorization with PKCE and Dynamic Client Registration. The user selects an organization and Sender Profile during authorization; the client stores the resulting grant. Reauthorize to change scope and revoke access from **Sent Dashboard → Settings → MCP Connections**. Do not paste API keys or tokens into prompts.\n\n## Mutation and data-safety contract\n\n- Preview the exact organization, Sender Profile, target, and payload before every send, contact creation, or deletion.\n- Require explicit confirmation immediately before the mutation. Any changed payload or retry needs a fresh preview and confirmation.\n- Never retry an ambiguous send automatically; inspect the message and activity history first when possible.\n- Treat `accepted` or `queued` as processing states, not proof of delivery.\n- Mask phone numbers where practical and avoid repeating message bodies, contact data, KYC data, or billing details.\n- Treat number lookup as a capability signal, never as evidence of consent.\n\n## Developer workflow\n\nThe canonical source is [`packages/sent`](packages/sent). Root discovery files and host adapters are generated; do not edit generated copies directly.\n\n```text\npackages/sent/                # canonical portable package\n├── plugin.json               # searchable package metadata\n├── mcp.json                  # remote MCP declaration\n├── README.md                 # portable-package documentation\n└── skills/<name>/\n    ├── SKILL.md              # trigger metadata and workflow\n    ├── agents/openai.yaml    # optional UI metadata\n    ├── references/           # optional deep reference docs\n    └── scripts/              # optional deterministic helpers\n\nevals/                        # positive, negative, and overlap routing cases\nadapter-sources/              # shared and host-specific adapter sources\nplugins/sent/                 # generated Codex adapter\nclaude-plugins/sent/          # generated Claude Code adapter\nscripts/                      # generation, validation, and fixture tests\n```\n\nWhen adding or changing a skill, update the canonical `SKILL.md`, keep its frontmatter description rich in user intent and domain terms, add routing evaluations, update the `sent` dispatcher and README catalogs when scope changes, then regenerate and validate:\n\n```bash\npython3 -m pip install -r requirements-dev.txt\npython3 scripts/generate_adapters.py\npython3 scripts/validate.py\npython3 scripts/test_validation_gates.py\npython3 scripts/test_fixtures.py\nclaude plugin validate . --strict\nclaude plugin validate ./claude-plugins/sent --strict\n```\n\nSee [`CONTRIBUTING.md`](CONTRIBUTING.md) for the public-data policy, [`docs/PUBLIC_RELEASE.md`](docs/PUBLIC_RELEASE.md) for the release checklist, and [`SECURITY.md`](SECURITY.md) for security reporting.\n\n## Developer resources\n\n- [Sent MCP server documentation](https://docs.sent.dm/start/llm-docs/mcp-server)\n- [Sent machine-readable documentation index](https://docs.sent.dm/llms.txt)\n- [Sent API documentation](https://docs.sent.dm/reference/api)\n- [Agent Skills specification](https://agentskills.io/specification)\n- [Agent Plugins specification](https://agent-plugins.org/specification)\n",
  "bytes": 12508,
  "sha": "975c13b01faf0489054f69289165e4c40f0e6db967765eb7385c0220069303d5",
  "repo_slug": "sentdm/sent-plugin",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/skl_sentdm_sent_plugin_sent_two_way_messagin_7b163447/readme"
}