TinyFish Guided Research

Registre officiel Recherche et web

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

Installation

Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).

PYPI package tinyfish-guided-research-mcp
Claude Code
claude mcp add tinyfish-guided-research -e 'TINYFISH_API_KEY=<your tinyfish_api_key>' -e 'DATABASE_URL=<your database_url>' -e 'RESEARCH_DB_PATH=<RESEARCH_DB_PATH>' -- uvx tinyfish-guided-research-mcp==1.0.0
Configuration JSON (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "tinyfish-guided-research": {
            "command": "uvx",
            "args": [
                "tinyfish-guided-research-mcp==1.0.0"
            ],
            "env": {
                "TINYFISH_API_KEY": "<your tinyfish_api_key>",
                "DATABASE_URL": "<your database_url>",
                "RESEARCH_DB_PATH": "<RESEARCH_DB_PATH>"
            }
        }
    }
}

Variables d'environnement

  • TINYFISH_API_KEY obligatoire secret TinyFish API key used by Search and Fetch.
  • DATABASE_URL secret Shared PostgreSQL connection URL for durable production state. Recommended for remote/multi-replica hosting.
  • RESEARCH_DB_PATH SQLite persistence path used when DATABASE_URL is unset. Intended for local/single-instance usage.

Documentation

Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.

Sommaire
  1. TinyFish Guided Research MCP
  2. How it works
  3. What it handles
  4. Quick start
  5. Storage
  6. Distribution
  7. Development
  8. Deploying on Horizon
  9. License

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:

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:

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.

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

Example MCP client config:

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

The compatibility entrypoint is also available:

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

Storage

SQLite is fine for local or single-instance use:

export RESEARCH_DB_PATH="research_state.db"

For hosted or multi-instance deployments, use PostgreSQL:

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:

tinyfish-guided-research-mcp

MCP Registry:

io.github.MohdSaleh/tinyfish-guided-research

Hosted MCP:

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

Development

Clone the repo and install the dependencies:

git clone https://github.com/MohdSaleh/tinyfish-guided-research-mcp.git
cd tinyfish-guided-research-mcp
uv sync --all-extras

Run it locally:

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

Run the checks:

uv run ruff check .
uv run ruff format --check .
uv run pyright
uv run pytest
uv run python evals/run_evals.py
uv run pip-audit
uv 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:

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:

Entrypoint:
src/tinyfish_research_mcp/server.py:mcp

Dependencies:
pyproject.toml

Set:

TINYFISH_API_KEY
DATABASE_URL

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

License

MIT

Questions fréquentes

Qu'est-ce que TinyFish Guided Research ?

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

Comment installer TinyFish Guided Research ?

Il s'exécute sur votre machine. Dans Claude Code : claude mcp add tinyfish-guided-research -e 'TINYFISH_API_KEY=<your tinyfish_api_key>' -e 'DATABASE_URL=<your database_url>' -e 'RESEARCH_DB_PATH=<RESEARCH_DB_PATH>' -- uvx tinyfish-guided-research-mcp==1.0.0. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.

Faut-il une clé API pour TinyFish Guided Research ?

Oui. Il attend TINYFISH_API_KEY, DATABASE_URL, à renseigner dans sa configuration.

TinyFish Guided Research est-il open source ?

Oui. Son code est sur GitHub sous licence MIT.

Qui maintient TinyFish Guided Research ?

Il est publié par MohdSaleh. AI.tn le référence sans le maintenir ni le recommander.

Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.