seekfetch

io.github.esticklack由 GitHub 账号 esticklack 发布v0.1.0更新于 Oct 25, 2026

Unofficial MCP server for the DeepSeek Search & Fetch API: web search and page-to-Markdown.

概览

AI 生成的概览

非官方本地 MCP 服务器,为助手提供基于 DeepSeek 的网页搜索、网页转 Markdown 抓取和一次调用完成的研究功能。

可以做什么
搜索网页,返回排序结果、每条结果的摘要,并可按站点、语言、日期和最低相关度过滤,可选附带网页正文。将指定网址抓取为 Markdown,长页面可按偏移量分段继续读取。用一次调用完成研究问题,返回得分最高的网页及其内容和编号来源。
适用场景
适合助手需要最新网络信息或某个网页的干净 Markdown,且不希望中间经过对话模型时使用;也适合已有 DeepSeek API 密钥、希望用一个本地服务器同时获得搜索、抓取和多页研究能力的场景。
运行要求
通过 npx 以 stdio 在本地运行,需要 Node.js 22.12 或更高版本。需要在 DEEPSEEK_API_KEY 环境变量中提供 DeepSeek API 密钥,并需要访问 DeepSeek API 的网络;基础地址、超时和重试次数可通过环境变量覆盖。
安装前请注意
DeepSeek API 密钥是敏感信息,通过环境变量传入,不要写入客户端配置文件。请求按成功调用计费,价格按公布的每次请求费率,搜索和抓取都会产生费用;空结果和错误不计费。查询内容和抓取的网址会发送给 DeepSeek。工具为只读,但抓取的网页内容是第三方文本。

安装

在 SourceWeft 中

  1. 打开 控制台中的 seekfetch,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

seekfetch

Web search and page-to-Markdown for AI agents, powered by the DeepSeek Search & Fetch API. One package, three ways to use it: an MCP server, a CLI, and a TypeScript library.

Unofficial community project. seekfetch is not affiliated with, endorsed by, or sponsored by DeepSeek. It is a client for DeepSeek's public API and needs your own API key.

[CI] [npm] [License: MIT]

Why

  • Calls the dedicated endpoints (/v1/tools/search, /v1/tools/fetch). No chat model sits in between, so a search costs one API request and no model tokens.
  • Search, fetch and research. research returns the best pages with their content from a single search request, and only fetches the pages that came back empty.
  • Built for context windows. It returns DeepSeek's model-ready summaries by default, filters by relevance score, and pages through long documents with an offset.
  • Production behavior. It retries 408/429/5xx with backoff and honors Retry-After. It paces requests to the 5 QPS account limit and validates inputs locally so bad requests never cost a call. It parses responses tolerantly, so new or missing fields don't break it.

Quick start

  1. Get an API key at platform.deepseek.com.
  2. Add seekfetch to your MCP client (below), or run it from the shell:
bash
export DEEPSEEK_API_KEY=sk-...npx -y seekfetch search "model context protocol registry"

Requires Node.js 22.12 or later.

MCP setup

The server runs over stdio with npx -y seekfetch mcp.

Claude Code
bash
claude mcp add seekfetch -e DEEPSEEK_API_KEY=sk-... -- npx -y seekfetch mcp
Claude Desktop — claude_desktop_config.json
json
{  "mcpServers": {    "seekfetch": {      "command": "npx",      "args": ["-y", "seekfetch", "mcp"],      "env": { "DEEPSEEK_API_KEY": "sk-..." }    }  }}
Cursor — ~/.cursor/mcp.json
json
{  "mcpServers": {    "seekfetch": {      "command": "npx",      "args": ["-y", "seekfetch", "mcp"],      "env": { "DEEPSEEK_API_KEY": "sk-..." }    }  }}
VS Code — .vscode/mcp.json
json
{  "inputs": [    { "type": "promptString", "id": "deepseek-key", "description": "DeepSeek API key", "password": true }  ],  "servers": {    "seekfetch": {      "type": "stdio",      "command": "npx",      "args": ["-y", "seekfetch", "mcp"],      "env": { "DEEPSEEK_API_KEY": "${input:deepseek-key}" }    }  }}
Codex — ~/.codex/config.toml
toml
[mcp_servers.seekfetch]command = "npx"args = ["-y", "seekfetch", "mcp"]env = { DEEPSEEK_API_KEY = "sk-..." }

On Windows, if your client can't find npx, use "command": "cmd" with "args": ["/c", "npx", "-y", "seekfetch", "mcp"].

Tools

ToolWhat it does
deepseek_searchRanked web results with a summary each (capped at 800 chars; summary_chars to change). Optional filters: sites, exclude_sites, lang, after, before, min_score; include_content adds page text.
deepseek_fetchA URL as Markdown. Long pages come in chunks of max_chars; continue with offset.
deepseek_researchQuestion → top-scoring pages with content and numbered sources, in one call.

All tools are read-only.

CLI

bash
npm i -g seekfetch          # or prefix each command with npx -y
seekfetch search "rust async runtimes" -n 5 --min-score 1.5seekfetch search "mcp server" --site github.com --lang en --after 2026-01-01seekfetch research "how is the DeepSeek search API priced?" -o notes.mdseekfetch fetch https://example.com --max-chars 20000seekfetch search "query" --json | jq '.results[].url'

Run seekfetch <command> --help for every flag.

Agent skill

skills/seekfetch/SKILL.md teaches agents with a shell (Claude Code, Codex and others that read SKILL.md) when and how to use the CLI. Copy the folder into your agent's skills directory, for example ~/.claude/skills/seekfetch/.

Library

ts
import { DeepSeekWebClient, buildQuery, research } from "seekfetch";
const client = new DeepSeekWebClient({ apiKey: process.env.DEEPSEEK_API_KEY! });
const { results } = await client.search({  query: buildQuery("vector databases", { sites: ["github.com"], after: "2026" }),  count: 10,});
const page = await client.fetch("https://example.com"); // { title, content (Markdown) }const report = await research(client, { question: "What changed in MCP this year?", maxPages: 3 });

Configuration

VariableDefault
DEEPSEEK_API_KEY—Required.
DEEPSEEK_BASE_URLhttps://api.deepseek.comOverride for proxies.
DEEPSEEK_TIMEOUT_MS60000Per attempt.
DEEPSEEK_MAX_RETRIES3For 408, 429, 5xx and network errors.

API limits and pricing

As documented by DeepSeek on 2026-10-18; check the Search & Fetch guide for current terms.

  • Queries are limited to 128 characters, filters included. count is 1–50.
  • Observed in practice: summaries run 1,000–3,500 characters (the docs say 600–800), page content from search is capped around 20,000 characters, and site: is a strong preference rather than a strict filter.
  • 5 QPS per account for search, and separately for fetch. Fetch also has a per-domain limit.
  • Billing is per successful request, published at $0.75 per 1,000 for each API. Empty results and errors are not billed.

Development

bash
npm installnpm test          # unit + MCP tests against a fake APInpm run build

Issues and PRs are welcome.

License

MIT. "DeepSeek" is a trademark of its owner and is used here only to describe the API this client calls.

来源:README.md,提交 5e931fb

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.1.0最新Oct 18, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分