MCP server for the WebAssembly specification. SHA-pinned instructions, types, sections, full-text search, and proposals — read-only, deterministic, hosted-safe. Not affiliated with the W3C WebAssembly CG/WG.
- ✓Open-source license (MIT)
- ✓Actively maintained (<30d)
- ✓Clear description
- ✓Topics declared
claude mcp add wasm-mcp -- npx -y wasm-mcp{
"mcpServers": {
"wasm-mcp": {
"command": "npx",
"args": ["-y", "wasm-mcp"]
}
}
}MCP Servers overview
# wasm-mcp
Model Context Protocol server for the
[WebAssembly core specification](https://webassembly.github.io/spec/core/).
SHA-pinned, read-only, deterministic — safe to host as a public
unauthenticated endpoint.
> Not affiliated with, endorsed by, or sponsored by the W3C
> WebAssembly Community Group or Working Group.
## What it gives you
- `spec_version` — the pinned upstream commit and package version.
- `instruction_get` — opcode bytes, category, introducing version,
stack type signature, validation + execution prose anchors / URLs,
and trap conditions (`traps` + `can_trap`), by mnemonic (`i32.add`)
or binary opcode (`0x6a`).
- `instruction_list` — enumerate, filterable by category (numeric,
vector, reference, parametric, variable, table, memory, control,
ref, i31, struct, array, extern), introducing version, or prefix.
- `instruction_search` — ranked free-text search across mnemonics,
categories, and opcodes.
- `type_get` — value types (number / vector / reference) and type
forms (`functype`, `limits`, `memtype`, …) with defining prose.
- `section_get` — one spec clause by id / anchor (structure,
validation, execution, binary, text), with prose, cross-references,
SpecTec formal-rule references, and the rendered URL.
- `section_list` — navigate the clause tree by area or anchor prefix.
- `spec_search` — full-text search across anchors, titles, and prose.
- `proposal_list` — WebAssembly proposals and their phases (from the
pinned `WebAssembly/proposals` repo), filterable by status, phase,
champion, or affected spec.
`section_get`, `section_list`, and `spec_search` take a `spec`
argument covering all three specs in the `WebAssembly/spec` repo:
`core` (default), `js-api` (the JavaScript embedding API), and
`web-api` (Web-platform integration). The instruction and type tools
are `core`-only.
## Contract
Every tool is:
- **Read-only.** No state mutation, no writes outside an optional
local cache.
- **Deterministic.** Same input → same output, over the pinned spec
commit recorded in [`vendor/PINNED.txt`](vendor/PINNED.txt).
- **No execution.** Never compiles, validates-by-running,
instantiates, or runs any WebAssembly or arbitrary code. Validation
and reduction rules are returned as data.
- **No auth, no secrets, no PII.** Usable anonymously.
- **No network at request time.** All spec data is fetched and
indexed at build time and baked into the package.
## Install (stdio, local)
```bash
npx wasm-mcp
```
Wire into Claude Code by adding to your project's `.mcp.json`:
```json
{
"mcpServers": {
"wasm": {
"type": "stdio",
"command": "npx",
"args": ["wasm-mcp"]
}
}
}
```
## Hosted Worker
The Cloudflare Worker in [`worker/`](worker/) exposes the same tool
surface as the stdio package over streamable HTTP at a single
unauthenticated endpoint, rate-limited per source IP (30 req / 60 s):
```
https://wasm-mcp.chicoxyzzy.workers.dev/mcp
```
`GET /health` reports status and the pinned SHAs; `GET /privacy`
states the anonymous, no-storage posture. All spec data is bundled
into the Worker, so it does pure in-memory lookups — no storage, no
network at request time.
## Releases & data refresh
The pinned commits live in [`vendor/PINNED.txt`](vendor/PINNED.txt)
and are reported by `spec_version`. A scheduled GitHub Actions
workflow ([`refresh.yml`](.github/workflows/refresh.yml)) SHA-diffs
the upstream repos daily; when a pin moves it re-pins, bumps the patch
version, and tags a release, which publishes the npm package
([`release.yml`](.github/workflows/release.yml)) and redeploys the
Worker ([`deploy-worker.yml`](.github/workflows/deploy-worker.yml)).
Maintainers:
- **npm publish** uses [Trusted Publishing](https://docs.npmjs.com/trusted-publishers)
(OIDC) — no `NPM_TOKEN`. Configure it once on npmjs.com (wasm-mcp →
Settings → Trusted Publisher → GitHub Actions: org `xyzzylabs`, repo
`wasm-mcp`, workflow `release.yml`).
- **Worker deploy** needs `CLOUDFLARE_API_TOKEN` + `CLOUDFLARE_ACCOUNT_ID`,
stored as **environment** secrets on the `cloudflare` GitHub
Environment (not repo-wide) with a `main` + `v*` deployment rule —
see [Securing the deploy credentials](https://github.com/xyzzylabs/wasm-mcp/blob/main/docs/deployment.md#securing-the-deploy-credentials).
- For the refresh workflow's tag push to trigger release + deploy,
add a `WORKFLOW_PAT` PAT (`contents: write` + `workflows`) —
without it, refresh still re-pins and tags, but you run release /
deploy manually. (Same secret name tc39-mcp uses, so one PAT — or an
`xyzzylabs` org secret — can serve both repos.)
## License
MIT — see [`LICENSE`](LICENSE).
What people ask about wasm-mcp
What is xyzzylabs/wasm-mcp?
+
xyzzylabs/wasm-mcp is mcp servers for the Claude AI ecosystem. MCP server for the WebAssembly specification. SHA-pinned instructions, types, sections, full-text search, and proposals — read-only, deterministic, hosted-safe. Not affiliated with the W3C WebAssembly CG/WG. It has 2 GitHub stars and was last updated today.
How do I install wasm-mcp?
+
You can install wasm-mcp by cloning the repository (https://github.com/xyzzylabs/wasm-mcp) or following the README instructions on GitHub. ClaudeWave also provides quick install blocks on this page.
Is xyzzylabs/wasm-mcp safe to use?
+
Our security agent has analyzed xyzzylabs/wasm-mcp and assigned a Trust Score of 87/100 (tier: Trusted). See the full breakdown of passed checks and flags on this page.
Who maintains xyzzylabs/wasm-mcp?
+
xyzzylabs/wasm-mcp is maintained by xyzzylabs. The last recorded GitHub activity is from today, with 0 open issues.
Are there alternatives to wasm-mcp?
+
Yes. On ClaudeWave you can browse similar mcp servers at /categories/mcp, sorted by popularity or recent activity.
Deploy wasm-mcp to your cloud
Ship this repo to production in minutes. Each platform spins up its own environment with editable env vars.
Maintain this repo? Add a badge to your README
Drop the badge into your GitHub README to show it's tracked on ClaudeWave. Each badge links back to this page and reflects the live Trust Score.
[](https://claudewave.com/repo/xyzzylabs-wasm-mcp)<a href="https://claudewave.com/repo/xyzzylabs-wasm-mcp"><img src="https://claudewave.com/api/badge/xyzzylabs-wasm-mcp" alt="Featured on ClaudeWave: xyzzylabs/wasm-mcp" width="320" height="64" /></a>More MCP Servers
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.
User-friendly AI Interface (Supports Ollama, OpenAI API, ...)
An open-source AI agent that brings the power of Gemini directly into your terminal.
The fastest path to AI-powered full stack observability, even for lean teams.
🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl!
⭐AI-driven public opinion & trend monitor with multi-platform aggregation, RSS, and smart alerts.🎯 告别信息过载,你的 AI 舆情监控助手与热点筛选工具!聚合多平台热点 + RSS 订阅,支持关键词精准筛选。AI 智能筛选新闻 + AI 翻译 + AI 分析简报直推手机,也支持接入 MCP 架构,赋能 AI 自然语言对话分析、情感洞察与趋势预测等。支持 Docker ,数据本地/云端自持。集成微信/飞书/钉钉/Telegram/邮件/ntfy/bark/slack 等渠道智能推送。