Skip to main content
Glama

Server Details

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

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
xyzzylabs/wasm-mcp
GitHub Stars
2
Server Listing
wasm-mcp

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.1/5 across 9 of 9 tools scored.

Server CoherenceA
Disambiguation5/5

Each tool targets a distinct aspect of WebAssembly: instructions (get/list/search), proposals (list), spec sections (get/list/search), version info, and types. No overlapping purposes.

Naming Consistency5/5

All tools use consistent snake_case with verb_noun pattern: instruction_get, instruction_list, instruction_search, proposal_list, section_get, section_list, spec_search, spec_version, type_get.

Tool Count5/5

9 tools is well-scoped for a WebAssembly reference server, covering instructions, specs, proposals, types, and metadata without being overwhelming.

Completeness4/5

Covers core retrieval and search for instructions, specs, proposals, and types. Minor gaps like no dedicated proposal get or type list, but the set is sufficient for typical exploration tasks.

Available Tools

9 tools
instruction_getA
Read-only
Inspect

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).

ParametersJSON Schema
NameRequiredDescriptionDefault
opcodeNoBinary opcode hex, e.g. `0x6a` or `0xfd 0x89 0x02`. Exact.
mnemonicNoInstruction mnemonic, e.g. `i32.add`. Case-insensitive, exact.
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds significant context beyond readOnlyHint: true by detailing the full return payload (opcode bytes, category, version, signature, anchors, traps). No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, long sentence that front-loads the action. It is concise but could be slightly restructured for readability (e.g., splitting into two sentences).

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description thoroughly explains return fields, fulfilling the need for the agent to understand what the tool returns. No gaps remain.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and both parameter descriptions are adequate. The description does not add substantial meaning beyond what the schema already provides, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses specific verbs ('Fetch') and resources ('WebAssembly instruction'), clearly distinguishing the tool from siblings like instruction_list and instruction_search by focusing on a single instruction lookup by mnemonic or opcode.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies use when a specific mnemonic or opcode is known, but it does not explicitly state when to use this tool over alternatives (e.g., instruction_search for partial matches) nor when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

instruction_listA
Read-only
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
prefixNoMnemonic prefix, e.g. `i32.`. Case-insensitive.
can_trapNoKeep only instructions that can (true) / cannot (false) trap.
categoryNoInstruction category.
introduced_inNoIntroducing version.
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotation readOnlyHint already signals safety; description adds sort order and inclusion of can_trap, but no details on pagination, rate limits, or output structure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence with verb front-loaded, minimal but informative, no wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Missing output schema, but description mentions key output fields (can_trap, opcode sort). For a filterable list with 4 optional params, it's largely complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so description adds modest value (e.g., prefix case-insensitivity, enum listing), but no deep semantics beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description states a specific verb 'Enumerate' and resource 'WebAssembly instructions', lists all filterable parameters, and distinguishes from siblings like instruction_search and instruction_get by focusing on listing with filters.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit when-to-use or when-not-to-use guidance relative to siblings, but the filtering capabilities imply its role as a listing tool against a single instruction or search tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

proposal_listA
Read-only
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
phaseNoNumeric phase 0–5.
statusNoLifecycle status.
affectsNoAffected spec (finished only).
championNoChampion substring.
containsNoName/champion substring.
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, so the read-only nature is known. The description adds filter details, which are already in the schema, but does not disclose other behaviors like return format or pagination.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence that front-loads the purpose and then lists filters. No unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a listing tool with 0 required parameters and all filters described, the description is mostly complete. It lacks details about return format or pagination, but these are typical for list tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already explains parameters. The description repeats some values but does not add new semantic meaning beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it lists WebAssembly proposals and phases, and explicitly mentions filtering options. It is specific and distinct from sibling tools like spec_search or instruction_list.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description lists available filters but does not explicitly state when to use this tool versus alternatives. However, the context is clear as the tool is the only one for listing proposals.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

section_getA
Read-only
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesClause id or anchor.
specNoWhich spec (default core).
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The readOnlyHint annotation already indicates no side effects. The description adds value by detailing what is returned (title, prose, cross-references, etc.), providing behavioral context beyond the annotation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that front-loads the action and key details. It is slightly long due to examples but remains efficient and structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description partially explains return data (title, prose, etc.) but not the structure. The param count and annotation coverage are good, but the description could be more complete about the output format.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline 3. The description provides example clause ids and spec options, adding marginal semantic context beyond the schema's parameter descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action 'Fetch one spec clause by id or anchor' and specifies the scope across three specs, listing the included data (title, prose, etc.). It distinguishes from siblings like 'section_list' which lists sections, and 'instruction_get' which fetches instructions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains what the tool does but does not provide explicit guidance on when to use it versus alternatives. It implies use when fetching a single clause, but no 'when-not' or sibling tool references are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

section_listA
Read-only
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNoSource path / prefix.
specNoWhich spec (default core).
max_levelNoCap heading depth.
titled_onlyNoDrop anchor-only blocks.
anchor_prefixNoId/anchor prefix.
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true. The description adds context by stating it navigates (implies traversal, not just listing) and filters by various parameters. No contradictions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence with a dash-separated list. Front-loaded with main purpose. Could be slightly improved with better punctuation (e.g., parentheses for list). Efficient overall.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema, so description should hint at return format (tree structure). It does not. Also lacks mention of sorting or pagination. However, parameter details are comprehensive enough for a read-only navigation tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds meaning beyond the schema: it explains 'path' as source path/prefix, lists spec enums, caps heading depth with max_level, drops anchor-only blocks with titled_only, and identifies anchor_prefix as id/anchor prefix. This fully compensates for any schema brevity.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Navigate') and clearly identifies the resource (clause tree of a spec). It lists available specs and filter options, distinguishing it from siblings like 'section_get' (single section) and 'instruction_list' (different resource).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for exploring or filtering the clause tree but does not explicitly state when to use this tool versus alternatives like 'section_get', 'spec_search', or 'instruction_list'. No when-not or alternative guidance is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

spec_versionA
Read-only
Inspect

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

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true. The description adds what is returned but no additional behavioral context like auth requirements or side effects. Acceptable for a simple read tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence with no wasted words. Front-loaded with the action and key outputs.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter tool with no output schema, the description completely specifies what the tool returns. No gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

No parameters, baseline 4 per rubric. Description adds no parameter info since there are none.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states it returns the server's package version and pinned upstream commit SHA(s). Verb 'return' with specific resources, distinguishing it from sibling tools that deal with instructions, proposals, sections, etc.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when needing version info, but lacks explicit guidance on when not to use or alternatives. Given simplicity, it's adequate but not proactive.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

type_getA
Read-only
Inspect

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

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesType or type-form name. Case-insensitive, exact.
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint: true, so the agent knows it's a safe read. Description adds details on return content (classification, sibling members, prose, refs, URL), which provides useful context beyond annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence with colon list is highly concise and front-loaded with purpose. No unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite no output schema, description explicitly lists what is returned, making it complete for a simple read-only tool with one parameter.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% with clear definition of 'name' parameter. Description adds example values but does not significantly enhance parameter understanding beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description uses specific verb 'look up' and clearly identifies resource types (value types and type forms) with examples. It distinguishes from sibling tools like instruction_get by focusing on type information.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Description implies usage for looking up types but lacks explicit when-to-use or when-not-to-use guidance. No comparison to alternatives is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.