Wais
FreeNot checkedUniversal MCP server for WAIS (Web Agent Interaction Standard) that provides 5 generic tools to discover, register, execute actions, confirm high-risk actions,
About
Universal MCP server for WAIS (Web Agent Interaction Standard) that provides 5 generic tools to discover, register, execute actions, confirm high-risk actions, and check status on any WAIS-compatible site.
README
Universal MCP server for WAIS (Web Agent Interaction Standard) — 5 generic tools that work with any WAIS-compatible site.
Works with Claude, ChatGPT, Gemini, Cursor, Windsurf, VS Code Copilot, and any MCP-compatible client.
Tools
| Tool | Description |
|---|---|
wais_discover |
Fetch a site's agents.json and show available actions |
wais_register |
Register at a site using SD-JWT selective disclosure |
wais_execute |
Execute any action (search, subscribe, purchase, etc.) |
wais_confirm |
Confirm high-risk actions or complete payments (402 flow) |
wais_status |
Check account status, plan, and credits |
Quick Start
pip install wais-mcp
wais-mcp init
The setup wizard will ask you to pick your provider (Claude, ChatGPT, Cursor, etc.), choose project or global scope, and enter your API key. It writes the correct config file automatically.
Manual Setup by Provider
If you prefer to configure manually, all providers use the same wais-mcp command — only the config file location and format differ.
Claude Desktop
File: claude_desktop_config.json
{
"mcpServers": {
"wais": {
"command": "wais-mcp",
"env": {
"PLATFORM_URL": "https://pod.deeger.io",
"WAIS_API_KEY": "<your-api-key>"
}
}
}
}
Claude Code
File: .mcp.json (project root) or ~/.claude/settings.json (global)
{
"mcpServers": {
"wais": {
"command": "wais-mcp",
"env": {
"PLATFORM_URL": "https://pod.deeger.io",
"WAIS_API_KEY": "<your-api-key>"
}
}
}
}
ChatGPT Desktop
Requires Developer Mode: Settings > Advanced Settings > Developer Mode.
File locations:
- macOS:
~/Library/Application Support/ChatGPT/mcp-server-config.json - Windows:
%APPDATA%\OpenAI\ChatGPT\mcp-server-config.json - Linux:
~/.config/ChatGPT/mcp-server-config.json
{
"mcpServers": {
"wais": {
"command": "wais-mcp",
"env": {
"PLATFORM_URL": "https://pod.deeger.io",
"WAIS_API_KEY": "<your-api-key>"
}
}
}
}
Restart ChatGPT after saving.
Gemini CLI
File: ~/.gemini/settings.json (global) or .gemini/settings.json (project)
{
"mcpServers": {
"wais": {
"command": "wais-mcp",
"env": {
"PLATFORM_URL": "https://pod.deeger.io",
"WAIS_API_KEY": "<your-api-key>"
}
}
}
}
Cursor
File: .cursor/mcp.json (project) or ~/.cursor/mcp.json (global)
{
"mcpServers": {
"wais": {
"command": "wais-mcp",
"env": {
"PLATFORM_URL": "https://pod.deeger.io",
"WAIS_API_KEY": "<your-api-key>"
}
}
}
}
Windsurf
File: ~/.codeium/windsurf/mcp_config.json
Or open from Windsurf: click MCPs icon in Cascade panel > Configure.
{
"mcpServers": {
"wais": {
"command": "wais-mcp",
"env": {
"PLATFORM_URL": "https://pod.deeger.io",
"WAIS_API_KEY": "<your-api-key>"
}
}
}
}
VS Code (GitHub Copilot)
File: .vscode/mcp.json (project) or via Command Palette: MCP: Open User Configuration (global)
{
"servers": {
"wais": {
"type": "stdio",
"command": "wais-mcp",
"env": {
"PLATFORM_URL": "https://pod.deeger.io",
"WAIS_API_KEY": "<your-api-key>"
}
}
}
}
Note: VS Code uses
serversinstead ofmcpServers, and requires thetypefield.
Usage without MCP (Python SDK)
For custom agents, scripts, or any Python code — no MCP client needed:
import asyncio
from wais_mcp import WAISClient
async def main():
client = WAISClient(api_key="your-api-key")
# 1. Discover what the site offers
site = await client.discover("https://serphub.deeger.io")
print(site.name, site.list_action_ids())
# 2. Register (shares only required claims via SD-JWT)
await client.register(site)
# 3. Execute actions
result = await client.execute(site, "search", {"query": "python"})
print(result)
# 4. Confirm high-risk actions (if 402 returned)
# result = await client.confirm(site, challenge_id)
# 5. Check account status
status = await client.status(site)
print(status)
asyncio.run(main())
Works with OpenAI SDK, LangChain, CrewAI, or any Python agent framework.
How It Works
- Discover — Fetches
/.well-known/agents.jsonfrom a site - Register — Shares only required claims via SD-JWT selective disclosure
- Execute — Handles tokens, DPoP, endpoint resolution, and async polling automatically
- Confirm — Polls for completion after 402 confirmation challenges
- Status — Check credits and plan info
All authentication (PoD tokens, DPoP proofs) is handled transparently.
Configuration
| Env Var | Default | Description |
|---|---|---|
PLATFORM_URL |
https://pod.deeger.io |
WAIS Provider URL |
WAIS_API_KEY |
(keychain fallback on macOS) | API key from provider dashboard |
Development
pip install -e ".[dev]"
License
MIT
Install Wais in Claude Desktop, Claude Code & Cursor
unyly install wais-mcpInstalls into Claude Desktop, Claude Code, Cursor & VS Code — handles npx, uvx and build-from-source repos for you.
First time? Get the CLI: curl -fsSL https://unyly.org/install | sh
Or configure manually
Run in your terminal:
claude mcp add wais-mcp -- uvx wais-mcpFAQ
Is Wais MCP free?
Yes, Wais MCP is free — one-click install via Unyly at no cost.
Does Wais need an API key?
No, Wais runs without API keys or environment variables.
Is Wais hosted or self-hosted?
A hosted option is available: Unyly runs the server in the cloud, no local setup required.
How do I install Wais in Claude Desktop, Claude Code or Cursor?
Open Wais on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
Fetch
Web content fetching and conversion for efficient LLM usage.
AWS KB Retrieval
Retrieval from AWS Knowledge Base using Bedrock Agent Runtime.
by modelcontextprotocolSpring AI MCP Server
Provides auto-configuration for setting up an MCP server in Spring Boot applications.
llm-analysis-assistant
A very streamlined mcp client that supports calling and monitoring stdio/sse/streamableHttp, and can also view request responses through the /logs page. It also
by xuzexin-hzCompare Wais with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All ai MCPs
