Skip to main content
Glama

MetaMask Embedded Wallets MCP Server

Build MetaMask Embedded Wallets integrations faster by giving your AI coding assistant live access to the documentation and deep knowledge of the SDK.

There are two things to set up:

  1. Skill — Teaches your AI assistant how to think about the SDK: architecture, framework quirks, key derivation rules, and common mistakes. No code in the skill; the MCP provides that.

  2. MCP server — Gives your AI assistant real-time access to search docs, fetch examples, and look up SDK types.


MCP Tools

Tool

What it does

search_docs

Search documentation and example projects

get_doc

Fetch the full content of any doc page

get_example

Fetch complete source code of an integration example

get_sdk_reference

Fetch SDK types and hooks from the open-source repos

search_community

Search the MetaMask Builder Hub for real user issues


Related MCP server: Atlas Docs MCP Server

Skill

The skill teaches your AI assistant the mental model for MetaMask Embedded Wallets. It includes SDK selection logic, key derivation rules, authentication concepts, platform quirks, and common mistakes that aren't obvious from the docs alone.

Tip: For the best experience, use the MCP server alongside the skill so that your LLM can fetch live docs and examples rather than relying on static text.

Universal install (works with 40+ agents)

npx skills add web3auth/skill

The skills CLI by Vercel detects your active AI agent and installs to the right directory automatically — Cursor, Claude Code, Copilot, Kiro, Cline, Codex, Antigravity, and 40+ more.

To install for target a specific agent:

npx skills add web3auth/skill -a cursor     # Cursor only
npx skills add web3auth/skill -a claude-code # Claude Code only

MCP Server Setup

Cursor

The fastest way is one click:

Add MetaMask Embedded Wallets MCP to Cursor

Or install via Cursor Marketplace — search "MetaMask Embedded Wallets".

Or add it manually. Open Cursor Settings → Tools & Integrations → MCP and add:

{
  "mcpServers": {
    "web3auth": {
      "url": "https://mcp.web3auth.io"
    }
  }
}

VS Code (GitHub Copilot)

Install from the Visual Studio Marketplace — search "MetaMask Embedded Wallets", or:

code --install-extension Web3Auth.metamask-embedded-wallets

Or use the one-click install URL:

vscode:mcp/install?{"name":"web3auth","url":"https://mcp.web3auth.io"}

Or add manually to your workspace .vscode/mcp.json:

{
  "servers": {
    "web3auth": {
      "type": "http",
      "url": "https://mcp.web3auth.io"
    }
  }
}

JetBrains (IntelliJ, PyCharm, WebStorm, Android Studio)

Install from the JetBrains Marketplace — search "MetaMask Embedded Wallets".

Or add manually in Settings → Tools → AI Assistant → Model Context Protocol (MCP):

{
  "mcpServers": {
    "web3auth": {
      "url": "https://mcp.web3auth.io",
      "transport": "http"
    }
  }
}

Claude Code CLI

claude mcp add --transport http web3auth https://mcp.web3auth.io

Or add manually to your project's claude.json:

{
  "mcpServers": {
    "web3auth": {
      "url": "https://mcp.web3auth.io"
    }
  }
}

Claude Desktop

Open your Claude Desktop configuration file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Add the server to the mcpServers section:

{
  "mcpServers": {
    "web3auth": {
      "url": "https://mcp.web3auth.io"
    }
  }
}

Restart Claude Desktop and ask: "Search MetaMask Embedded Wallets docs for React quick start" to verify the connection.

ChatGPT Desktop

Open ChatGPT Desktop → Settings → Connections and add a new MCP server:

  • Name: web3auth

  • URL: https://mcp.web3auth.io

Windsurf

Open Windsurf Settings → MCP and add:

{
  "mcpServers": {
    "web3auth": {
      "serverUrl": "https://mcp.web3auth.io"
    }
  }
}

Or edit ~/.codeium/windsurf/mcp_config.json directly.

Kiro (AWS)

