@productbrain/mcp 0.0.1-beta.4881 → 0.0.1-beta.4887
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -15571,7 +15571,7 @@ import { ResourceTemplate } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
|
15571
15571
|
// src/resources/agentCheatsheet.ts
|
|
15572
15572
|
var AGENT_CHEATSHEET = `# Product Brain \u2014 Agent Cheatsheet
|
|
15573
15573
|
|
|
15574
|
-
## Core Tools (Serves 13 default compound tools;
|
|
15574
|
+
## Core Tools (Serves 13 default compound tools; 2 more (chain, chain-review) behind PB_MODULES=gitchain \u2014 map retired, L29)
|
|
15575
15575
|
| Tool | Purpose | Key params |
|
|
15576
15576
|
|---|---|---|
|
|
15577
15577
|
| \`orient\` | Workspace context, governance, active work packages, session start | \`action\`: start, task, record-activation |
|
|
@@ -15592,7 +15592,7 @@ var AGENT_CHEATSHEET = `# Product Brain \u2014 Agent Cheatsheet
|
|
|
15592
15592
|
GLO (glossary), BR (business-rules), PRI (principles), STD (standards),
|
|
15593
15593
|
DEC (decisions), STR (strategy), TEN (tensions), FEAT (features),
|
|
15594
15594
|
BET (bets), INS (insights), ARCH (architecture), TEAM (teams),
|
|
15595
|
-
ROL (roles),
|
|
15595
|
+
ROL (roles), MTRC (tracking-events), ST (semantic-types)
|
|
15596
15596
|
|
|
15597
15597
|
## Valid Relation Types (24)
|
|
15598
15598
|
informs, governs, surfaces_tension_in, defines_term_for, belongs_to,
|
|
@@ -15668,7 +15668,7 @@ These are principles, standards, and rules your team has accepted onto the Chain
|
|
|
15668
15668
|
);
|
|
15669
15669
|
}
|
|
15670
15670
|
sections.push(
|
|
15671
|
-
"## Core Product Architecture\nThe Chain is a versioned, connected, compounding knowledge base \u2014 the SSOT for a product team.\nEverything on the Chain is one of **
|
|
15671
|
+
"## Core Product Architecture\nThe Chain is a versioned, connected, compounding knowledge base \u2014 the SSOT for a product team.\nEverything on the Chain is one of **two primitives**:\n\n- **Entry** (atom) \u2014 a discrete knowledge unit: target audience, business rule, glossary term, metric, tension. Lives in a collection.\n- **Process** (authored) \u2014 a narrative chain with named links (Strategy Coherence, IDM Proposal). Content is inline text. Collection: `chains`.\n\nEntries are atoms. Processes author narrative from atoms.\nBoth share the same versioning, branching, gating, and relation system.\n\nThe Chain compounds: each new relation makes entries discoverable from more starting points \u2192 context gathering returns richer results \u2192 AI processes have more context \u2192 quality scores improve \u2192 next accept is smarter than the last."
|
|
15672
15672
|
);
|
|
15673
15673
|
sections.push(
|
|
15674
15674
|
"## Architecture\n```\nCursor (stdio) \u2192 MCP Server (mcp-server/src/index.ts)\n \u2192 POST /api/aki with Bearer token\n \u2192 Convex HTTP Action (convex/http.ts)\n \u2192 internalQuery / internalMutation (convex/agentKnowledge/*)\n \u2192 Convex DB (workspace-scoped)\n```\nSecurity: API key auth on every request, workspace-scoped data, internal functions blocked from external clients.\nKey files: `packages/mcp-server/src/client.ts` (HTTP client + audit), `convex/schema.ts` (schema)."
|
|
@@ -15681,7 +15681,7 @@ These are principles, standards, and rules your team has accepted onto the Chain
|
|
|
15681
15681
|
sections.push(
|
|
15682
15682
|
`## Data Model (${collections.length} collections)
|
|
15683
15683
|
Unified entries model: collections define field schemas, entries hold data in a flexible \`data\` field.
|
|
15684
|
-
The \`data\` field is polymorphic: plain fields for generic entries, \`ChainData\` (chainTypeId + links) for processes
|
|
15684
|
+
The \`data\` field is polymorphic: plain fields for generic entries, \`ChainData\` (chainTypeId + links) for processes.
|
|
15685
15685
|
Tags for filtering (e.g. \`severity:high\`), relations via \`entryRelations\`, versions via \`entryVersions\`, labels via \`labels\` + \`entryLabels\`.
|
|
15686
15686
|
|
|
15687
15687
|
` + collList + "\n\nUse `collections action=list` for field schemas, `entries action=get` for full records."
|
|
@@ -15709,10 +15709,10 @@ Implementation: \`src/lib/analytics.ts\`. Workspace-scoped events MUST use \`wit
|
|
|
15709
15709
|
Browse: \`entries action=list collection=tracking-events\`.`
|
|
15710
15710
|
);
|
|
15711
15711
|
sections.push(
|
|
15712
|
-
"## Knowledge Graph\nEntries are connected via typed relations (`entryRelations` table). Relations are bidirectional and collection-agnostic \u2014 any entry can link to any other entry.\n\n**Recommended relation types** (extensible \u2014 any string accepted):\n- `governs` \u2014 a rule constrains behavior of a feature\n- `defines_term_for` \u2014 a glossary term is canonical vocabulary for a feature/area\n- `belongs_to` \u2014 a feature belongs to a product area or parent concept (WP-641 typed successors: `anchored_to`, `authority_domain`)\n- `informs` \u2014 a decision or insight informs a feature\n- `
|
|
15712
|
+
"## Knowledge Graph\nEntries are connected via typed relations (`entryRelations` table). Relations are bidirectional and collection-agnostic \u2014 any entry can link to any other entry.\n\n**Recommended relation types** (extensible \u2014 any string accepted):\n- `governs` \u2014 a rule constrains behavior of a feature\n- `defines_term_for` \u2014 a glossary term is canonical vocabulary for a feature/area\n- `belongs_to` \u2014 a feature belongs to a product area or parent concept (WP-641 typed successors: `anchored_to`, `authority_domain`)\n- `informs` \u2014 a decision or insight informs a feature\n- `surfaces_tension_in` \u2014 a tension exists within a feature area\n- `related_to`, `depends_on`, `replaces`, `conflicts_with`, `references`, `confused_with`\n\nEach relation type is defined as a glossary entry (prefix `GT-REL-*`) to prevent terminology drift. **Workflow-owned, NOT generic:** `domain_routed_to` (a question routed to a domain) \u2014 use the `question` tool (`action=create`/`adopt`, `domain=<slug>`), never `relations action=create`; the generic door has no replace/re-judge logic, so a raw write can leave duplicate routing edges and a stale suggested owner.\n\n**Tools:**\n- `context action=gather` \u2014 get the full context around any entry (multi-hop graph traversal)\n- `relations action=suggest` \u2014 discover potential connections for an entry\n- `relations action=create` \u2014 create a typed link between two entries\n- `relations action=find` \u2014 list direct relations for an entry\n\n**Convention:** When creating or updating entries in governed collections, always use `relations action=suggest` to discover and create relevant relations."
|
|
15713
15713
|
);
|
|
15714
15714
|
sections.push(
|
|
15715
|
-
"## Creating Knowledge\n**Entries:** Use `capture` as the primary tool for creating new entries. It handles the full workflow in one call:\n1. Creates the entry with collection-aware defaults (auto-fills dates, infers domains, sets priority)\n2. Auto-links related entries from across the chain (up to 5 confident matches)\n3. Returns a quality scorecard (X/10) with actionable improvement suggestions\n\n**Smart profiles** exist for: `tensions`, `business-rules`, `glossary`, `decisions`, `features`, `audiences`, `strategy`, `standards`, `
|
|
15715
|
+
"## Creating Knowledge\n**Entries:** Use `capture` as the primary tool for creating new entries. It handles the full workflow in one call:\n1. Creates the entry with collection-aware defaults (auto-fills dates, infers domains, sets priority)\n2. Auto-links related entries from across the chain (up to 5 confident matches)\n3. Returns a quality scorecard (X/10) with actionable improvement suggestions\n\n**Smart profiles** exist for: `tensions`, `business-rules`, `glossary`, `decisions`, `features`, `audiences`, `strategy`, `standards`, `chains`, `tracking-events`.\nAll other collections use the `ENT-{random}` fallback profile.\n\n**Processes:** Use `chain action=create` with a template (e.g., `strategy-coherence`, `idm-proposal`). Fill links with `chain action=edit`.\n\n**Prompts** (invoke via MCP prompt protocol):\n- `name-check` \u2014 verify a name against glossary conventions\n- `draft-decision-record` \u2014 scaffold a decision entry\n- `review-against-rules` \u2014 check work against business rules for a domain\n- `draft-rule-from-context` \u2014 create a new business rule from context\n\nUse `quality action=check` to score existing entries retroactively.\nUse `entries action=update` for post-creation adjustments (status changes, field updates, deprecation)."
|
|
15716
15716
|
);
|
|
15717
15717
|
sections.push(
|
|
15718
15718
|
"## Where to Go Next\n- **Create entry** \u2192 `capture` tool (auto-links + quality score in one call)\n- **Full context** \u2192 `context action=gather` (by entry ID or task description)\n- **Discover links** \u2192 `relations action=suggest`\n- **Quality audit** \u2192 `quality action=check`\n- **Terminology** \u2192 `name-check` prompt or `productbrain://terminology` resource\n- **Schema details** \u2192 `productbrain://collections` resource or `collections action=list`\n- **Labels** \u2192 `productbrain://labels` resource or `collections action=label-list`\n- **Any collection** \u2192 `productbrain://{slug}/entries` resource\n- **Log a decision** \u2192 `draft-decision-record` prompt\n- **Growth funnel** \u2192 `productbrain://growth-funnel` resource or `entries action=list collection=strategy status=draft`\n- **Audiences** \u2192 `productbrain://audiences/entries` resource or `entries action=list collection=audiences`\n- **Session identity** \u2192 `workspace action=whoami`\n- **Health check** \u2192 `workspace action=check`\n- **Debug MCP calls** \u2192 `workspace action=audit`"
|
|
@@ -16495,4 +16495,4 @@ export {
|
|
|
16495
16495
|
createProductBrainServer,
|
|
16496
16496
|
initFeatureFlags
|
|
16497
16497
|
};
|
|
16498
|
-
//# sourceMappingURL=chunk-
|
|
16498
|
+
//# sourceMappingURL=chunk-NGTA422J.js.map
|