web-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| CLAUDE_BIN | No | Path to the Claude Code command. | claude |
| BRAVE_API_KEY | No | Optional Brave Search API key. Enables the Brave head start for research runs and the web_search tool. Alternative to BRAVE_API_KEY_FILE. | |
| WEB_MCP_MODEL | No | Model alias or id passed to `claude --model`. | haiku |
| WEB_MCP_QUEUE | No | Number of calls allowed to wait for a slot; beyond that a call fails at once with `busy`. | 8 |
| WEB_MCP_CACHE_DIR | No | Where cached answers and pages live. Defaults to the platform cache directory under `web-mcp` (~/Library/Caches on macOS, XDG_CACHE_HOME or ~/.cache on Linux, LOCALAPPDATA on Windows). | |
| BRAVE_API_KEY_FILE | No | Optional path to a file holding the Brave Search API key. Alternative to BRAVE_API_KEY. | |
| WEB_MCP_HTTP_TOKEN | No | Bearer token for `--http` mode. Required when listening on any address other than loopback; clients then send `Authorization: Bearer <token>`. | |
| WEB_MCP_CONCURRENCY | No | Number of Claude runs at once; the rest wait in order. | 2 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| web_lookupA | Answer a question from the web. Returns a short answer with numbered sources. Use it for facts you do not know or that may have changed. |
| web_readA | Read one web page and say briefly what it says, with the source. Give a question to get only that part. |
| web_researchA | Research a question on the web for a stated goal. Returns a compact answer, confidence, findings with short verbatim quotes, sources and gaps, never longer than max_tokens. |
| web_pageA | Read one known web page for a stated goal. Returns a compact answer and findings with verbatim quotes checked against the page, never longer than max_tokens. |
| web_investigateA | Research with full control: depth (how many searches and page reads to spend), recency, domain filters and cache refresh. Same reply as web_research. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 5 tools
web_read and web_page both read a single page and differ mainly in output shape (brief summary vs. verbatim-quote findings), while web_research and web_investigate are explicitly the same reply with different control knobs, so an agent can plausibly pick either in each pair. web_lookup is reasonably distinct. Descriptions help but the boundaries between the tiers are gradient rather than crisp.
All tools share a clean web_ prefix in snake_case, which makes the family obvious. However the suffix mixes verbs (lookup, read, research, investigate) with a bare noun (web_page), breaking the verb_noun predictability.
Five tools is a well-scoped surface for a web answer/read server and each maps to a plausible user intent. The only waste is that web_investigate is functionally web_research plus parameters, so one slot is arguably redundant.
Covers the core lifecycle: quick answer, single-page read, goal-driven research, and a high-control research mode with depth/recency/domain filters and cache refresh. Minor gap: no plain search-results tool that returns a list of candidate URLs, and no multi-page/batch read, which agents may need to discover pages before reading.