wasm-mcp

Read-only MCP server for the WebAssembly spec: instructions, types, sections, search, proposals.

我該用這個嗎

品質與安全性

A
說明品質
97%
結構描述完整度
88%
命名品質
80%
汙染風險
100%
權限相符程度
100%
協定合規性
100%

發現項目(1)

  • LOWTool 'type_get' description lacks action verb在 type_get 中

根據工具定義與協定合規性的自動化分析。

上下文成本

~1,330Token(工具定義)
~929 B典型回應大小
中等的注意力影響(128k 上下文的 1.04%)

這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。

安裝

一鍵安裝

將以下內容加入你的 `claude_desktop_config.json` 檔案:

{
  "mcpServers": {
    "wasm-mcp": {
      "command": "npx",
      "args": [
        "wasm-mcp"
      ]
    }
  }
}

可執行的套件

npmwasm-mcp0.2.16stdio

遠端端點

https://wasm-mcp.chicoxyzzy.workers.dev/mcpstreamable-http
https://mcp.xyzzylabs.ai/wasm/mcpstreamable-http

它能做什麼

工具清單

工具(9)

🟢 唯讀🟡 寫入🔴 刪除⚪ 未知
🟢spec_version

Return this server's package version plus the pinned upstream commit SHA(s) the bundled data was indexed from.

輸入結構描述

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢instruction_get(mnemonic, opcode)

Fetch one WebAssembly instruction by mnemonic (`i32.add`) or binary opcode (`0x6a`, multi-byte `0xfd 0x89 0x02`): opcode bytes, category, introducing version, stack type signature, validation/execution anchors + URLs, and `traps` (runtime trap conditions with canonical names; empty + `can_trap:false` when it never traps).

輸入結構描述

{
  "type": "object",
  "properties": {
    "mnemonic": {
      "type": "string",
      "description": "Instruction mnemonic, e.g. `i32.add`. Case-insensitive, exact."
    },
    "opcode": {
      "type": "string",
      "description": "Binary opcode hex, e.g. `0x6a` or `0xfd 0x89 0x02`. Exact."
    }
  },
  "additionalProperties": false
}
🟢instruction_list(category, introduced_in, prefix, can_trap)

Enumerate WebAssembly instructions, filterable by `category`, `introduced_in` (1.0|2.0|3.0), mnemonic `prefix`, and `can_trap` (only trapping / only non-trapping). Rows (incl. `can_trap`) sorted by opcode.

輸入結構描述

{
  "type": "object",
  "properties": {
    "category": {
      "type": "string",
      "enum": [
        "control",
        "numeric",
        "parametric",
        "variable",
        "table",
        "memory",
        "ref",
        "i31",
        "struct",
        "array",
        "extern",
        "vec"
      ],
      "description": "Instruction category."
    },
    "introduced_in": {
      "type": "string",
      "enum": [
        "1.0",
        "2.0",
        "3.0"
      ],
      "description": "Introducing version."
    },
    "prefix": {
      "type": "string",
      "description": "Mnemonic prefix, e.g. `i32.`. Case-insensitive."
    },
    "can_trap": {
      "type": "boolean",
      "description": "Keep only instructions that can (true) / cannot (false) trap."
    }
  },
  "additionalProperties": false
}
🟢instruction_search(query, limit)

Ranked free-text search across instruction mnemonics, categories, and opcode hex. Returns hits with a `matched_on` field.

輸入結構描述

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Search text."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "description": "Max hits."
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}
🟢type_get(name)

Look up a value type (`i32`, `funcref`, `v128`, …) or type form (`functype`, `limits`, `memtype`, …): classification, sibling members, defining clause prose, formal refs, and URL.

輸入結構描述

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "description": "Type or type-form name. Case-insensitive, exact."
    }
  },
  "required": [
    "name"
  ],
  "additionalProperties": false
}
🟢section_get(id, spec)

Fetch one spec clause by id or anchor across `core` / `js-api` / `web-api` (`syntax-numtype`, `valid-unreachable`, `modules`, `streaming-modules`, …): title, prose, cross-references, SpecTec formal refs, and rendered URL.

輸入結構描述

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "Clause id or anchor."
    },
    "spec": {
      "type": "string",
      "enum": [
        "core",
        "js-api",
        "web-api"
      ],
      "description": "Which spec (default core)."
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false
}
🟢section_list(spec, path, anchor_prefix, titled_only, max_level)

Navigate the clause tree of a spec (`core` / `js-api` / `web-api`), filterable by source `path` (`syntax`, `valid`, `exec`, `binary`, `text`, `appendix`), `anchor_prefix`, `titled_only`, and `max_level`.

輸入結構描述

{
  "type": "object",
  "properties": {
    "spec": {
      "type": "string",
      "enum": [
        "core",
        "js-api",
        "web-api"
      ],
      "description": "Which spec (default core)."
    },
    "path": {
      "type": "string",
      "description": "Source path / prefix."
    },
    "anchor_prefix": {
      "type": "string",
      "description": "Id/anchor prefix."
    },
    "titled_only": {
      "type": "boolean",
      "description": "Drop anchor-only blocks."
    },
    "max_level": {
      "type": "integer",
      "minimum": 1,
      "maximum": 6,
      "description": "Cap heading depth."
    }
  },
  "additionalProperties": false
}
🟢spec_search(query, spec, limit)

Full-text search across clause anchors, titles, and prose of a spec (`core` / `js-api` / `web-api`). Ranked anchor-exact > title > anchor > prose, with snippets for body matches.

輸入結構描述

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Search text."
    },
    "spec": {
      "type": "string",
      "enum": [
        "core",
        "js-api",
        "web-api"
      ],
      "description": "Which spec (default core)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "description": "Max hits."
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}
🟢proposal_list(status, phase, champion, affects, contains)

List WebAssembly proposals + phases. Filter by `status` (phase-0…phase-5, finished, inactive), `phase` (0–5), `champion`, `affects` (core|js-api|web-api), or `contains`.

輸入結構描述

{
  "type": "object",
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "phase-0",
        "phase-1",
        "phase-2",
        "phase-3",
        "phase-4",
        "phase-5",
        "finished",
        "inactive"
      ],
      "description": "Lifecycle status."
    },
    "phase": {
      "type": "integer",
      "minimum": 0,
      "maximum": 5,
      "description": "Numeric phase 0–5."
    },
    "champion": {
      "type": "string",
      "description": "Champion substring."
    },
    "affects": {
      "type": "string",
      "description": "Affected spec (finished only)."
    },
    "contains": {
      "type": "string",
      "description": "Name/champion substring."
    }
  },
  "additionalProperties": false
}

社群

為此伺服器評分

證據

近期觀測

已驗證未記錄版本9 個工具
已驗證未記錄版本9 個工具
已驗證未記錄版本9 個工具
已驗證未記錄版本9 個工具
已驗證未記錄版本9 個工具
已驗證未記錄版本9 個工具