Persuasion Taxonomy
NPM · @COPPICA/PERSUASION-MCP · 2 COMPONENTS
Plan and check marketing copy against the nine questions every reader asks. Free, no API key.
Available components
Last scanned (15 hours ago)
Scores higher than 53% of npm servers
Category Marketing and SEO
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →
Supply Chain Security81
- No malware found by supply-chain analysis.Pass
- CVE check failed: a known high-severity CVE affects @modelcontextprotocol/sdk 1.29.0, a direct dependency. A fixed version is available. View diagnostics → Fail
- No install/post-install scripts declared.Pass
- 30 of 93 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency32
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
- License check failed: the license (MIT AND CC-BY-4.0) isn't a recognized OSI-approved license. See how to fix → Fail
- Actively maintained (last published 30 days ago).Pass
- Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability74
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 3964 tokens (~360/item across 11 items; 9 tools + 2 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management100
- No destabilizing schema changes in the last 30 days.Pass
Tool Coverage96
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 88% of tool parameters carry a description.Partial
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 9 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 11 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Checks we ran (16)
- Malware scan
- Known CVEs
- Install scripts
- Dependency health
- Source repository
- Provenance
- License
- Maintenance
- Security disclosure
- Schema quality
- Stability
- Tool coverage
- Injection markers
- Destructive annotations
- Judged manipulation
- MCP protocol
Does not apply to this package (2)
- Endpoint SecurityScored on hosted endpoints only. A package has no live endpoint of its own for us to probe.
- Transport & ReachabilityScored on hosted endpoints only. A package has no live endpoint of its own for us to probe.
The score does not measure everything. What the score does not measure →
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 3 Nov 26 +1
- Stability: 0.97 → pass security
- 1 Nov 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 90 to 93. That category is still filling its 30-day observation window: 27 days of observed history at the previous scan, 28 at this one. The score rises as the window fills, whether or not the server changes.
- 30 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 83 to 87. That category is still filling its 30-day observation window: 25 days of observed history at the previous scan, 26 at this one. The score rises as the window fills, whether or not the server changes.
- 29 Oct 26 0
- CVE-2026-118663 affects this package: high ▼ security
- 28 Oct 26 +1
- GHSA-f897-62hf-6gxq affects this package: high ▼ security
- 27 Oct 26 0
- Security disclosure: unverified → fail ▼ functional
- 25 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 67 to 70. That category is still filling its 30-day observation window: 20 days of observed history at the previous scan, 21 at this one. The score rises as the window fills, whether or not the server changes.
- 24 Oct 26 0
- CVE-2023-54404 affects this package: high ▼ security
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 5 Nov 2026 · Analysed npm/@coppica/persuasion-mcp@1.0.3
Provenance No attestation
The registry publishes no build provenance for this version, so there is nothing to verify.
| Result | No attestation |
|---|---|
| Ecosystem | npm |
Background: How many MCP packages publish verified provenance →
Vulnerabilities 8 findings
| ID | CVE | Severity | Vector | Fix available |
|---|---|---|---|---|
| GHSA-rmxm-3fg6-px4f | CVE-2026-118663 | medium | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N | yes |
| GHSA-22jm-h49p-29qw | CVE-2026-111767 | high | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:L | yes |
| GHSA-46jr-4wx8-v453 | CVE-2026-111768 | high | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H | yes |
| GHSA-6prh-2h8m-c8cw | CVE-2026-111769 | medium | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:L/A:N | yes |
| GHSA-6qxp-vccf-f47h | CVE-2026-104850 | high | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N | yes |
| GHSA-f897-62hf-6gxq | high | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H | yes | |
| GHSA-rvq5-wwqv-78pq | CVE-2026-111771 | medium | CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N | yes |
| GHSA-mrhx-c7xc-m3w5 | CVE-2023-54404 | high | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H | yes |
Background: What a vulnerability scan can and cannot prove →
Dependencies 93 packages
| Packages resolved | 93 |
|---|---|
| Stale | 30 |
| Tree resolution | Complete |
Background: SBOMs and build attestations, explained →
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
check_headlines Check and compare headlines, hooks, and subject lines ~390
Check headlines, email subject lines, ad openings, video hooks, social post openings and first lines, and compare options against each other. For each line it tells you whether the line does its job in that spot, meaning which of the nine reader questions it answers, and whether a competitor could send it unchanged. It also shows exactly what a reader sees before the cutoff, flags anything that fails outright, and brings in evidence from thousands of real headline tests. Then it tells you what each option is betting on and which two to test. Before you call it, list the reader questions each line answers and quote the exact words doing the work. Use it whenever you write headlines, hooks or subject lines, whenever you have to choose between them, and whenever someone asks "which one is best?" You won't get a score out of ten. Nobody can predict a winner from the words alone, and that includes this tool.
| Name | Type | Req | Description |
|---|---|---|---|
| awareness_level | string | – | How much the reader already knows, on Eugene Schwartz's scale. Use unaware if they don't know they have the problem, problem_aware if they feel it, solution_aware if they know solutions exist, produc… |
| brief | object | – | The brief. The swap test needs it to tell whether a competitor could send the line unchanged, and without it no line can pass. |
| follows | string | – | What the reader saw just before this line, like the ad before a landing page headline, or the headline or subject before a first line. |
| lines | array | yes | – |
| slot | string | yes | Where the lines will appear: email_subject, ad_opening, landing_page_headline, first_line, video_hook, social_post_open, sales_letter_headline. Each spot has its own job, and the check tells you what… |
No output schema declared.
No examples provided.
check_marketing_claims Check marketing claims and CTAs ~141
Check whether marketing claims and calls to action are specific enough to believe. It catches the vague superlative, like "the best" or "#1", that readers discount on sight. It catches promises with no proof behind them and results with no mechanism, and it flags the generic buttons everyone uses, like "Learn more" and "Get started". Then it tells you how to fix each one. Use it when you write or review claims like "results in days", "trusted by thousands" or "the #1 tool", and for any button text. For headlines, check_headlines does the full job.
| Name | Type | Req | Description |
|---|---|---|---|
| claims | array | yes | – |
No output schema declared.
No examples provided.
diagnose_marketing_copy Diagnose marketing copy (roast / review) ~710
Review, critique or roast any piece of marketing copy, whether it's an ad, a landing page, an email, a sales page, a social post or a script, and find out why it might not persuade. Before you call it, read the copy and label each line with the one reader question it mainly answers, quoting the words exactly. Those labels go in the moves array. You get back which of the nine questions the copy answers for its goal, which it answers weakly and which it skips, along with the biggest gap and what readers do when it is missing. It also checks the order, whether the answers agree with each other, and the craft, pointing to the exact words that read as machine-written, like em dashes, "it's not X, it's Y" lines and sentences that all run the same length. Then it checks the opening line and suggests techniques from the catalog to fill the gap. Use it before you show anyone a draft you wrote, and whenever someone asks "is this good?", "roast this", "what's wrong with this copy?" or "how do I make it better?"
| Name | Type | Req | Description |
|---|---|---|---|
| awareness_level | string | – | How much the reader already knows, on Eugene Schwartz's scale. Use unaware if they don't know they have the problem, problem_aware if they feel it, solution_aware if they know solutions exist, produc… |
| brief | object | – | The brief, if you have it: the brand, product, offer, audience and proof. With it, the opening line gets the swap test, which asks whether a competitor could send it unchanged. |
| category | string | – | The industry, if you want to compare against what brands in that category usually do. There is enough data for apparel, automotive, b2b_saas, beauty_skincare, business_coaching, consumer_tech, dtc_fo… |
| copy | string | yes | The full copy, exactly as written. |
| format | string | yes | The kind of copy it is: ad, landing_page, sales_letter for long-form sales copy, email, email_subject, social_post, video_script or headline. |
| goal | string | yes | What the copy has to get the reader to do. Use purchase when they should buy now, signup for an opt-in, a trial, a demo or a lead form, click when the whole job is the click (most ads and links), and… |
| headline | string | – | The headline or opening line, if it isn't the first line of the copy. |
| moves | array | yes | Your line-by-line labels. Quote each persuasive line exactly and name the one reader question it mainly answers. Skip lines that are pure filler. |
| persuasion_mode | string | – | How hard the copy is allowed to push. Balanced is the default, persuasive and sustainable over time. Equity protects long-term trust, so it rules out fear, hype and hard-sell moves. Aggressive is for… |
No output schema declared.
No examples provided.
explain_why_not_converting Explain why marketing is not converting ~514
Work out why an ad, a landing page, an email or a whole funnel isn't converting. Start from what you can see. Maybe people don't click (a low CTR), or they click and bounce, or they read and don't buy. Maybe they abandon the checkout or the form, the leads never buy, customers buy once and leave, or emails don't get opened or get opened and nobody clicks. Whatever the symptom, you get back the reader questions most likely going unanswered, what to check in the copy first, and the problems copy can't fix that you should rule out, along with techniques to try and the test that would confirm the diagnosis. So use it whenever someone says their marketing "isn't working", "isn't converting" or "isn't selling", or asks why results dropped.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | – | The industry, if you want to compare against what brands in that category usually do. There is enough data for apparel, automotive, b2b_saas, beauty_skincare, business_coaching, consumer_tech, dtc_fo… |
| details | string | – | Anything you know: the numbers, what changed recently, the offer and the audience. |
| format | string | – | The kind of copy it is: ad, landing_page, sales_letter for long-form sales copy, email, email_subject, social_post, video_script or headline. |
| persuasion_mode | string | – | How hard the copy is allowed to push. Balanced is the default, persuasive and sustainable over time. Equity protects long-term trust, so it rules out fear, hype and hard-sell moves. Aggressive is for… |
| symptom | string | yes | What you can see happening. Use low_click_through when people see it and don't click, high_bounce when they click and leave fast, reads_but_no_action when they read and don't convert, starts_but_aban… |
No output schema declared.
No examples provided.
find_persuasion_techniques Find persuasion techniques ~350
Search the Persuasion Taxonomy, 766 named persuasion techniques documented from real advertising and organized by the nine reader questions they answer. Describe what you want the copy to do, like build trust without testimonials, create urgency without fake scarcity, handle a price objection, make an opening less generic, prove a claim or reframe a problem. It finds the techniques that do it. Each one comes with its name and ID, a one-line definition, a real example, how common it is in a category if you name one, and a link. So reach for it when a draft relies on the obvious move and you want a less expected one, or when someone asks for tactics, angles, hooks or ideas.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | – | The industry, if you want to compare against what brands in that category usually do. There is enough data for apparel, automotive, b2b_saas, beauty_skincare, business_coaching, consumer_tech, dtc_fo… |
| format | string | – | The kind of copy it is: ad, landing_page, sales_letter for long-form sales copy, email, email_subject, social_post, video_script or headline. |
| limit | integer | – | – |
| query | string | yes | What you want the copy to do, in plain words, like "prove it works without testimonials". |
| question | string | – | Set this to see only the techniques that answer one reader question. |
No output schema declared.
No examples provided.
get_persuasion_technique Get a persuasion technique ~225
Look up one persuasion technique by its ID (like PT-PRV-10000), its slug or its name. You get the full definition, why it works, when it lands and when it backfires, real examples from advertising, related and opposite techniques, and a link you can cite. Use it before you apply or recommend a technique so you get it right, and whenever someone asks what a tactic is called or how it works.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | – | The industry, if you want to compare against what brands in that category usually do. There is enough data for apparel, automotive, b2b_saas, beauty_skincare, business_coaching, consumer_tech, dtc_fo… |
| id | string | yes | The PT-ID, the slug or the exact name of the technique. |
No output schema declared.
No examples provided.
plan_ab_test Plan an A/B test ~287
Plan an A/B test for marketing copy. Give it the current conversion rate, the smallest lift worth detecting and the daily traffic, and it tells you how many visitors each version needs and how many days to run. It also frames the test as two different answers to the same reader question, so the result teaches you something you can reuse, and not just that "B won". Use it when someone asks how long to run a test, how much traffic they need, whether a test is worth running, or what to test next.
| Name | Type | Req | Description |
|---|---|---|---|
| baseline_conversion_rate_percent | number | yes | The current conversion rate, in percent, so 3 means 3% and 0.8 means 0.8%. |
| confidence | number | – | – |
| daily_visitors | number | yes | How many visitors a day enter the test, across all versions. |
| minimum_detectable_lift_percent | number | yes | The smallest relative lift worth detecting, in percent. 20 means a 20% lift, like going from 3% to 3.6%. |
| power | number | – | – |
| question | string | – | The reader question both versions answer, each in its own way. |
| version_a | string | – | How version A answers it. |
| version_b | string | – | How version B answers it. |
| versions | integer | – | How many versions, counting the original. |
No output schema declared.
No examples provided.
plan_marketing_copy Plan marketing copy (the nine reader questions) ~622
Plan any piece of marketing copy before you write it, whether it's an ad, a landing page, a sales page or sales letter, an email, a subject line, a social post, a headline or a video script. Give it the goal, the reader and the offer, and it tells you which of the nine questions every reader silently asks this piece has to answer, which ones deserve the most words for this reader, and a few ways to answer each one, drawn from real advertising and linked to the Persuasion Taxonomy. One option is always the established move and the rest are less expected, because left to itself a model answers every question with the move everyone else makes, and readers have learned to skim past it. So call it before you draft, even when you're sure you know how to write the piece, and when the draft is done, check it with diagnose_marketing_copy.
| Name | Type | Req | Description |
|---|---|---|---|
| audience | string | yes | Who will read it, as specifically as you can put it: their role, their situation and what they already believe. |
| awareness_level | string | – | How much the reader already knows, on Eugene Schwartz's scale. Use unaware if they don't know they have the problem, problem_aware if they feel it, solution_aware if they know solutions exist, produc… |
| category | string | – | The industry, if you want to compare against what brands in that category usually do. There is enough data for apparel, automotive, b2b_saas, beauty_skincare, business_coaching, consumer_tech, dtc_fo… |
| format | string | yes | The kind of copy it is: ad, landing_page, sales_letter for long-form sales copy, email, email_subject, social_post, video_script or headline. |
| goal | string | yes | What the copy has to get the reader to do. Use purchase when they should buy now, signup for an opt-in, a trial, a demo or a lead form, click when the whole job is the click (most ads and links), and… |
| offer | string | yes | What you're selling or asking for, and the main promise. |
| options_per_question | integer | – | How many ways to answer each question you want to see. The default is 4. |
| persuasion_mode | string | – | How hard the copy is allowed to push. Balanced is the default, persuasive and sustainable over time. Equity protects long-term trust, so it rules out fear, hype and hard-sell moves. Aggressive is for… |
No output schema declared.
No examples provided.
read_ab_test_result Read an A/B test result ~209
Read the result of an A/B test. You get each version's conversion rate and lift, whether the difference is statistically significant, the confidence interval, and the chance each version really beats the original. It also warns you about the things that make a test result lie. Those include too few conversions, traffic that didn't split the way it should (a sample ratio mismatch), stopping the moment it looked good, and testing too many versions at once. So use it whenever someone shares test numbers, or asks "did my test win?", "is this significant?", "which version won?" or "should I keep it running?"
| Name | Type | Req | Description |
|---|---|---|---|
| confidence | number | – | – |
| intended_split | array | – | How you meant to split the traffic, like [50, 50]. The default is an even split. |
| question | string | – | The reader question the versions answered in different ways. |
| versions | array | yes | Each version with its visitors and conversions. Put the original, the control, first. |
No output schema declared.
No examples provided.
How do I install the Persuasion Taxonomy MCP server?
Persuasion Taxonomy runs locally as an npm package, launched with npx -y @coppica/persuasion-mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
npm · @coppica/persuasion-mcp
claude mcp add com-coppica-persuasion-taxonomy -- npx -y @coppica/persuasion-mcp
What is the Persuasion Taxonomy MCP server?
Persuasion Taxonomy is an MCP server listed in the public MCP registry as com.coppica/persuasion-taxonomy. Plan and check marketing copy against the nine questions every reader asks. Free, no API key. This page covers its npm package (@coppica/persuasion-mcp).
Is the Persuasion Taxonomy MCP server safe to use?
Persuasion Taxonomy scores 76 out of 100 on VerifyMCP. We recorded 8 known advisories against it as of 5 November 2026. It declares no install or post-install scripts. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the Persuasion Taxonomy MCP server expose?
Persuasion Taxonomy exposes 9 tools: plan_marketing_copy, diagnose_marketing_copy, explain_why_not_converting, find_persuasion_techniques, get_persuasion_technique, and 4 more. Their descriptions and schemas cost roughly 3,448 tokens of context every time the server is loaded.
Is the Persuasion Taxonomy MCP server still maintained?
Persuasion Taxonomy is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.
What licence is the Persuasion Taxonomy MCP server under?
Persuasion Taxonomy declares the MIT AND CC-BY-4.0 licence, which is not on the OSI-approved list. Read the terms before using it at work, and note this covers the source only, not the cost of any service it calls.
What did VerifyMCP test on the Persuasion Taxonomy MCP server?
VerifyMCP ran 16 checks on Persuasion Taxonomy, covering Malware scan, Known CVEs, Install scripts, Dependency health and 12 more. Endpoint Security and Transport & Reachability do not apply to an npm package, so they were not tested. The score does not measure everything, and the scoring documentation lists what it leaves out.