MCP Web Fetch Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MCP_AUTH_TOKEN | No | Bearer token for HTTP mode authentication and dashboard auth | |
| FETCH_SEARXNG_URL | No | URL of SearXNG instance for web search fallback (default http://localhost:8080) | |
| FETCH_ADMIN_ENABLED | No | Set to 'false' to disable the management GUI (default true) | |
| FETCH_LOCAL_FILES_ROOT | No | Root directory for sandboxed local file access (opt-in, disabled by default) |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| completions | {} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| fetch_urlA | Fetch a public HTTP/HTTPS URL and return page content as markdown. Use start_index to read long pages in chunks. |
| fetch_metadata_toolA | Return HTTP metadata for a URL using a HEAD request. |
| batch_fetchA | Fetch up to 10 public URLs concurrently and return each page's content (or error) in one response. |
| web_searchA | Search the web via DuckDuckGo (no API key required) and return titles, URLs, and snippets for the top matches. Automatically falls back to a local SearXNG instance (FETCH_SEARXNG_URL) if DuckDuckGo's scrape fails. |
| extract_linksB | Fetch a URL and extract all links and images from the page as a list. |
| summarize_urlA | Fetch a URL and ask the connected client's LLM (via MCP sampling) to summarize it. Requires a client that supports the sampling capability; otherwise use fetch_url and summarize the content yourself. |
| read_fileA | Read a text file from an allowed local directory (configured via FETCH_LOCAL_FILES_ROOT, plus any directories the client exposes as roots). Path is relative to the allowed directory. |
| list_dirA | List the contents of a directory within an allowed local directory. Leave path empty to list the root itself. |
| write_fileA | Write text content to a file within an allowed local directory. If the file already exists and overwrite=false, the user will be asked to confirm before it is replaced. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| fetch | Fetch a URL and extract its contents as markdown. |
| research_topic | Guides the assistant through searching, fetching, and synthesizing information about a topic using this server's tools. |
| summarize_page | Fetch a URL and produce a concise, faithful summary of its content. |
| extract_key_facts | Fetch a URL and pull out structured facts (names, dates, numbers, claims). |
| compare_sources | Fetch multiple URLs and compare/contrast what they say about a shared claim or question. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| server-settings | Current (secret-redacted) server configuration and version. |
| fetch-history | The most recent URLs fetched by this server instance, most recent first. Successfully fetched pages may also be readable via the fetch-cache:// resource template. |
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/narimanamiri/mcp-fetch-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server