TinyFish Guided Research

io.github.MohdSaleh由 GitHub 账号 MohdSaleh 发布v1.0.0更新于 Oct 27, 2026

Auditable deep-research MCP server powered by TinyFish Search and Fetch.

发布方自己的服务:TinyFish AI Web Agent

概览

AI 生成的概览

一个可审计的深度研究 MCP 服务器,基于 TinyFish 的搜索与抓取,跨步骤跟踪来源、论断、证据与引用。

可以做什么
  • 运行多步骤研究流程:规划、搜索、筛选来源并通过 TinyFish 抓取内容
  • 跨步骤保存研究状态,包括论断、证据、冲突证据与研究缺口
  • 将引文与已抓取内容比对,并在定稿前核验引用
  • 对通过不同网址或镜像出现的同一来源去重
  • 执行研究预算与停止条件
  • 在本地用 SQLite 或为共享/托管场景用 PostgreSQL 持久化状态
适用场景
适合需要结构化、可审计研究流程而非临时搜索的场景:多步骤调查中必须跟踪并核验来源、论断与引用,且由客户端模型负责推理、服务器负责保存状态。
运行要求
以本地进程方式运行 PyPI 包(需 Python 3.11+ 及 uv/uvx),或使用托管的 Streamable HTTP 端点。必须通过 TINYFISH_API_KEY 提供 TinyFish API 密钥。可选 RESEARCH_DB_PATH 用于 SQLite 状态,或多实例部署时用 DATABASE_URL 连接 PostgreSQL。
安装前请注意
TINYFISH_API_KEY 是必需的密钥,会随搜索与抓取请求发送给 TinyFish。DATABASE_URL 是包含数据库凭据的密钥连接串。研究状态会写入本地 SQLite 文件或 PostgreSQL 数据库,请谨慎选择存储位置。搜索与抓取请求会发往第三方服务。

安装

在 SourceWeft 中

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

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

其他 MCP 客户端

参照 仓库 中的启动说明。

README

TinyFish Guided Research MCP

An MCP server that adds a simple research workflow on top of TinyFish Search and Fetch.

The client model does the reasoning. The server keeps track of the research run, handles the search and fetch flow, stores the state, checks evidence and citations, and tells the client what should happen next.

There is no LLM running inside the server.

How it works

A research run usually follows this flow:

text
Research request      ↓Plan      ↓Search      ↓Review sources      ↓Fetch useful content      ↓Track claims and evidence      ↓Check what is supported or still missing      ↓Research the gaps      ↓Verify citations      ↓Finalize

Search results are treated as candidates first, not as evidence by default.

The server also keeps duplicate sources from being counted more than once. This includes cases where the same paper or source appears through different URLs or mirrors.

Quotes are checked against the fetched source content, while semantic decisions such as whether a passage actually supports a claim are left to the client model.

Conflicting evidence is kept in the research state instead of being ignored, and citations are checked before the research is finalized.

What it handles

  • Research state across multiple steps
  • TinyFish Search and Fetch calls
  • Source screening and duplicate handling
  • Claim and evidence tracking
  • Quote checks against fetched content
  • Conflicting evidence
  • Research gaps and follow-up searches
  • Citation verification
  • Research budgets and stopping conditions
  • SQLite and PostgreSQL persistence

Quick start

Hosted

The hosted MCP endpoint is:

text
https://tinyfish-guided-research-mcp.fastmcp.app/mcp

Use it as a Streamable HTTP MCP server.

Local

Requires Python 3.11+ and a TinyFish API key.

bash
TINYFISH_API_KEY="your-api-key" uvx tinyfish-guided-research-mcp

Example MCP client config:

json
{  "mcpServers": {    "tinyfish-research": {      "command": "uvx",      "args": ["tinyfish-guided-research-mcp"],      "env": {        "TINYFISH_API_KEY": "your-api-key"      }    }  }}

The compatibility entrypoint is also available:

bash
uvx --from tinyfish-guided-research-mcp tinyfish-research-mcp

Storage

SQLite is fine for local or single-instance use:

bash
export RESEARCH_DB_PATH="research_state.db"

For hosted or multi-instance deployments, use PostgreSQL:

bash
export DATABASE_URL="postgresql://user:password@host:5432/database?sslmode=require"

PostgreSQL is the better option when more than one server instance can access the same research state.

Distribution

The server is available through PyPI, the official MCP Registry, and the hosted Horizon endpoint.

PyPI:

text
tinyfish-guided-research-mcp

MCP Registry:

text
io.github.MohdSaleh/tinyfish-guided-research

Hosted MCP:

text
https://tinyfish-guided-research-mcp.fastmcp.app/mcp

Development

Clone the repo and install the dependencies:

bash
git clone https://github.com/MohdSaleh/tinyfish-guided-research-mcp.gitcd tinyfish-guided-research-mcpuv sync --all-extras

Run it locally:

bash
TINYFISH_API_KEY="your-api-key" uv run tinyfish-guided-research-mcp

Run the checks:

bash
uv run ruff check .uv run ruff format --check .uv run pyrightuv run pytestuv run python evals/run_evals.pyuv run pip-audituv build

The regular tests cover the implementation and storage layer. The research evals cover cases such as duplicate sources, weak evidence, quote mismatches, superseded claims, and citation coverage.

You can also inspect the MCP tools with:

bash
npx @modelcontextprotocol/inspector \  --cli uv run tinyfish-guided-research-mcp \  --method tools/list

Deploying on Horizon

If you want to deploy your own instance with Prefect Horizon, use:

text
Entrypoint:src/tinyfish_research_mcp/server.py:mcp
Dependencies:pyproject.toml

Set:

text
TINYFISH_API_KEYDATABASE_URL

Use PostgreSQL for hosted deployments instead of the local SQLite fallback.

License

MIT

来源:README.md,提交 cbb1511

工具

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

版本历史

1
  1. v1.0.0最新Sep 16, 2026

评分

已满足适用检查项的 50%

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

  • 近 30 天内可连通25 分

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

  • 已声明认证方式10 分

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

  • 已列出工具15 分

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

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

其他 Tinyfish 集成