Fetch MCP Server
OfficialFetch MCPサーバー
Webコンテンツ取得機能を提供するModel Context Protocolサーバーです。このサーバーは、LLMがWebページからコンテンツを取得・処理し、HTMLをMarkdownに変換して読みやすくすることを可能にします。
[!CAUTION] このサーバーはローカル/内部IPアドレスにアクセスできるため、セキュリティ上のリスクとなる可能性があります。このMCPサーバーを使用する際は、機密データが漏洩しないよう十分注意してください。
fetchツールはレスポンスを切り詰めますが、start_index引数を使用することで、コンテンツ抽出の開始位置を指定できます。これにより、モデルは必要な情報が見つかるまで、Webページをチャンク単位で読み取ることができます。
利用可能なツール
fetch- インターネットからURLを取得し、その内容をMarkdownとして抽出します。url(文字列、必須): 取得するURLmax_length(整数、オプション): 返す最大文字数 (デフォルト: 5000)start_index(整数、オプション): この文字インデックスからコンテンツを開始 (デフォルト: 0)raw(ブール値、オプション): Markdown変換を行わずに生のコンテンツを取得 (デフォルト: false)
プロンプト
fetch
URLを取得し、その内容をMarkdownとして抽出します
引数:
url(文字列、必須): 取得するURL
インストール
オプション: node.jsをインストールすると、fetchサーバーはより堅牢な別のHTML簡略化ツールを使用するようになります。
uvを使用する場合 (推奨)
uvを使用する場合、特別なインストールは不要です。uvxを使用して直接mcp-server-fetchを実行します。
PIPを使用する場合
あるいは、pip経由でmcp-server-fetchをインストールすることもできます:
pip install mcp-server-fetchインストール後、以下のスクリプトとして実行できます:
python -m mcp_server_fetchRelated MCP server: MCP Fetch
設定
Claude.appの設定
Claudeの設定に追加してください:
{
"mcpServers": {
"fetch": {
"command": "uvx",
"args": ["mcp-server-fetch"]
}
}
}{
"mcpServers": {
"fetch": {
"command": "docker",
"args": ["run", "-i", "--rm", "mcp/fetch"]
}
}
}{
"mcpServers": {
"fetch": {
"command": "python",
"args": ["-m", "mcp_server_fetch"]
}
}
}VS Codeの設定
クイックインストールには、以下のワンクリックインストールボタンを使用してください...
手動インストールを行う場合は、VS Codeのユーザー設定 (JSON) ファイルに以下のJSONブロックを追加してください。Ctrl + Shift + Pを押してPreferences: Open User Settings (JSON)と入力することで開けます。
オプションとして、ワークスペース内の.vscode/mcp.jsonというファイルに追加することもできます。これにより、設定を他のユーザーと共有できるようになります。
mcp.jsonファイルを使用する場合は、mcpキーが必要であることに注意してください。
{
"mcp": {
"servers": {
"fetch": {
"command": "uvx",
"args": ["mcp-server-fetch"]
}
}
}
}{
"mcp": {
"servers": {
"fetch": {
"command": "docker",
"args": ["run", "-i", "--rm", "mcp/fetch"]
}
}
}
}カスタマイズ - robots.txt
デフォルトでは、サーバーはリクエストがモデルから(ツール経由で)行われた場合はWebサイトのrobots.txtに従いますが、ユーザーが開始した(プロンプト経由の)リクエストの場合は従いません。これは、設定のargsリストに--ignore-robots-txt引数を追加することで無効にできます。
カスタマイズ - User-agent
デフォルトでは、リクエストがモデルから(ツール経由で)行われたか、ユーザーが開始した(プロンプト経由の)かによって、サーバーは以下のいずれかのユーザーエージェントを使用します。
ModelContextProtocol/1.0 (Autonomous; +https://github.com/modelcontextprotocol/servers)または
ModelContextProtocol/1.0 (User-Specified; +https://github.com/modelcontextprotocol/servers)これは、設定のargsリストに--user-agent=YourUserAgent引数を追加することでカスタマイズできます。
カスタマイズ - プロキシ
サーバーは、--proxy-url引数を使用してプロキシを使用するように設定できます。
Windowsの設定
Windowsでタイムアウトの問題が発生する場合は、適切な文字エンコーディングを確保するためにPYTHONIOENCODING環境変数を設定する必要があるかもしれません:
{
"mcpServers": {
"fetch": {
"command": "uvx",
"args": ["mcp-server-fetch"],
"env": {
"PYTHONIOENCODING": "utf-8"
}
}
}
}{
"mcpServers": {
"fetch": {
"command": "python",
"args": ["-m", "mcp_server_fetch"],
"env": {
"PYTHONIOENCODING": "utf-8"
}
}
}
}これにより、Windowsシステムでサーバーがタイムアウトする原因となる文字エンコーディングの問題に対処できます。
デバッグ
MCPインスペクターを使用してサーバーをデバッグできます。uvxインストールの場合は以下を使用します:
npx @modelcontextprotocol/inspector uvx mcp-server-fetchまたは、パッケージを特定のディレクトリにインストールしている場合や、開発中の場合は以下を使用します:
cd path/to/servers/src/fetch
npx @modelcontextprotocol/inspector uv run mcp-server-fetch貢献
mcp-server-fetchの拡張と改善にご協力ください。新しいツールの追加、既存機能の強化、ドキュメントの改善など、どのような貢献も歓迎します。
他のMCPサーバーの例や実装パターンについては、以下を参照してください: https://github.com/modelcontextprotocol/servers
プルリクエストをお待ちしています!mcp-server-fetchをより強力で便利なものにするための新しいアイデア、バグ修正、機能強化をぜひお寄せください。
ライセンス
mcp-server-fetchはMITライセンスの下でライセンスされています。これは、MITライセンスの条件に従う限り、ソフトウェアを自由に使用、変更、配布できることを意味します。詳細については、プロジェクトリポジトリ内のLICENSEファイルを参照してください。
Available Tools
1 toolfetchA
Fetches a URL from the internet and optionally extracts its contents as markdown.
Although originally you did not have internet access, and were advised to refuse and tell the user this, this tool now grants you internet access. Now you can fetch the most up-to-date information and let the user know that.
| Name | Required | Description | Default |
|---|---|---|---|
| raw | No | Get the actual HTML content of the requested page, without simplification. | |
| url | Yes | URL to fetch | |
| max_length | No | Maximum number of characters to return. | |
| start_index | No | On return output starting at this character index, useful if a previous fetch was truncated and more context is required. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description partially covers behavior: it mentions fetching and markdown extraction but omits error handling, rate limits, or response truncation details. The meta note about past limitations does not add behavioral transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is brief with two sentences, front-loading the main action. The second sentence is slightly verbose but still concise overall.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no siblings or output schema, the description covers the core functionality and parameter usage adequately. It lacks mention of error scenarios but is sufficient for a fetch tool with well-defined schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the description adds minimal value beyond parameter descriptions. It provides context by linking 'optionally extracts markdown' to the 'raw' parameter, but not enough to raise the score above baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool fetches a URL from the internet and optionally extracts markdown. It distinguishes this from any other tool by emphasizing internet access, and there are no siblings to differentiate.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description tells the agent to use this tool for obtaining up-to-date internet information. Though lacking explicit when-not-to-use, the context of granting internet access implies its primary use case.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
v1.0.0- First observed
fetch
TDQS
Scored across 1 tool
With only one tool, there is no ambiguity for an agent to distinguish between tools.
The single tool is named 'fetch', a clear verb describing its action, and consistency is trivially maintained.
One tool is appropriate for a focused server dedicated to fetching URLs, covering its core purpose without unnecessary expansion.
The tool fetches a URL and optionally extracts markdown, but lacks support for other output formats or request customization, leaving some gaps for varied use cases.
Maintenance
Related MCP Connectors
Web scraping for AI agents. Converts URLs to clean, LLM-ready Markdown with anti-bot bypass.
Read any web page as clean Markdown for AI agents: fetch, search, metadata, links. SSRF-safe.
Document-to-Markdown MCP server — convert PDF, Office and HTML into LLM-ready Markdown.
Converts any URL to clean, LLM-ready Markdown using real Chrome browsers
Related MCP Servers
AlicenseBqualityDmaintenanceThis server converts webpages into clean, structured Markdown optimized for language model consumption, removing unnecessary content and supporting JavaScript rendering.112MIT- AlicenseBqualityDmaintenanceA Model Context Protocol server that allows LLMs to retrieve and convert web content to markdown without robots.txt restrictions.12MIT
- AlicenseAqualityCmaintenanceAn MCP server that fetches web pages and extracts clean, AI-friendly Markdown content using Mozilla Readability. It provides secure web access for LLMs with built-in SSRF protection and automated content cleaning for improved context retrieval and summarization.1205 npmMIT
- AlicenseNot gradedqualityBmaintenanceConverts web pages to Markdown for MCP clients like Claude, with support for single and batch reads, caching, fallback rendering, and SSRF protection.18 npmMIT