Add to your project's .kiro/settings/mcp.json:

{
  "mcpServers": {
    "web3auth": {
      "url": "https://mcp.web3auth.io"
    }
  }
}

Warp Terminal

In Warp, open Settings → AI → MCP Servers and click Add Server:

  • Name: web3auth

  • URL: https://mcp.web3auth.io

Or use Warp's one-click MCP install if available in your version.

Cline (VS Code)

Add to your Cline MCP settings (Ctrl+Shift+P → "Cline: Open MCP Settings"):

{
  "mcpServers": {
    "web3auth": {
      "url": "https://mcp.web3auth.io",
      "transport": "http"
    }
  }
}

Continue.dev

Add to your Continue config.json (open with Ctrl+Shift+P → "Continue: Open config.json"):

{
  "mcpServers": [
    {
      "name": "web3auth",
      "url": "https://mcp.web3auth.io"
    }
  ]
}

Zed

Add to your Zed settings.json (Cmd+, to open):

{
  "context_servers": {
    "web3auth": {
      "command": {
        "path": "npx",
        "args": ["-y", "mcp-remote", "https://mcp.web3auth.io"]
      }
    }
  }
}

Or install via Zed Extensions — search "MetaMask Embedded Wallets".

Antigravity

Open your MCP configuration file:

  • macOS/Linux: ~/.config/antigravity/mcp.json

  • Windows: %APPDATA%\antigravity\mcp.json

Add the server to the mcpServers section:

{
  "mcpServers": {
    "web3auth": {
      "url": "https://mcp.web3auth.io"
    }
  }
}

Antigravity hot-reloads MCP config changes — no restart required.

Xcode (via GitHub Copilot)

Xcode 26.3+ supports MCP via GitHub Copilot. Add the server to your Copilot MCP config or use the VS Code extension setup above (Copilot MCP registry is shared).

Alternatively, configure Xcode's agentic tools to point at https://mcp.web3auth.io directly via Settings → Copilot → MCP Servers.

Eclipse (via GitHub Copilot)

Eclipse with GitHub Copilot supports MCP. Add via Eclipse → Preferences → GitHub Copilot → MCP Servers → Add Server:

  • Name: web3auth

  • URL: https://mcp.web3auth.io

Neovim (avante.nvim)

In your Lua config, add via mcphub.nvim:

require("mcphub").setup({
  servers = {
    web3auth = {
      url = "https://mcp.web3auth.io",
      transport = "streamable-http",
    },
  },
})

Or using mcp-remote for compatibility:

require("avante").setup({
  mcp = {
    servers = {
      web3auth = {
        command = "npx",
        args = { "-y", "mcp-remote", "https://mcp.web3auth.io" },
      },
    },
  },
})

Neovim (codecompanion.nvim)

require("codecompanion").setup({
  extensions = {
    mcp = {
      servers = {
        web3auth = {
          command = "npx",
          args = { "-y", "mcp-remote", "https://mcp.web3auth.io" },
        },
      },
    },
  },
})

Amp (Sourcegraph)

Add to your Amp MCP configuration:

{
  "mcpServers": {
    "web3auth": {
      "url": "https://mcp.web3auth.io"
    }
  }
}

Goose

Add to ~/.config/goose/config.yaml:

extensions:
  - name: web3auth
    type: http
    url: https://mcp.web3auth.io

5ire

In 5ire Settings → MCP Servers → Add:

  • Name: web3auth

  • URL: https://mcp.web3auth.io

Aider

Aider supports MCP via the LiteLLM bridge. Add to your Aider config:

mcp_servers:
  web3auth:
    command: npx
    args: ["-y", "mcp-remote", "https://mcp.web3auth.io"]

Codex CLI

For Codex CLI or any stdio-only agent, use mcp-remote to bridge the HTTP endpoint:

npm install -g mcp-remote

Then add to ~/.codex/config.toml:

[mcp_servers.web3auth]
command = "npx"
args = ["-y", "mcp-remote", "https://mcp.web3auth.io"]

