Skip to content

Basic WebMCP draft / discussion#26

Draft
rektide wants to merge 2 commits into
disnet:mainfrom
rektide:webmcp-draft
Draft

Basic WebMCP draft / discussion#26
rektide wants to merge 2 commits into
disnet:mainfrom
rektide:webmcp-draft

Conversation

@rektide

@rektide rektide commented Feb 12, 2026

Copy link
Copy Markdown

This perhaps accomplishes the very basics of #25, offering some simple WebMCP tools on Skyboard! 🎉

Issues with this draft

This code does not fill me with joy:

  1. It invents a brand new data-access layer to the database. Boo. I'd love to find a better way to re-use the data-layer. But it's kind of built into the Svelte components, which makes it hard to re-use in this code?
  2. I'd love to lean into the declarative capabilities available in WebMCP. It would mean having a bunch of forms that are maybe not visible, but present and marked up, offering all the operations we would want to offer. If we could figure this out, problem Fix OAuth scoped permissions and task display #1 goes away! 🚀

Epistemic Status

This is posted as a very early discussion piece. It is largely LLM generated. Research artifacts are included. I would expect to make a new branch & start over with a real proposal. I also am not really sure how to test this code for real at the moment, but I genuinely think it might just work perhaps & would not be far from being actually shippable, which I don't recommend, but endorse as hereby "somewhat mature" a draft.

rektide added 2 commits February 12, 2026 01:21
Created three detailed documentation files in doc/discovery/ analyzing:

- webmcp.md: Initial broad overview of MCP-B (MCP-B.ai, WebMCP-org) covering protocol, transports, SDK, extension API, and ecosystem
- webmcp-webmachinelearning.md: Deep dive into W3C WebMCP specification (webmachinelearning/webmcp), API design, security model, and relationship to MCP-B
- webmcp-provider.md: Comprehensive guide for web developers implementing WebMCP, including 5 tool design patterns, security best practices, framework integrations, and real-world examples

The documentation covers the full spectrum from specification understanding to practical implementation guidance for adding WebMCP to existing web pages.
Implement WebMCP (W3C Model Context Protocol) tools to expose skyboard
functionality to AI agents and browser assistants.

Created src/mcp/ module with:
- types.ts: Type definitions for MCP tools
- card-tools.ts: Three tools (list-cards, add-card, update-card)
- index.ts: MCP provider registration and lifecycle management
- README.md: Complete documentation

Modified src/lib/auth.svelte.ts:
- Initialize MCP provider on successful authentication
- Cleanup MCP tools on logout

Features:
- list-cards: Query cards with optional board/column filtering
- add-card: Create new cards (requires auth)
- update-card: Modify cards via Op records for collaboration support
- Event system for UI updates (skyboard-card-change)
- Graceful fallback when WebMCP not available
- Integration with existing Dexie storage and sync system
@disnet

disnet commented Feb 13, 2026

Copy link
Copy Markdown
Owner

I like the idea of exposing tools for webmcp but lets hold off for a little bit. I'm about to land a refactor and would like to feel a bit more confident about the skyboard foundations before adding it.

@rektide

rektide commented Feb 14, 2026

Copy link
Copy Markdown
Author

I'll open a new attempt at some point!

Feels like there was significant rework around the time you posted this, with the cli. But I assume you are still doing some big fundamental work / refacotr, to continue to hold?

@disnet

disnet commented Feb 14, 2026

Copy link
Copy Markdown
Owner

#30 was the main refactor I was working on. things should be stable now for you to give it a go.

definitely feel free to restructure actions/data out of the components. I didn't push claude too much to factor things nicely initially.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants