mcpField
W
WASM MCP Server

WASM MCP Server

本地服务
github.com/beekmarks开发工具4188 周前更新

关于 WASM MCP Server

WASM MCP Server 是一个概念验证项目,演示如何在浏览器中通过 WebAssembly 运行 MCP 服务。项目包含计算器工具和键值存储资源,展示了 MCP 工具与资源在浏览器环境中的集成方式。

主要功能

  1. 01基于浏览器的 MCP 服务
  2. 02四则运算计算器工具
  3. 03键值存储功能
  4. 04基于模板路径的资源访问
  5. 05自定义浏览器传输层

适用场景

  1. 01学习在浏览器中运行 MCP 服务的方式
  2. 02验证 MCP 工具与资源在浏览器中的集成
  3. 03作为自定义浏览器传输层的参考实现

MCP 相关

该项目是一个 MCP 服务,通过自定义浏览器传输层向 MCP 客户端暴露计算器工具以及 storage://{key} 形式的存储资源。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

WASM MCP 服务

一个概念验证实现,展示了在 Web 浏览器中以 WebAssembly(WASM)运行的 Model Context Protocol(MCP)服务。本项目演示了在浏览器环境中集成 MCP 工具和资源。

功能

计算器工具
  • 执行基本算术运算(加、减、乘、除)
  • 输入验证和错误处理
  • 实时计算结果
存储系统
  • 键值存储功能
  • 使用字符串键设置和检索值
  • 在浏览器会话中持久存储
  • 基于模板的资源处理

技术实现

服务组件
  • server.ts:MCP 服务核心实现,包含工具和资源定义
  • main.ts:客户端集成和 UI 交互处理
  • browser-transport.ts:用于浏览器通信的自定义传输层
架构
  • 使用 Model Context Protocol SDK 实现服务
  • 实现自定义浏览器传输层
  • 使用回调函数注册工具
  • 资源使用带参数替换的模板路径
核心概念
  1. 工具

    • 使用 server.tool() 注册
    • 通过回调函数执行
    • 使用 Zod 进行架构验证
  2. 资源

    • 基于模板的路径(例如,storage://{key})
    • 通过 readCallback 访问
    • 参数化资源处理

使用方法

计算器
  1. 选择一项运算(加、减、乘、除)
  2. 输入两个数字
  3. 点击“Calculate”查看结果
  4. 对无效输入和除以零进行错误处理
存储
  1. 在相应字段中输入键和值
  2. 点击“Set Storage”存储值
  3. 输入键并点击“Get Storage”检索值
  4. 对成功操作和错误提供反馈

依赖项

  • @modelcontextprotocol/sdk
  • Zod(用于架构验证)
  • TypeScript
  • Vite(用于开发和构建)

项目结构

mcp-wasm-poc/
├── src/
│   └── web/
│       ├── server.ts      # MCP server implementation
│       ├── main.ts        # Client-side logic
│       └── browser-transport.ts # Browser transport layer
├── index.html            # Web interface
└── package.json         # Project dependencies

错误处理

  • 服务初始化错误
  • 工具执行错误
  • 资源访问错误
  • 输入验证
  • 传输层错误

后续改进

  • 增加计算器运算
  • 支持跨会话持久存储
  • 改进 UI/UX
  • 增加 MCP 工具和资源
  • 优化 WASM

开发

这是一个概念验证实现,旨在展示使用 WebAssembly 在 Web 浏览器中运行 MCP 服务的可行性。该实现着重演示 MCP 核心概念,同时保持简单清晰。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。