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:
- 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.
- MCP server — Gives your AI assistant real-time access to search docs, fetch examples, and look up SDK types.
| 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 |
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.
npx skills add web3auth/skillThe 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 onlyThe fastest way is one click:
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"
}
}
}Install from the Visual Studio Marketplace — search "MetaMask Embedded Wallets", or:
code --install-extension Web3Auth.metamask-embedded-walletsOr 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"
}
}
}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 mcp add --transport http web3auth https://mcp.web3auth.ioOr add manually to your project's claude.json:
{
"mcpServers": {
"web3auth": {
"url": "https://mcp.web3auth.io"
}
}
}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.
Open ChatGPT Desktop → Settings → Connections and add a new MCP server:
- Name: web3auth
- URL:
https://mcp.web3auth.io
Open Windsurf Settings → MCP and add:
{
"mcpServers": {
"web3auth": {
"serverUrl": "https://mcp.web3auth.io"
}
}
}Or edit ~/.codeium/windsurf/mcp_config.json directly.
Add to your project's .kiro/settings/mcp.json:
{
"mcpServers": {
"web3auth": {
"url": "https://mcp.web3auth.io"
}
}
}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.
Add to your Cline MCP settings (Ctrl+Shift+P → "Cline: Open MCP Settings"):
{
"mcpServers": {
"web3auth": {
"url": "https://mcp.web3auth.io",
"transport": "http"
}
}
}Add to your Continue config.json (open with Ctrl+Shift+P → "Continue: Open config.json"):
{
"mcpServers": [
{
"name": "web3auth",
"url": "https://mcp.web3auth.io"
}
]
}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".
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 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 with GitHub Copilot supports MCP. Add via Eclipse → Preferences → GitHub Copilot → MCP Servers → Add Server:
- Name: web3auth
- URL:
https://mcp.web3auth.io
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" },
},
},
},
})require("codecompanion").setup({
extensions = {
mcp = {
servers = {
web3auth = {
command = "npx",
args = { "-y", "mcp-remote", "https://mcp.web3auth.io" },
},
},
},
},
})Add to your Amp MCP configuration:
{
"mcpServers": {
"web3auth": {
"url": "https://mcp.web3auth.io"
}
}
}Add to ~/.config/goose/config.yaml:
extensions:
- name: web3auth
type: http
url: https://mcp.web3auth.ioIn 5ire Settings → MCP Servers → Add:
- Name: web3auth
- URL:
https://mcp.web3auth.io
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"]For Codex CLI or any stdio-only agent, use mcp-remote to bridge the HTTP endpoint:
npm install -g mcp-remoteThen 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"]
}
}
}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.
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.
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 |
| 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 |
npm install
npm run build
npm test # Handler smoke tests (mocked fetch)
npm start # Run via stdio
npm run dev # Watch mode| 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) |
MIT