Skip to content
Development
Skill

/review-and-referral-ask

Picks clients who appear happy from CrewHu or SmileBack survey results (or another discovered survey tool) together with ticket SLA and resolution data, then drafts a review or referral request for the MSP to send. Drafts only; never sends email, never creates outreach tickets,

From plugin
msp-claude-plugins
55200 skills165 agents200 commands4 MCP

Claude Code

$ npx -y skills add wyre-ai/msp-claude-plugins --skill review-and-referral-ask --agent claude-code

SKILL.md

review-and-referral-ask.SKILL.md
name: "Review and Referral Ask"
description: >
  Picks clients who appear happy from CrewHu or SmileBack survey results
  (or another discovered survey tool) together with ticket SLA and resolution data,
  then drafts a review or referral request for the MSP to send. Drafts
  only; never sends email, never creates outreach tickets, and never
  posts a review.
when_to_use: >-
  When an MSP wants to ask a happy client for a review or a referral, and
  needs a draft grounded in survey scores and recent ticket outcomes
  rather than a guess. Use when: review request, referral ask, ask for a
  testimonial, who should we ask for a review, CrewHu promoters, draft a
  referral email, happy-client outreach.

Review and Referral Ask

Overview

The right time to ask for a review or a referral is after real evidence that the client is happy, not after a quiet week on the board. This skill finds candidate clients from CrewHu (preferred), SmileBack, or another survey tool discovered at run time, checks recent ticket SLA and resolution data, and drafts a short request for the MSP to send themselves.

This skill drafts only. It never sends email, never creates or updates a ticket, never posts a review, and never messages a client.

Anti-triggers

  • **Churn or at-risk client reviews.** A low score, a detractor survey, or

a recent SLA problem is a relationship issue, not a prompt to ask for a public review. Do not draft an ask for those clients.

  • **Sending the message.** Stop at the draft. Do not use any send, create,

or post tool, even if a connected mailbox or PSA tool is available.

Connected Systems

| System | Role | Required? | |--------|------|-----------| | CrewHu, SmileBack, or another discovered survey tool | Promoters, scores, and survey comments that identify happy clients | Yes (at least one survey source, or the skill stops) | | PSA ticket tools | Recent resolution and SLA fields, used to confirm the client is in a good window to ask | Optional, but recommended |

If neither CrewHu nor SmileBack is connected and discovery finds no other survey list/get/search tool, stop and say a survey source is required.

Workflow

Step 1: Discover what is actually connected

Call `conduit__search_tools` first. Use the exact names discovery returns. Gateway names often look like `<vendor-slug>__<tool_name>`. Only call read-only list, get, or search tools from the allow-list below.

Never call create, update, delete, send, post, or raw/execute tools. Never call password or vault tools, even if discovery returns them. Never send email or create an outreach ticket.

Allow-listed read tools

**CrewHu (preferred):** `crewhu_surveys_list`, `crewhu_surveys_search`, `crewhu_surveys_get`, `crewhu_surveys_promoters`, `crewhu_surveys_detractors`. You may use `crewhu_users_list`, `crewhu_users_get`, and `crewhu_users_search` only to resolve a survey respondent to a client or contact already in the survey result, not to browse staff or run a prize workflow. Do not call `crewhu_badges_update_contest` or other write tools.

**SmileBack:** `smileback_nps_responses_list`, `smileback_nps_responses_get`, `smileback_reviews_list`, `smileback_reviews_list_recent`, `smileback_reviews_get`, `smileback_csat_companies_list`.

**PSA tickets and companies, for SLA and resolution context:**

  • Autotask: `autotask_search_companies`, `autotask_search_tickets`,

`autotask_get_ticket_details`, `autotask_search_ticket_history`, `autotask_get_ticket_history`, `autotask_list_ticket_statuses`, `autotask_list_ticket_priorities`

  • ConnectWise: `cw_search_companies`, `cw_get_company`,

`cw_search_tickets`, `cw_get_ticket`

  • HaloPSA: `halopsa_clients_list`, `halopsa_clients_get`,

`halopsa_clients_search`, `halopsa_tickets_list`, `halopsa_tickets_get`

  • Syncro: `syncro_customers_list`, `syncro_tickets_list`
  • SuperOps: `superops_clients_list`, `superops_clients_get`,

`superops_clients_search`, `superops_tickets_list`, `superops_tickets_get`

  • NinjaOne: `ninjaone_tickets_list`, `ninjaone_tickets_get`

There is no dedicated "list SLA breaches" tool. Use due-date or SLA fields on the ticket list/get tools above, the same way ops-pack SLA playbooks do. Compare a client against their own recent window, not against a made-up industry benchmark.

If a survey tool other than CrewHu appears in discovery and offers read-only list, get, or search survey tools, you may use those exact discovered names. Do not invent tool names.

Step 2: Find happy-client candidates

Prefer `crewhu_surveys_promoters` and recent high scores from `crewhu_surveys_list`, `crewhu_surveys_search`, or `crewhu_surveys_get`. If using CrewHu and discovery returns `crewhu_surveys_detractors`, load it too. Otherwise, use the selected survey source's discovered read-only tools to check for negative responses, if supported. Exclude anyone who is both a recent promoter and a later detractor, or who has an unresolved detractor survey. If you cannot verify these exclusions, tell the operator and ask them to verify before drafting.

For example, with CrewHu, pull the last 90 days of both lists (both tools accept only `limit` and `since`). Compute `<since>` at run time as today's date minus 90 days, in ISO 8601 (`YYYY-MM-DDT00:00:00Z`), and use the same value in both calls:

{ "tool": "crewhu_surveys_promoters", "arguments": { "limit": 100, "since": "<since>" } }
{ "tool": "crewhu_surveys_detractors", "arguments": { "limit": 100, "since": "<since>" } }

Each survey returned carries the customer name (the customer_data.name field) and the PSA ticket number (the ticket_num field). Use those to look up the client and that ticket with the PSA tools in Step 3.

These two tools only filter the most recent page of up to 100 surveys, so their results can be incomplete, and they never see responses older than `<since>`. Before drafting for a candidate, check that customer's older negative responses by paging `crewhu_surveys_list` with `sen

Read more
@wyre-technology
Ships withmsp-claude-plugins

One command to supercharge Claude Code for MSP workflows. Then restart Claude Code. That's it. Documentation: wyre-ai.github.io/msp-claude-plugins

55200 skills165 agents4 MCP
Get the whole plugin

Stars on GitHub

Momentum

stars in total
55
Star history of wyre-technology/msp-claude-plugins on GitHub, a chart by star-history.com

Other skills on msp-claude-plugins.

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills2w309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc2w293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react5d252k
@facebook@facebookInstall Skill

Questions about review-and-referral-ask.

Which coding agents can use review-and-referral-ask?
review-and-referral-ask installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.