Skip to content

Commit 158a9f0

Browse files
committed
docs: add WebMCP strategy
1 parent 7c20078 commit 158a9f0

3 files changed

Lines changed: 31 additions & 2 deletions

File tree

AGENTS.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ Use `bun run ui:check` as the fast static guardrail for source CSS drift. Use
8686
- Baseline target: Baseline Widely Available. Before frontend, UI, CSS, accessibility, browser proof, or web-design changes in `packages/website`, search and retrieve current Chrome Modern Web Guidance, then apply `packages/website/DESIGN.md` and the website token system.
8787
- Prefer semantic HTML, native controls, platform CSS, and browser primitives before custom JavaScript. Keep landmarks, headings, links, forms, accessible names, focus states, touch targets, empty/error/loading states, and reduced-motion behavior clear in the rendered DOM and accessibility tree.
8888
- Run `bun run agentic:check` for the advisory source proof path (`plans:validate` plus `ui:check`). Use `bun run agentic:browser-proof <route>` (same rendered lane as `agentic:verify`) when layout, interaction, motion, or public routes need browser proof at the repo's 375 / 1024 / 1440 viewport loop.
89-
- WebMCP is strategy-only in v1. Do not ship runtime WebMCP tools unless explicitly requested; future tools must be visible, user-confirmable, public-safe, and must not expose Directus private state, database credentials, pending intake, steward notes, hidden admin actions, destructive operations, or background-only actions.
89+
- WebMCP is strategy-only in v1. Do not ship runtime WebMCP tools unless explicitly requested; future tools must follow `docs/agentic-webmcp-strategy.md`, stay visible/user-confirmable/public-safe, and must not expose Directus private state, database credentials, pending intake, steward notes, hidden admin actions, destructive operations, or background-only actions.
9090

9191
Generated public JSON routes include `/locations.json` and `/impact-sources.json`, derived from the approved operational content snapshot. Keep those outputs public-safe.
9292

CLAUDE.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ Website source and config live under `packages/website`:
6262
- Baseline target: Baseline Widely Available. Before frontend, UI, CSS, accessibility, browser proof, or web-design changes in `packages/website`, search and retrieve current Chrome Modern Web Guidance, then apply `packages/website/DESIGN.md` and the website token system.
6363
- Prefer semantic HTML, native controls, platform CSS, and browser primitives before custom JavaScript. Keep landmarks, headings, links, forms, accessible names, focus states, touch targets, empty/error/loading states, and reduced-motion behavior clear in the rendered DOM and accessibility tree.
6464
- Run `bun run agentic:check` for the advisory source proof path (`plans:validate` plus `ui:check`). Use `bun run agentic:browser-proof <route>` (same rendered lane as `agentic:verify`) when layout, interaction, motion, or public routes need browser proof at the repo's 375 / 1024 / 1440 viewport loop.
65-
- WebMCP is strategy-only in v1. Do not ship runtime WebMCP tools unless explicitly requested; future tools must be visible, user-confirmable, public-safe, and must not expose Directus private state, database credentials, pending intake, steward notes, hidden admin actions, destructive operations, or background-only actions.
65+
- WebMCP is strategy-only in v1. Do not ship runtime WebMCP tools unless explicitly requested; future tools must follow `docs/agentic-webmcp-strategy.md`, stay visible/user-confirmable/public-safe, and must not expose Directus private state, database credentials, pending intake, steward notes, hidden admin actions, destructive operations, or background-only actions.
6666

6767
Generated public JSON routes include `/locations.json` and `/impact-sources.json`, derived from the approved operational content snapshot. Keep those outputs public-safe.
6868

docs/agentic-webmcp-strategy.md

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
# Network WebMCP Strategy
2+
3+
Status: strategy only. Do not ship runtime WebMCP tools in v1.
4+
5+
## Candidate Visible Tools
6+
7+
- Public discovery: summarize visible chapters, guilds, locations, initiatives, public steward profiles, and approved impact context.
8+
- Public map and listings: explain visible filters, selected-node details, public JSON route status, and route-to-route navigation.
9+
- Public contribution paths: focus or prefill visible public forms only when the form is already on screen.
10+
- Local development diagnostics: report visible route, layout, accessibility, console, `/llms.txt`, and WebMCP discovery status from the browser-proof lane.
11+
12+
## Forbidden Tools
13+
14+
- Directus private records, pending intake, steward review notes, emails, IP addresses, user agents, spam metadata, database credentials, or admin-only procedures.
15+
- Hidden admin actions, database migrations, operational content writes, destructive operations, deploys, or background-only actions.
16+
- Any tool that bypasses the public/private projection contracts in `packages/agent`, `packages/shared`, or generated public snapshots.
17+
18+
## User Confirmation And Public Safety
19+
20+
- Runtime tools must be page-visible, page-scoped, and exposed only when the normal UI state already supports the action.
21+
- Form submission, edits, invitations, imports, publishes, or any state-changing action must require an explicit user confirmation in the visible UI.
22+
- Tool output must come from public page DOM, public JSON routes, or approved snapshot data. Private Directus or database state is never a WebMCP source.
23+
24+
## Proof Before Runtime
25+
26+
- `bun run agentic:check` and the relevant `.plans` status must be green or explicitly explained.
27+
- `bun run agentic:browser-proof <route>` must capture screenshots at 375 / 1024 / 1440, accessibility-tree/axe results, console/page errors, overflow, CLS, `/llms.txt`, reduced-motion behavior, and WebMCP discovery.
28+
- A Chrome DevTools MCP or Puppeteer WebMCP pass must prove `list_webmcp_tools` / tool discovery returns only expected visible tools and `execute_webmcp_tool` cannot access forbidden state.
29+
- Candidate tools need deterministic tests for schema validation, strict code-side input handling, graceful errors, and post-action UI state before any origin-trial or production exposure.

0 commit comments

Comments
 (0)