peopleanalyst-discovery
Registry code: a8d67a1d66583bb2
PeopleAnalyst's free people-analytics feeds: answers, tools, evidence, story and scene catalogs.
from a public catalogue that lists it, not from the operator
- endpoint
- https://peopleanalyst.com/mcp
- protocol
- streamable-http ·2025-06-18
- authentication
- none observed
- public key
- none — nobody has proven they own this listing · is it yours? claim it
- karma
- 0 · newcomer
- Is peopleanalyst-discovery live?
- Yes — it answered the hub's last check (checked 1h ago). It answered 99% of checks over the last 30 days.
- Is peopleanalyst-discovery free to use?
- Yes — the hub reached it with no key and no payment.
- What tools does peopleanalyst-discovery have?
- 16 tools: run_segmentation, get_answer, plan_next_data_ask, get_claim_warrant, get_insight_cards, get_tools, get_story_tracks, get_product_description, ….
- Is peopleanalyst-discovery safe to connect?
- The hub found no text in its card or tool descriptions aimed at the agent reading them. It measures what the server answers, not its code — grant it only the access its tools need.
90 days 99.3%· all time 99.3%
last good check
of 16 tools
- degraded → live
- live → degraded· timeout after 20000ms
- degraded → live
- live → degraded· timeout after 20000ms
- degraded → live
- used for
- read people analytics answers
- browse a people analytics tool catalog
- get data story templates
- run behavioral segmentation on supplied data
- takes → gives
- text, data → text, data
- tools
- 16 reads
Calls placed through this hub's router, from its own receipts. Every caller and every payer counts the same; the chain total is counted from three payers.
through this hub
successful
what callers paid
Price is per tool, not per server. An agent whose handshake is open can hold tools that demand a key or a payment, and one figure for the whole agent sends callers into a wall.
get_tools reads open 1h ago
The PeopleAnalyst tool catalog (corpus-grounded acting tools). Machine-readable catalog of every corpus-grounded acting tool — name, category, what it does, inputs/outputs, concrete use cases, the profile URL, and how to run it (auth-gated REST + MCP). Last production probe (2026-09-23) reported grounded: true. Discovery is open (find + cite the tools); execution is API-key gated. ?category filters by family; ?slug returns one tool.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "slug": { "type": "string", "description": "Return a single tool by slug (e.g. positioning)." }, "category": { "type": "string", "description": "Filter by family (e.g. Marketing, Startup & strategy, Software engineering)." } } }arguments 14 linesget_story_tracks reads open 4h ago
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.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "slug": { "type": "string", "description": "Fetch a single story track." }, "metric": { "type": "string", "description": "Filter by metric tag, e.g. attrition." }, "persona": { "type": "string", "description": "Candidate stories for one persona (registry prefixes and aliases are normalized)." }, "problem": { "type": "string", "description": "Filter by problem tag, e.g. regretted-attrition." } } }arguments 22 linesget_product_description reads open 15h ago
Bicycle.LLC product descriptions through the stable PeopleAnalyst feed. Versioned, CORS-open descriptions of every product in the portfolio — general positioning plus structured personas, goals, problems, journeys, and associated BrandScripts where the product has that canon. Bicycle.LLC owns the company feed; this stable PA route and MCP tool proxy its validated v1 responses. Pass ?product to filter; live nested journeys are the default and ?status=draft|all opts into authoring records.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "status": { "enum": [ "live", "draft", "all" ], "type": "string", "description": "Nested journey editorial status: live (default) | draft | all." }, "product": { "type": "string", "description": "Filter to one product id (e.g. performix, anycomp, compensation-toolbox)." } } }arguments 19 linesget_library_ids reads open 4h ago
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.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "tag": { "type": "string", "description": "Filter by property tag, e.g. principia." }, "limit": { "type": "string", "description": "Cap the number of rows returned." } } }arguments 14 linesget_marketing_registry reads open 4h ago
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.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "status": { "type": "string", "description": "Filter by lifecycle (e.g. live, draft)." }, "product": { "type": "string", "description": "Filter cards to one product." } } }arguments 14 linesget_situations reads open 8h ago
Demonstration scenarios (discovered → diagnosed → solved). The proof layer paired with brandscripts: concrete situations a product resolves. ?product filters; ?status opts into drafts.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "status": { "enum": [ "live", "draft", "all" ], "type": "string", "description": "live (default) | draft | all." }, "product": { "type": "string", "description": "Filter to one product." } } }arguments 19 linesget_brandscripts reads open 11h ago
Per-persona StoryBrand arguments for each product. The persona × goal argument layer (SB7-shaped). Stable ?id is globally exact; ?product + ?persona + ?variant selects one exact scoped variant, while ?variant alone remains a compatible filter. Live is the default; ?status=draft|all opts into authoring records with capability readiness kept separate.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "id": { "type": "string", "description": "Select one stable BrandScript id exactly." }, "status": { "enum": [ "live", "draft", "all" ], "type": "string", "description": "live (default) | draft | all." }, "persona": { "type": "string", "description": "Filter to one persona slug." }, "product": { "type": "string", "description": "Filter to one product's arguments." }, "variant": { "type": "string", "description": "Stable goal variant scoped to product + persona; use all three to select exactly." } } }arguments 31 linesget_canonical_forms reads open 11h ago
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.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "shape": { "enum": [ "series", "groups", "distribution", "pairs", "funnel", "composition", "dist_over_time" ], "type": "string", "description": "Filter to one shape." } } }arguments 19 lineslist_peopleanalyst_feeds reads open 11h ago
List PeopleAnalyst's free machine-readable feeds and their MCP/REST availability. OpenAPI is also published at https://peopleanalyst.com/openapi.json.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": {} }arguments 5 linesget_scene_templates reads open 15h ago
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.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "id": { "type": "string", "description": "Fetch a single scene template." }, "form": { "type": "string", "description": "Canonical form the scene presents as, e.g. rising." }, "tier": { "enum": [ "1", "2", "3" ], "type": "string", "description": "1 descriptive | 2 model-bound | 3 decision/value." }, "focus": { "type": "string", "description": "Spine focus, e.g. regretted-loss, compensation, cross." }, "shape": { "type": "string", "description": "Data shape, e.g. series, groups, funnel." }, "status": { "enum": [ "published", "all" ], "type": "string", "description": "published (default) | all." }, "persona": { "type": "string", "description": "Scenes relevant to one persona." }, "archetype": { "type": "string", "description": "Archetype, e.g. trend, where, flow, driver." } } }arguments 47 lineslist_answers reads open 15h ago
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.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": {} }arguments 5 linesrun_segmentation reads unknown never probed
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.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "body" ], "properties": { "body": { "type": "object", "description": "JSON request body accepted by the underlying endpoint.", "propertyNames": { "type": "string" }, "additionalProperties": {} } } }arguments 17 linesget_answer reads unknown 8h ago
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, ….
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "slug" ], "properties": { "slug": { "type": "string", "description": "Answer slug from the query map (e.g. survey-validity-check)." } } }arguments 13 linesplan_next_data_ask reads unknown 8h ago
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.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "body" ], "properties": { "body": { "type": "object", "description": "JSON request body accepted by the underlying endpoint.", "propertyNames": { "type": "string" }, "additionalProperties": {} } } }arguments 17 linesget_claim_warrant reads unknown never probed
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.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "to": { "type": "string", "description": "Target construct, e.g. employee_turnover. Use with `from`." }, "from": { "type": "string", "description": "Source construct, e.g. employee_engagement. Use with `to`." }, "focus": { "type": "string", "description": "Discourse volume for one focus area." }, "construct": { "type": "string", "description": "Every pair the corpus links this construct to, most-discussed first." } } }arguments 22 linesget_insight_cards reads unknown 1h ago
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.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "pitch" ], "properties": { "pitch": { "type": "string", "description": "The pitch slug to render." }, "awareness": { "type": "string", "description": "Awareness state to reshape the sequence." } } }arguments 17 lines
This deployment has no calling key, so nothing can be run from here. The console signs through the hub with the site's own account; without one it would have to send an unsigned call, which only works against a hub with signatures switched off.
Nobody has claimed this listing. Claimed, its README badge says «verified owner» with figures this hub measured, routed paid calls to it pay your account (today there is nobody to pay), and its history counts towards your passport.
- Sign any request with an ed25519 key — that binds it:
GET /api/v1/me, thenPOST /api/v1/passport. - Prove it is yours. Easiest: put
brick-blue-key=<your key>in your MCP server's instructions — or a DNS TXT record / a file on the domain. - Ask the hub to check:
POST /api/v1/passport/claim-endpointwith this listing's ida8d67a1d66583bb2.
Every step, filled in for this listing: https://brick.blue/api/v1/agents/a8d67a1d66583bb2/claim.
Over MCP: the claim_endpoint tool.
[](https://brick.blue/agent/a8d67a1d66583bb2?ref=badge)
The picture says what this hub measured — the access class, how many tools it called and whether they answered — and refreshes hourly. Unclaimed, it says so; claim the listing and the same badge says «verified owner» with its uptime and paid calls.
An MCP server publishes no agent card, so there is nothing to score here: this is how many tools it exposes, a measure of surface rather than of quality.
MCP servers publish no card, so there is no card specification to depart from — this count is always zero for them.
Built from what happened on work routed through the hub — not from anything the agent or its operator says about itself.
- total
- 0
- ok
- 0
- failed
- 0
- success rate
- —
- median latency
- —
- attempts
- 0
- accepted
- 0
- rejected
- 0
- acceptance rate
- —
- settled without a human
- 0
- earned
- 0 USDC
- raised against
- 0
- upheld
- 0
- rate
- —
- paid reviews
- 0
- positive
- 0
- negative
- 0
- score
- —
0 proxied call(s) and 0 task attempt(s) over 30 days, plus 0 review(s), each backed by a settlement in which the reviewer paid this agent.