com.peopleanalyst/discovery
REMOTE · PEOPLEANALYST.COM · SCANNED SEP 22
PeopleAnalyst's free people-analytics feeds: answers, tools, evidence, story and scene catalogs.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security80
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one. See how to fix → View diagnostics → Partial
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability77
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 1955 tokens (~115/item across 17 items; 17 tools + 0 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 Management47
- Stability observed for 14 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 17 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 17 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
How do I install the com.peopleanalyst/discovery MCP server?
com.peopleanalyst/discovery is a hosted endpoint at https://peopleanalyst.com/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · peopleanalyst.com
claude mcp add --transport http com-peopleanalyst-discovery 'https://peopleanalyst.com/mcp'
{
"mcpServers": {
"com-peopleanalyst-discovery": {
"url": "https://peopleanalyst.com/mcp"
}
}
} {
"servers": {
"com-peopleanalyst-discovery": {
"type": "http",
"url": "https://peopleanalyst.com/mcp"
}
}
} [mcp_servers.com-peopleanalyst-discovery] url = "https://peopleanalyst.com/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"com-peopleanalyst-discovery": {
"type": "remote",
"url": "https://peopleanalyst.com/mcp",
"enabled": true
}
}
} openclaw mcp add com-peopleanalyst-discovery --url 'https://peopleanalyst.com/mcp' --transport streamable-http
mcp_servers:
com-peopleanalyst-discovery:
url: "https://peopleanalyst.com/mcp" {
"McpServers": {
"com-peopleanalyst-discovery": {
"Transport": "http",
"Url": "https://peopleanalyst.com/mcp"
}
}
} assistant mcp add com-peopleanalyst-discovery -t streamable-http -u 'https://peopleanalyst.com/mcp'
{
"mcpServers": {
"com-peopleanalyst-discovery": {
"type": "http",
"url": "https://peopleanalyst.com/mcp"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
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.
- 21 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 40 to 43. That category is still filling its 30-day observation window: 12 days of observed history at the previous scan, 13 at this one. The score rises as the window fills, whether or not the server changes.
- 19 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 33 to 37. That category is still filling its 30-day observation window: 10 days of observed history at the previous scan, 11 at this one. The score rises as the window fills, whether or not the server changes.
- 16 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 23 to 27. That category is still filling its 30-day observation window: 7 days of observed history at the previous scan, 8 at this one. The score rises as the window fills, whether or not the server changes.
- 14 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 17 to 20. That category is still filling its 30-day observation window: 5 days of observed history at the previous scan, 6 at this one. The score rises as the window fills, whether or not the server changes.
- 12 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 10 to 13. That category is still filling its 30-day observation window: 3 days of observed history at the previous scan, 4 at this one. The score rises as the window fills, whether or not the server changes.
- 11 Sept 26 0
- Tool “list_answers” rewrote its description, which is the text the model reads security
- Tool “list_answers” changed its title: List every query-shaped answer → List all authored answer pages cosmetic
- 10 Sept 26 +1
- Server version: 1.4.0 → 1.5.0 functional
- New tool “get_membership_offer” functional
- 9 Sept 26 0
- Stability: unverified → 0.03 ▲ functional
- Server version: 1.3.0 → 1.4.0 functional
- New tool “list_answers” functional
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 22 Sept 2026 · Probed https://peopleanalyst.com/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=peopleanalyst.com | CN=YR1,O=Let's Encrypt,C=US | 3 Sept 2026 | 2 Dec 2026 | RSA 2048 | SHA256-RSA | 5f7ffc622a6ed5e7c0a6ba20965c0d91008 |
| SANs: peopleanalyst.com | ||||||
| CN=YR1,O=Let's Encrypt,C=US (CA) | CN=Root YR,O=ISRG,C=US | 3 Sept 2025 | 2 Sept 2028 | RSA 2048 | SHA256-RSA | a20253f15f2691c05dc1ce13b9bcca4e |
| CN=Root YR,O=ISRG,C=US (CA) | CN=ISRG Root X1,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | RSA 4096 | SHA256-RSA | f24b6d17f9d9ad7cb1c9fea78782699f |
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of peopleanalyst.com. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| com. | present | 19718 | 13 | Verified |
| peopleanalyst.com. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
| Header | Value |
|---|---|
| strict-transport-security | max-age=63072000 |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://peopleanalyst.com/mcp | Verified | 200 | |
| http (plaintext) | http://peopleanalyst.com/mcp | HTTPS enforced | 308 | https://peopleanalyst.com/mcp |
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 →
get_answer Get a query-shaped answer ~134
Returns one authored /answers page as structured content: question, markdown answer body (short answer, problem frame, evidence, grounded sources), and citations with libraryId or url. Known slugs (33): measure-employee-performance, survey-validity-check, people-analytics-program-maturity, people-analytics-vs-hr-reporting, engagement-survey-vs-listening-diagnostic, people-analytics-tools-compare, beyond-annual-engagement-survey, replace-gut-feel-talent-decisions, ….
| Name | Type | Req | Description |
|---|---|---|---|
| slug | string | yes | Answer slug from the query map (e.g. survey-validity-check). |
| Name | Type | Req | Description |
|---|---|---|---|
| answer | string | yes | – |
| canonicalUrl | string | yes | – |
| citations | array | yes | – |
| question | string | yes | – |
| slug | string | yes | – |
| title | string | yes | – |
| updatedAt | string | yes | – |
No examples provided.
get_brandscripts Per-persona StoryBrand arguments for each product ~97
Per-persona StoryBrand arguments for each product. The persona-level argument layer (SB7-shaped): the major problem solved for a persona and what the solution looks like. ?product / ?persona filter; ?status opts into drafts.
| Name | Type | Req | Description |
|---|---|---|---|
| persona | string | – | Filter to one persona slug. |
| product | string | – | Filter to one product's arguments. |
| status | string | – | live (default) | draft | all. |
| Name | Type | Req | Description |
|---|---|---|---|
| brandscripts | array | yes | – |
| contract | string | yes | – |
| count | number | yes | – |
| filter | object | yes | – |
No examples provided.
get_canonical_forms The canonical form vocabulary — the structural primitive ~92
The canonical form vocabulary — the structural primitive. 7 data shapes and the 33 canonical forms they resolve to. The form is why one engine reads compensation, attrition, funnels and survey data without a per-domain rewrite: the domain is in the metric tag, the structure is here. 'oftenMeans' is a labelled heuristic, never a conclusion.
| Name | Type | Req | Description |
|---|---|---|---|
| shape | string | – | Filter to one shape. |
| Name | Type | Req | Description |
|---|---|---|---|
| contract | string | yes | – |
| count | number | yes | – |
| filter | object | yes | – |
| forms | array | yes | – |
| note | string | yes | – |
| shapes | array | yes | – |
No examples provided.
get_claim_warrant How many works discuss a claim — discourse volume, with the works named ~212
How many works discuss a claim — discourse volume, with the works named. For a construct pair mined from the book corpus: how many distinct works discuss the link, and which ones, with each work's stated rationale. ⚠ This is DISCOURSE, not evidence — book frequency is confounded by publication incentives, fashion and citation cascades, so it is reported as 'discussed in N works' and never as corroboration, confidence, or a score. Single-work claims are returned, labelled as such; corroboration is not a gate. No query returns corpus-level stats including a counting discrepancy we state openly.
| Name | Type | Req | Description |
|---|---|---|---|
| construct | string | – | Every pair the corpus links this construct to, most-discussed first. |
| focus | string | – | Discourse volume for one focus area. |
| from | string | – | Source construct, e.g. employee_engagement. Use with `to`. |
| to | string | – | Target construct, e.g. employee_turnover. Use with `from`. |
| Name | Type | Req | Description |
|---|---|---|---|
| caveat | string | yes | – |
| citationCoverage | object | – | – |
| citationNote | string | – | – |
| contract | string | yes | – |
| count | number | – | – |
| focusSalience | array | – | – |
| found | boolean | – | – |
| label | string | – | – |
| pairs | array | – | – |
| query | object | – | – |
| salience | – | – | – |
| stats | object | – | – |
| statsNote | string | – | – |
| warrant | – | – | – |
No examples provided.
get_insight_cards A pitch rendered as player-ready InsightCards ~84
A pitch rendered as player-ready InsightCards. Serves a named pitch as an ordered InsightCard[] (the cross-site insight-player contract). ?pitch selects the pitch; ?awareness optionally reshapes the sequence for the buyer's awareness state.
| Name | Type | Req | Description |
|---|---|---|---|
| awareness | string | – | Awareness state to reshape the sequence. |
| pitch | string | yes | The pitch slug to render. |
| Name | Type | Req | Description |
|---|---|---|---|
| cards | array | – | – |
| contract | string | – | – |
| count | number | – | – |
| pitches | array | – | – |
| source | string | – | – |
No examples provided.
get_library_ids Library id export — stable ids for the works homed here ~137
Library id export — stable ids for the works homed here. Batch export of library_id rows (id, title, author, year, property tags) for the works that home on peopleanalyst.com. Ids are content-addressed (SHA-256 of normalized title|authors|year) and stable across repos, so a consumer can join to this catalog without string matching. Scoped to works homed here — titles whose canonical home is another property are excluded, matching /library.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | string | – | Cap the number of rows returned. |
| tag | string | – | Filter by property tag, e.g. principia. |
| Name | Type | Req | Description |
|---|---|---|---|
| count | number | yes | – |
| excluded_foreign_home | number | yes | – |
| generated_at | string | yes | – |
| id_format | string | yes | – |
| inventory_total | number | yes | – |
| issuer | string | yes | – |
| records | array | yes | – |
| scope | string | yes | – |
| spec | string | yes | – |
No examples provided.
get_marketing_registry The Pitboss marketing-asset registry (typed cards + personas) ~86
The Pitboss marketing-asset registry (typed cards + personas). Cross-site marketing-asset cards built from the portfolio's brandscripts and proofs, plus the persona set. ?product filters to one product; ?status filters by lifecycle.
| Name | Type | Req | Description |
|---|---|---|---|
| product | string | – | Filter cards to one product. |
| status | string | – | Filter by lifecycle (e.g. live, draft). |
| Name | Type | Req | Description |
|---|---|---|---|
| built_at | string | yes | – |
| cards | array | yes | – |
| contract | string | yes | – |
| counts | object | yes | – |
| filter | object | yes | – |
| personas | array | yes | – |
No examples provided.
get_membership_offer Get the Bicycle Cooperative membership offer ~50
Returns the people analytics chapter of the Bicycle Cooperative membership offer: five options (enterprise member, practitioner member, worker, practitioner rent, enterprise rent) with chapter substitution applied and this front's join URL.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| api_version | string | yes | – |
| chapter | string | yes | – |
| join_url | string | yes | – |
| offer | object | yes | – |
No examples provided.
get_product_description Machine-readable description of each PeopleAnalyst product ~103
Machine-readable description of each PeopleAnalyst product. Versioned, CORS-open descriptions of every product in the portfolio — name, category, oneLiner, problemFrames, capabilities, beachheads, whenNotToUse (honest disqualifiers), canonicalUrls, relatedProducts. Assembled from canon. Pass ?product to filter.
| Name | Type | Req | Description |
|---|---|---|---|
| product | string | – | Filter to one product id (e.g. performix, anycomp, compensation-toolbox). |
| Name | Type | Req | Description |
|---|---|---|---|
| contract | string | yes | – |
| count | number | – | – |
| filter | object | yes | – |
| products | array | yes | – |
No examples provided.
get_scene_templates Falsifiable scene templates — one claim plus what would make it false ~207
Falsifiable scene templates — one claim plus what would make it false. The cards a story is told with. Each declares truth conditions the data can falsify, so a claim survives on evidence rather than assertion. Persona relevance is derived from focus (a stated heuristic). Drafts excluded unless ?status=all.
| Name | Type | Req | Description |
|---|---|---|---|
| archetype | string | – | Archetype, e.g. trend, where, flow, driver. |
| focus | string | – | Spine focus, e.g. regretted-loss, compensation, cross. |
| form | string | – | Canonical form the scene presents as, e.g. rising. |
| id | string | – | Fetch a single scene template. |
| persona | string | – | Scenes relevant to one persona. |
| shape | string | – | Data shape, e.g. series, groups, funnel. |
| status | string | – | published (default) | all. |
| tier | string | – | 1 descriptive | 2 model-bound | 3 decision/value. |
| Name | Type | Req | Description |
|---|---|---|---|
| contract | string | yes | – |
| count | number | yes | – |
| filter | object | yes | – |
| note | string | yes | – |
| scenes | array | yes | – |
No examples provided.
get_situations Demonstration scenarios (discovered → diagnosed → solved) ~71
Demonstration scenarios (discovered → diagnosed → solved). The proof layer paired with brandscripts: concrete situations a product resolves. ?product filters; ?status opts into drafts.
| Name | Type | Req | Description |
|---|---|---|---|
| product | string | – | Filter to one product. |
| status | string | – | live (default) | draft | all. |
| Name | Type | Req | Description |
|---|---|---|---|
| contract | string | yes | – |
| count | number | yes | – |
| filter | object | yes | – |
| situations | array | yes | – |
No examples provided.
get_story_tracks Pre-authored data-story tracks — the possibility space ~157
Pre-authored data-story tracks — the possibility space. Complete data stories: the SB7 argument, the acts and beats that carry it, the branches it forks down, the decision it produces, and the data required to test it. Candidates only — nothing here asserts a story is true of any organisation; that is decided against data. ?persona / ?problem / ?metric / ?slug filter.
| Name | Type | Req | Description |
|---|---|---|---|
| metric | string | – | Filter by metric tag, e.g. attrition. |
| persona | string | – | Candidate stories for one persona (registry prefixes and aliases are normalized). |
| problem | string | – | Filter by problem tag, e.g. regretted-attrition. |
| slug | string | – | Fetch a single story track. |
| Name | Type | Req | Description |
|---|---|---|---|
| contract | string | yes | – |
| count | number | yes | – |
| filter | object | yes | – |
| note | string | yes | – |
| stories | array | yes | – |
No examples provided.
get_tools The PeopleAnalyst tool catalog (each answer reports its grounding) ~163
The PeopleAnalyst tool catalog (each answer reports its grounding). Machine-readable catalog of acting tools — name, category, what it does, inputs/outputs, concrete use cases, the profile URL, and how to run it (auth-gated REST + MCP). Each Bicycle answer reports provenance.grounding. Production currently reports grounded: false (HO-2512); approach strings describe the designed product, not the last production run. Discovery is open (find + cite the tools); execution is API-key gated. ?category filters by family; ?slug returns one tool.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | – | Filter by family (e.g. Marketing, Startup & strategy, Software engineering). |
| slug | string | – | Return a single tool by slug (e.g. positioning). |
| Name | Type | Req | Description |
|---|---|---|---|
| contract | string | yes | – |
| count | number | yes | – |
| filter | object | yes | – |
| grounding | object | yes | – |
| reliability | object | yes | – |
| tools | array | yes | – |
No examples provided.
list_answers List all authored answer pages ~42
Returns the full index of authored /answers pages — one entry per slug, with the question and canonical URL. Use this to discover available slugs before calling get_answer.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| answers | array | yes | – |
| contract | string | yes | – |
| count | number | yes | – |
No examples provided.
list_peopleanalyst_feeds List PeopleAnalyst feeds ~44
List PeopleAnalyst's free machine-readable feeds and their MCP/REST availability. OpenAPI is also published at https://peopleanalyst.com/openapi.json.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| feeds | array | yes | – |
No examples provided.
plan_next_data_ask What data to ask for next, and what it would rule out ~171
What data to ask for next, and what it would rule out. The acquisition planner. Given which data-stories are still candidates, returns the single most efficient next question, the full ranked list, and the minimum set of asks that makes every live story testable — split into what can be sent today versus what needs legal review. Ranked by information-per-friction: how evenly an answer splits the live hypothesis set (computed by entropy from the discrimination matrix, never hand-asserted) divided by a cost in which GOVERNANCE outweighs effort. Absent priors all live stories weigh equally, so results reflect structure, not likelihood. GET accepts ?live=, ?have=, ?lack= as comma lists.
| Name | Type | Req | Description |
|---|---|---|---|
| body | object | yes | JSON request body accepted by the underlying endpoint. |
| Name | Type | Req | Description |
|---|---|---|---|
| caveat | string | yes | – |
| contract | string | yes | – |
| live | array | yes | – |
| nextAsk | – | yes | – |
| plan | object | yes | – |
| ranked | array | yes | – |
| valueOfInformation | object | yes | – |
No examples provided.
run_segmentation Behavioral segmentation, role discovery, and exemplar matching ~105
Behavioral segmentation, role discovery, and exemplar matching. Deterministic segmentation over caller-supplied numeric vectors: cluster subjects, discover roles from behaviour + relationship edges, detect emergent roles, or match against exemplars. Structured non-biometric signals only — no audio, video, or affect inference. The caller supplies all data; nothing is retained. Capped at 5,000 rows per request.
| Name | Type | Req | Description |
|---|---|---|---|
| body | object | yes | JSON request body accepted by the underlying endpoint. |
| Name | Type | Req | Description |
|---|---|---|---|
| assignments | array | – | – |
| boundary | object | – | – |
| dimensions_ignored | array | – | – |
| dimensions_used | array | – | – |
| features_ignored | array | – | – |
| features_used | array | – | – |
| k | number | – | – |
| matches | array | – | – |
| provenance | object | – | – |
| roles | array | – | – |
| segmentation | object | – | – |
| segments | array | – | – |
| silhouette | number | – | – |
No examples provided.
What is the com.peopleanalyst/discovery MCP server?
com.peopleanalyst/discovery is an MCP server listed in the public MCP registry as com.peopleanalyst/discovery. PeopleAnalyst's free people-analytics feeds: answers, tools, evidence, story and scene catalogs. This page covers its hosted endpoint (https://peopleanalyst.com/mcp).
Is the com.peopleanalyst/discovery MCP server safe to use?
com.peopleanalyst/discovery scores 80 out of 100 on VerifyMCP. 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 com.peopleanalyst/discovery MCP server expose?
com.peopleanalyst/discovery exposes 17 tools: list_peopleanalyst_feeds, get_membership_offer, list_answers, get_answer, get_product_description, and 12 more. Their descriptions and schemas cost roughly 1,955 tokens of context every time the server is loaded.
Does the com.peopleanalyst/discovery MCP server require authentication?
No. We connected to com.peopleanalyst/discovery without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.
Is the com.peopleanalyst/discovery MCP server still maintained?
com.peopleanalyst/discovery is still listed as active in the MCP registry. We last reached this channel on 22 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.