mcp
Read any web page as clean Markdown for AI agents: fetch, search, metadata, links. SSRF-safe.
我该使用它吗
质量与安全性
基于对工具定义和协议合规性的自动分析。
上下文开销
这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。
安装
一键安装
将以下内容添加到你的 `claude_desktop_config.json` 文件中:
{
"mcpServers": {
"mcp": {
"url": "https://mcp.vanshul.com/mcp"
}
}
}远程端点
https://mcp.vanshul.com/mcpstreamable-http它能做什么
工具清单
工具(4)
🟢fetch_markdown(url, max_chars)
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.
输入模式
{
"type": "object",
"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."
}
},
"required": [
"url"
]
}🟢fetch_metadata(url)
Fetch a web page and return its metadata as JSON: title, byline, site name, excerpt and word count (no full body).
输入模式
{
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "The absolute http(s) URL of the page."
}
},
"required": [
"url"
]
}🟢extract_links(url, limit)
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.
输入模式
{
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "The absolute http(s) URL of the page."
},
"limit": {
"type": "number",
"description": "Max links to return (default 200)."
}
},
"required": [
"url"
]
}🟢search_page(url, query, max_matches, context_chars)
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.
输入模式
{
"type": "object",
"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)."
}
},
"required": [
"url",
"query"
]
}社区
证据