Or add to your agent's JSON config:

{
  "mcpServers": {
    "web3auth": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://mcp.web3auth.io"]
    }
  }
}

Static docs (llms.txt)

If your AI tool doesn't support MCP yet, use the static documentation file instead:

https://docs.metamask.io/llms-full.txt

For tools that support the llms.txt spec and can index docs automatically:

https://docs.metamask.io/llms.txt

Warning: The static file is a snapshot and may not include the latest updates. Use the MCP server when possible for always-current docs.


Start building

Once the skill and MCP are set up, ask your AI assistant directly. Good starting prompts:

  • "Add MetaMask Embedded Wallets to my React app with Google login."

  • "Set up social login wallets in my Next.js app using Wagmi."

  • "Integrate embedded wallets in my Flutter app."

  • "Why are my users getting different wallet addresses after I changed the login method?"

Tip: Use planning mode (where available) for your initial prompt. Review the plan before generating code — this catches architecture mistakes early and avoids config errors that would change wallet addresses in production.


Distribution

This repo ships artifacts for every major developer platform:

Platform

Type

Location

Cursor Marketplace

Plugin

.cursor-plugin/ + mcp.json

VS Code Marketplace

Extension

plugins/vscode/

JetBrains Marketplace

Plugin

plugins/jetbrains/

Zed Extensions

Extension

plugins/zed/

Claude Agent SDK

Plugin

plugins/claude/

Raycast Store

Extension

plugins/raycast/

ChatGPT GPT Store

Custom GPT

openai/

Official MCP Registry

server.json

server.json

Glama

glama.json

glama.json

Smithery

Server card

app/.well-known/mcp/server-card.json/route.ts

Vercel skills.sh

Skill

Web3Auth/skill

agentskill.sh

Skill

Web3Auth/skill


Environment Variables

Variable

Required

Description

GITHUB_TOKEN

Yes (hosted) / recommended (local)

GitHub personal access token. Required on the Vercel deployment (mcp.web3auth.io) — get_example and get_sdk_reference call the GitHub API heavily; without a token the shared IP hits the 60 req/hr unauthenticated limit quickly. Optional for local stdio use.

DISCOURSE_API_KEY

No

Discourse API key for search_community (optional; public search works without it)

DISCOURSE_API_USERNAME

No

Discourse API username when using DISCOURSE_API_KEY


Development

npm install
npm run build
npm test           # Handler smoke tests (mocked fetch)
npm start          # Run via stdio
npm run dev        # Watch mode

Updating Content

What changed

Where to update

SDK architecture, platform quirks, key derivation, workflow

Web3Auth/skill (SKILL.md)

New example repository or scan root (e.g. new platform)

src/content/example-catalog.ts

New SDK repository or discovery rules (e.g. new platform)

src/content/sdk-catalog.ts

New tool or parameter changes

src/tools/register.ts

Example folders / SDK file layout within existing repos

Nothing (discovered live from GitHub, cached 4h)

Doc page content

Nothing (fetched live via Algolia / llms.txt / GitHub)

License

MIT

Available Tools

5 tools
get_docB
Read-onlyIdempotent

Fetch the full content of a MetaMask Embedded Wallets documentation page by URL. Sources: Algolia, llms.txt, GitHub MDX.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesA docs.metamask.io URL, e.g. https://docs.metamask.io/embedded-wallets/sdk/react/

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint and idempotentHint, so the safety profile is covered. The description adds behavioral context by listing sources (Algolia, llms.txt, GitHub MDX) and specifying 'full content', but it does not disclose return format or potential errors. This is a moderate addition, consistent 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.

Conciseness5/5

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

The description is a single, front-loaded sentence that clearly communicates the core function and includes useful source information without any fluff. It is appropriately concise and well-structured.

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 simple read-only tool with one parameter and no output schema, the description adequately covers the main purpose and inputs. It lacks details like return format or error handling, but these are minor for a straightforward fetch operation and are not essential given the simplicity and annotations.

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?

