Help us improve
Share bugs, ideas, or general feedback.
From webmatrices
Match a topic or trend to the best Webmatrices persona and audience segment. Fetches personas from MCP, considers voice fit, topic relevance, backstory, recency, and fatigue. Use when deciding which persona should write about a topic, or when matching content to audience.
npx claudepluginhub bishwas-py/webmatrices-skills --plugin webmatricesHow this skill is triggered — by the user, by Claude, or both
Slash command
/webmatrices:audience-matcherThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Given a topic, determine which Webmatrices audience segment it serves and which persona should write about it. All persona data is fetched live from MCP, never hardcoded.
Guides Payload CMS config (payload.config.ts), collections, fields, hooks, access control, APIs. Debugs validation errors, security, relationships, queries, transactions, hook behavior.
Implements vector databases with Pinecone, Weaviate, Qdrant, Milvus, pgvector for semantic search, RAG, recommendations, and similarity systems. Optimizes embeddings, indexing, and hybrid search.
Share bugs, ideas, or general feedback.
Given a topic, determine which Webmatrices audience segment it serves and which persona should write about it. All persona data is fetched live from MCP, never hardcoded.
NEVER hardcode persona usernames, IDs, voice descriptions, or topic mappings.
At the start of every audience-matcher invocation:
get_self_personas MCP tool to fetch all personasmetadata.personaTraits with: voice, topics, opinion strength, backstoryFor a given topic, score each persona on five factors:
Compare the topic against each persona's topics field from their traits:
Does the topic suit the persona's voice style?
Does the persona have a plausible backstory connection to this topic?
backstory field in persona traits for relevant experienceHow recently has this persona posted?
list_posts with authorIdTrack how often a persona has been used recently:
Match the topic to audience segments based on content:
| Segment | Topic Indicators |
|---|---|
| AdSense | AdSense, RPM, CPC, ad revenue, ad approval, Google ads |
| SEO | Backlinks, rankings, search console, SERP, keywords, indexing |
| Web Dev / AI | Coding, AI tools, vibe coding, LLMs, deployment, frameworks |
| Freelancing | Fiverr, Upwork, freelance, gig economy, client work |
| Startups / SaaS | Product, startup, pricing, MRR, churn, launch |
| Content / Blogging | Content strategy, blogging, writing, publishing |
| GEO / AEO | AI search, AI citations, AI overviews, GEO optimization |
Return:
MATCH RESULT:
Topic: "AdSense RPM tanking after March 2026 core update"
Primary: [matched persona from MCP] (ID from MCP)
Score: 0.91
Why: [topic] is in their topics array, [voice description] fits the topic's tone,
hasn't posted in 3 days, backstory includes relevant experience
Runner-up: [second-best match from MCP] (ID from MCP)
Score: 0.72
Why: [adjacent topic] is in their topics array, but [voice description]
is less urgent than the topic demands
Segment: AdSense
Tone: anxious urgency, personal numbers, "is anyone else seeing this?"
Hook: specific RPM drop with exact numbers from "his own dashboard"
get_self_personas MCP. Zero hardcoded personas.