Read any web page as clean Markdown for AI agents: fetch, search, metadata, links. SSRF-safe.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Fetch a web page and return all of its outbound http(s) links (with anchor text) as JSON. Useful for crawling or finding related pages.
The absolute http(s) URL of the page.
Max links to return (default 200).
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Fetch a web page and return all of its outbound http(s) links (with anchor text) as JSON. Useful for crawling or finding related pages.
| Argument | Type | Description |
|---|---|---|
| url* | string | The absolute http(s) URL of the page. |
| limit | number | Max links to return (default 200). |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "The absolute http(s) URL of the page."
},
"limit": {
"type": "number",
"description": "Max links to return (default 200)."
}
}
}Fetch a web page and return its main content as clean Markdown (nav, ads and boilerplate removed). Raw Markdown, plain-text and JSON endpoints are returned as-is. Use this to read an article, docs page or raw file.
| Argument | Type | Description |
|---|---|---|
| url* | string | The absolute http(s) URL of the page. |
| max_chars | number | Optional. Truncate the Markdown to at most this many characters to fit a context budget. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "The absolute http(s) URL of the page."
},
"max_chars": {
"type": "number",
"description": "Optional. Truncate the Markdown to at most this many characters to fit a context budget."
}
}
}Fetch a web page and return its metadata as JSON: title, byline, site name, excerpt and word count (no full body).
| Argument | Type | Description |
|---|---|---|
| url* | string | The absolute http(s) URL of the page. |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "The absolute http(s) URL of the page."
}
}
}Fetch a web page and return only the passages that match a query, instead of the whole page. Each result includes its heading breadcrumb and is ranked by relevance. Use this to find a specific detail (e.g. pricing, a config option) while spending far fewer tokens than fetch_markdown.
| Argument | Type | Description |
|---|---|---|
| url* | string | The absolute http(s) URL of the page. |
| query* | string | Space-separated search terms; matching is case-insensitive. |
| max_matches | number | Max passages to return (1-50, default 5). |
| context_chars | number | Per-passage character budget (50-4000, default 500). |
{
"type": "object",
"required": [
"url",
"query"
],
"properties": {
"url": {
"type": "string",
"description": "The absolute http(s) URL of the page."
},
"query": {
"type": "string",
"description": "Space-separated search terms; matching is case-insensitive."
},
"max_matches": {
"type": "number",
"description": "Max passages to return (1-50, default 5)."
},
"context_chars": {
"type": "number",
"description": "Per-passage character budget (50-4000, default 500)."
}
}
}