Skip to content

com.peopleanalyst/discovery

by peopleanalyst.com · remote · no sign-in to list tools · v1.1.0 · published by com.peopleanalyst

PeopleAnalyst's free people-analytics feeds: answers, tools, evidence, story and scene catalogs.

Changes · 2

16 tools: 2 change things and 14 only read.

Scanned Oct 21, 2026

1 check matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http discovery https://peopleanalyst.com/mcp

Findings

Matches of fixed checks, with the text they matched.

1 warn
  • The server marks "run_segmentation" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}; The name "run_segmentation" says "run": a word for a change.

    What this check looks for

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

16 tools

Changes things 2Claude Code: ask
  • plan_next_data_askWhat data to ask for next, and what it would rule out.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
  • run_segmentationBehavioral segmentation, role discovery, and exemplar matching.1 finding

    Why it is in this group

    • The name "run_segmentation" says "run": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "run_segmentation" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}; The name "run_segmentation" says "run": a word for a change.

      What this check looks for
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
Only reads 14Claude Code: allow
  • get_answerReturns one authored /answers page as structured content: question, markdown answer body (short answer, problem frame, evidence, grounded sources), and citations with libraryId or …No findings

    Why it is in this group

    • The name "get_answer" says "get": a word for reading.
    Description, as the server wrote it
    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, ….

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
  • get_brandscriptsPer-persona StoryBrand arguments for each product.No findings

    Why it is in this group

    • The name "get_brandscripts" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
  • get_canonical_formsThe canonical form vocabulary — the structural primitive.No findings

    Why it is in this group

    • The name "get_canonical_forms" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
  • get_claim_warrantHow many works discuss a claim — discourse volume, with the works named.No findings

    Why it is in this group

    • The name "get_claim_warrant" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
  • get_insight_cardsA pitch rendered as player-ready InsightCards.No findings

    Why it is in this group

    • The name "get_insight_cards" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
  • get_library_idsLibrary id export — stable ids for the works homed here.No findings

    Why it is in this group

    • The name "get_library_ids" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
  • get_marketing_registryThe Pitboss marketing-asset registry (typed cards + personas).No findings

    Why it is in this group

    • The name "get_marketing_registry" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
  • get_product_descriptionBicycle.LLC product descriptions through the stable PeopleAnalyst feed.No findings

    Why it is in this group

    • The name "get_product_description" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
  • get_scene_templatesFalsifiable scene templates — one claim plus what would make it false.No findings

    Why it is in this group

    • The name "get_scene_templates" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
  • get_situationsDemonstration scenarios (discovered → diagnosed → solved).No findings

    Why it is in this group

    • The name "get_situations" says "get": a word for reading.
    Description, as the server wrote it
    Demonstration scenarios (discovered → diagnosed → solved). The proof layer paired with brandscripts: concrete situations a product resolves. ?product filters; ?status opts into drafts.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
  • get_story_tracksPre-authored data-story tracks — the possibility space.No findings

    Why it is in this group

    • The name "get_story_tracks" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
  • get_toolsThe PeopleAnalyst tool catalog (corpus-grounded acting tools).No findings

    Why it is in this group

    • The name "get_tools" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
  • list_answersReturns the full index of authored /answers pages — one entry per slug, with the question and canonical URL.No findings

    Why it is in this group

    • The name "list_answers" says "list": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
  • list_peopleanalyst_feedsList PeopleAnalyst's free machine-readable feeds and their MCP/REST availability.No findings

    Why it is in this group

    • The name "list_peopleanalyst_feeds" says "list": a word for reading.
    Description, as the server wrote it
    List PeopleAnalyst's free machine-readable feeds and their MCP/REST availability. OpenAPI is also published at https://peopleanalyst.com/openapi.json.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.1.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http discovery https://peopleanalyst.com/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__discovery__list_peopleanalyst_feeds",
      "mcp__discovery__list_answers",
      "mcp__discovery__get_answer",
      "mcp__discovery__get_product_description",
      "mcp__discovery__get_marketing_registry",
      "mcp__discovery__get_brandscripts",
      "mcp__discovery__get_story_tracks",
      "mcp__discovery__get_scene_templates",
      "mcp__discovery__get_canonical_forms",
      "mcp__discovery__get_claim_warrant",
      "mcp__discovery__get_library_ids",
      "mcp__discovery__get_insight_cards",
      "mcp__discovery__get_situations",
      "mcp__discovery__get_tools"
    ],
    "ask": [
      "mcp__discovery__run_segmentation",
      "mcp__discovery__plan_next_data_ask"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as discovery. Review it before you use it.