Skip to main content
Glama

WASM MCP Server

by beekmarks

WASM MCP サーバー

ウェブブラウザ内でWebAssembly (WASM) で実行されるModel Context Protocol (MCP) サーバーの概念実証実装です。このプロジェクトは、ブラウザ環境におけるMCPツールとリソースの統合を実証します。

特徴

計算ツール

  • 基本的な算術演算(加算、減算、乗算、除算)を実行します
  • 入力検証とエラー処理
  • リアルタイム計算結果

ストレージシステム

  • キーバリューストレージ機能
  • 文字列キーを使用して値を設定および取得する
  • ブラウザセッション内の永続的なストレージ
  • テンプレートベースのリソース処理

技術的実装

サーバーコンポーネント

  • server.ts : ツールとリソースの定義を含むコア MCP サーバーの実装
  • main.ts : クライアント側の統合とUIインタラクションの処理
  • browser-transport.ts : ブラウザ通信用のカスタムトランスポート層

建築

  • サーバーの実装にはモデルコンテキストプロトコルSDKを使用します
  • カスタムブラウザトランスポート層を実装する
  • ツールはコールバック関数に登録されます
  • リソースはパラメータ置換によるテンプレートパスを使用します

重要な概念

  1. ツール
    • server.tool()を使用して登録されました
    • コールバック関数経由で実行
    • Zodを使用したスキーマ検証
  2. リソース
    • テンプレートベースのパス(例: storage://{key}
    • readCallback経由でアクセス
    • パラメータ化されたリソース処理

使用法

電卓

  1. 演算を選択します(加算、減算、乗算、除算)
  2. 2つの数字を入力してください
  3. 「計算」をクリックして結果を確認してください
  4. 無効な入力とゼロ除算のエラー処理

ストレージ

  1. それぞれのフィールドにキーと値を入力します
  2. 「保存設定」をクリックして値を保存します
  3. キーを入力し、「ストレージを取得」をクリックして値を取得します
  4. 成功した操作とエラーに関するフィードバックが提供されます

依存関係

  • @モデルコンテキストプロトコル/sdk
  • Zod(スキーマ検証用)
  • タイプスクリプト
  • 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を用いてウェブブラウザ上でMCPサーバーを実行することの実現可能性を示す概念実証実装です。この実装は、シンプルさと明瞭さを維持しながら、MCPの中核概念を示すことに重点を置いています。

-
security - not tested
F
license - not found
-
quality - not tested

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

このサーバーは、算術演算やセッションベースのキー値ストレージなどの機能を使用して、Web ブラウザーでモデル コンテキスト プロトコルを実行できるようにします。

  1. 特徴
    1. 計算ツール
    2. ストレージシステム
  2. 技術的実装
    1. サーバーコンポーネント
    2. 建築
    3. 重要な概念
  3. 使用法
    1. 電卓
    2. ストレージ
  4. 依存関係
    1. プロジェクト構造
      1. エラー処理
        1. 将来の機能強化
          1. 発達

            Related MCP Servers

            • A
              security
              F
              license
              A
              quality
              A server that provides tools for performing basic arithmetic operations (addition, subtraction, multiplication, division) via the Model Context Protocol.
              Last updated -
              4
              JavaScript
              • Apple
            • A
              security
              F
              license
              A
              quality
              A simple Model Context Protocol server that provides basic arithmetic operations (addition, subtraction, multiplication, division) as tools that can be called by Large Language Models.
              Last updated -
              4
              JavaScript
            • A
              security
              A
              license
              A
              quality
              A Model Context Protocol server that enables LLMs to interact with web pages, take screenshots, generate test code, scrape web pages, and execute JavaScript in a real browser environment.
              Last updated -
              29
              39
              11
              TypeScript
              MIT License
            • -
              security
              A
              license
              -
              quality
              A simple implementation of a Model Context Protocol server that demonstrates core functionality including mathematical tools (add, subtract) and personalized greeting resources.
              Last updated -
              58
              Python
              GPL 3.0

            View all related MCP servers

            MCP directory API

            We provide all the information about MCP servers via our MCP API.

            curl -X GET 'https://glama.ai/api/mcp/v1/servers/beekmarks/mcp-wasm'

            If you have feedback or need assistance with the MCP directory API, please join our Discord server