The schema already describes the 'url' parameter with an example, and the description merely repeats 'by URL'. With 100% schema coverage, the baseline is 3, and no additional parameter meaning is provided beyond what the schema already offers.

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

Purpose4/5

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

The description clearly states the verb ('Fetch'), resource ('documentation page'), and method ('by URL'), making the tool's purpose obvious. However, it does not explicitly differentiate from sibling tools like search_docs or get_example, so it misses the full 5-point criteria.

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

Usage Guidelines2/5

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

No explicit guidance is provided on when to use this tool versus alternatives. The description implies usage when a URL is available, but it does not mention search_docs or other siblings, nor any exclusions or prerequisites beyond having a URL.

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

get_exampleA
Read-onlyIdempotent

Fetch complete source code of a Web3Auth integration example from GitHub.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoExample name, e.g. 'React Quick Start' or 'Android Firebase'
chainNoFilter by blockchain family
categoryNoFilter by category
platformNoFilter by platform
auth_methodNoFilter by auth method, e.g. 'auth0', 'firebase', 'google', 'grouped'

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnly, openWorld, and idempotent hints, so the description carries a lower burden. It adds useful context that the source code comes from GitHub and is 'complete', but does not disclose potential response size or external dependency behaviors beyond that.

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, front-loaded sentence with no filler words. It immediately states the action and the object, meeting conciseness and structural requirements perfectly.

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?

Given the tool has no required parameters and no output schema, the description could clarify whether at least one filter is needed or if name alone suffices to fetch an example. However, the schema itself provides comprehensive parameter documentation, and the tool's purpose is straightforward.

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?

The input schema has 100% description coverage for all parameters, each with clear examples and enum definitions. The description does not add additional meaning beyond the schema, 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 a specific verb ('Fetch') and resource ('complete source code of a Web3Auth integration example from GitHub'), clearly distinguishing it from sibling tools like get_doc, get_sdk_reference, and search tools.

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 clearly implies usage for retrieving example source code, and the sibling names provide context for alternatives. However, it does not explicitly state when to use this vs. other tools or mention any exclusions.

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

get_sdk_referenceA
Read-onlyIdempotent

Fetch SDK source code (types, interfaces, hooks) from open-source Web3Auth repos.

ParametersJSON Schema
NameRequiredDescriptionDefault
focusNoWhat kind of source to focus on. 'types' = interfaces/types (default, most useful). 'hooks' = React hooks / Vue composables. 'errors' = error types. 'main-class' = SDK implementation. 'all' = everything.types
moduleNoSpecific SDK module to fetch, e.g. 'core-types', 'react-hooks', 'modal-types', 'main-class'. Omit to get default type definitions. Call without module first to see available modules.
platformYesTarget platform SDK to fetch source for

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint. The description adds context that the source comes from open-source repositories, implying public access and no authentication. It also lists example content facets (types, interfaces, hooks). 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.

Conciseness5/5

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

A single concise sentence that front-loads the action ('Fetch SDK source code') and specifies the resource and domain. No filler or redundancy.

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 simple read-only retrieval tool with a detailed schema and three safety hints, the description adequately captures the tool's purpose. No output schema exists, so return format is not required. The description is complete for an agent to decide when to use it.

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%: all three parameters (platform, focus, module) have descriptions with enums and a default. The tool description itself does not add parameter-specific information, so it relies on the schema. With high schema coverage, a baseline score of 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 'Fetch SDK source code' with a specific resource and domain ('open-source Web3Auth repos'). It clearly distinguishes from sibling tools like get_doc and get_example by focusing on source code rather than documentation or examples.

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 implies use for retrieving SDK source code, contrasting with siblings for docs/examples. However, it does not explicitly name alternatives or provide exclusion criteria. The module parameter guidance ('Call without module first') offers internal usage help but not inter-tool guidance.

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

search_communityA
Read-onlyIdempotent

Search or fetch posts from the MetaMask Embedded Wallets community forum (builder.metamask.io).

