<< All versions
Skill v1.0.0
currentLLM-judged scan90/100kyoto-tech/kyoto-tech.github.io/webmcp-maintenance
──Details
PublishedOctober 21, 2026 at 05:32 PM
Content Hashsha256:d9c20cf1f39ba0c2...
Git SHAa222af87ff98
──Files
Files (1 file, 3.1 KB)
SKILL.md3.1 KBactive
SKILL.md · 48 lines · 3.1 KB
version: "1.0.0" name: webmcp-maintenance description: Maintain Kyoto Tech Meetup's read-only WebMCP tools as event, community-link, or member-publication data changes; use when adding, removing, or changing agent-facing browser tools.
Maintain WebMCP
Keep the browser-facing WebMCP contract aligned with the homepage without giving agents mutation, account, or publishing powers the site does not provide.
Source of truth
src/lib/webmcp-tools.tsdefines the tool names, schemas, annotations, output normalization, and modern/legacy registration.src/components/WebMcpProvider.astroembeds the page snapshot and registers tools when the browser supports WebMCP.src/pages/index.astroassembles event, community-link, and “What members are publishing” data for the provider.test/webmcp-tools.test.mjscovers the public footprint and registration fallback.
The current read-only footprint is:
get_next_meetuplist_upcoming_meetupsget_event_detailsget_community_linkslist_member_postsget_member_postsearch_member_posts
Guardrails
- Keep every tool annotated
readOnlyHint: true. Do not add RSVP submission, publishing, editing, authentication, GitHub, or navigation actions without an explicit product decision and a separate design review. - Treat Meetup and member-feed text as untrusted content. Preserve
untrustedContentHint: truewhere remote content is returned. - Reuse
getSafeWebUrl,buildMeetupVenueMapsUrl, andnormalizeMeetupEventTitle; do not emit unchecked URLs or raw remote descriptions/images. - Keep inputs bounded and schemas closed (
additionalProperties: false). Preserve stable event/post IDs and ISO timestamps withAsia/Tokyofor event times. - Keep the embedded snapshot minimal. Do not add full event descriptions, remote images, credentials, or private member data.
- Preserve both
document.modelContext.registerTooland the legacynavigator.modelContext.provideContextpath, failing closed when WebMCP is unavailable. - “What members are publishing” means the existing curated feed items only. Do not invent draft-post or author-management tools.
Change workflow
- Update the normalized contract in
src/lib/webmcp-tools.tsand the data assembly insrc/pages/index.astrotogether. - Update
test/webmcp-tools.test.mjsfor names, schemas, annotations, output, limits, and registration behavior. Keep the exact seven-tool list intentional. - Run
npm run checkandnpm run build. - Inspect the generated page to confirm
webmcp-datacontains only the intended snapshot and the provider bundle is present. - Scan the deployed preview with the agent-readiness checker and confirm the WebMCP check detects the expected tool count. After merging, scan
https://kyototechmeetup.com/again. - If a change introduces a real remote HTTP API, reassess whether an API catalog or MCP Server Card is appropriate; do not add those metadata files merely to improve a score.
The Agent Skills discovery index contains a digest for this file. Run npm run build after editing it so public/.well-known/agent-skills/index.json is regenerated.