ParametersJSON Schema
NameRequiredDescriptionDefault
queryNoSearch query, e.g. 'popup blocked safari', 'JWT error', 'Android unstable connection'
topic_idNoDiscourse topic ID to fetch the full discussion thread

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, so the agent knows this is a safe read operation. The description adds minimal context (the forum URL) but does not elaborate on pagination, result structure, or whether query and topic_id can be combined.

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, front-loaded sentence with no wasted words. It efficiently conveys the tool's purpose without redundant details.

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?

Given the simple read-only nature, good annotations, and complete schema, the description is sufficient. It lacks details on result formatting or parameter interaction, but these are not critical for a search/fetch tool with no required parameters.

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 detailed descriptions for both query and topic_id. The description's 'Search or fetch posts' reflects these parameters but adds no additional semantic meaning beyond what the schema already 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 the action ('Search or fetch posts') and the specific resource ('MetaMask Embedded Wallets community forum'), which distinguishes it from sibling tools like search_docs that target documentation.

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 makes it clear that this tool is for community forum posts, implying when to use it. However, it does not explicitly state exclusions or alternatives, such as 'for documentation use search_docs'.

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

search_docsA
Read-onlyIdempotent

Search MetaMask Embedded Wallets documentation (Algolia) and example projects. Returns doc page links with snippets and matching examples.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoFilter examples by blockchain family
queryYesWhat you are looking for -- e.g. 'React custom auth', 'Android deep linking', 'JWT grouped connections'
categoryNoFilter examples by category
platformNoFilter examples by platform

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnly, openWorld, and idempotent hints, so the safety profile is covered. The description adds useful behavioral context by naming the Algolia backend and specifying that results include links, snippets, and matching examples, which goes beyond the 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?

The description is a compact two-sentence structure, front-loaded with the action and resource, and every sentence adds value. There is no redundant or extraneous content.

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?

Given the tool's moderate complexity, rich parameter schema, and strong annotations, the description sufficiently conveys purpose and output. It does not mention result limits or pagination, but for a search tool with no output schema, stating that it returns links with snippets and matching examples is reasonably 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?

The input schema provides 100% coverage with descriptions for all four parameters, including detailed enums for chain, category, and platform. The description itself does not add further parameter-specific semantics, so the baseline score applies.

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 ('Search') and clearly identifies the resource ('MetaMask Embedded Wallets documentation (Algolia) and example projects'). It also states the return value ('doc page links with snippets and matching examples'), which distinguishes it from sibling retrieval tools like get_doc and get_example.

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 implies this tool is for searching across docs and example projects, giving clear context for when to use it. However, it does not explicitly mention alternatives or exclusions, leaving room for a stronger differentiation from siblings like search_community.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 5 tool updatesv2.0.0
    • First observedget_doc
    • First observedget_example
    • First observedget_sdk_reference
    • First observedsearch_community
    • First observedsearch_docs

TDQS

A4.2/5.0

Scored across 5 tools

Disambiguation5/5

Each tool has a distinct purpose: searching docs, fetching doc pages, retrieving examples, fetching SDK source, and searching the community forum. Even the two code-fetching tools are clearly differentiated by target.

Naming Consistency5/5

All tool names follow a consistent lowercase verb_noun pattern (search_* and get_*). The minor singular/plural variation between get_doc and search_docs is negligible.

Tool Count5/5

Five tools is well-scoped for a documentation and developer-support knowledge server. Each tool fills a clear role without redundancy or bloat.

Completeness5/5

The tool surface covers the full knowledge workflow: discover via search, read full docs, inspect examples, examine SDK source, and check community discussions. No significant gaps are apparent for this domain.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Provides AI agents with access to DFNS documentation, API reference, and SDK code through full-text search and type intelligence.
    19 npm
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Provides AI assistants with up-to-date documentation for popular libraries and frameworks, enabling them to generate more accurate code using less common or newly released libraries.
    5
    13 npm
    36
    MIT