Lookout

io.github.SylphxAIPublished by GitHub account SylphxAIv0.3.3Updated Oct 24, 2026

Lookout — web answers with source-level proof. Search and fetch citeable excerpts, no API key.

Overview

AI-generated overview

Lookout is a local MCP server that gives an assistant keyless web search, page fetching and extraction with citeable excerpts and explicit warnings when a fetch

What you can do
Search the public web through four keyless adapters (DuckDuckGo HTML, Wikipedia OpenSearch, npm registry, Hacker News Algolia) and get ranked hits that name the adapter used. Fetch a single URL with SSRF checks, redirect and size caps, returning a body-prefix span plus warnings or errors for blocked addresses, non-200 responses, truncation and empty extracts. Extract titles, metadata, tables and spans from HTML or a URL. Run a bounded same-origin crawl, or a named multi-step research tool that searches then fetches and extracts the top pages (default 3, max 6). Compare two texts or two URLs word by word, and query or manage the on-disk cache.
When to use it
Useful when an assistant should ground answers in opened pages rather than paraphrasing search snippets, and when you want failures reported as gaps instead of a confident summary. Fits research, fact-checking and reading public pages without signing up for a search API.
Requirements
Runs locally over stdio, typically started with npx from the npm package, so Node.js and network access are needed. No API key and no declared environment variables or headers. The first search still requires the network; later search and fetch calls may be served from the on-disk cache.
Before you install
Fetch and crawl send requests to third-party sites, and search queries go to the four public adapters. Fetch does not honor robots.txt unless respectRobots is set, while crawl honors it unless disabled. Cache is on by default for search and fetch, so a cache hit replays an earlier response from disk. The README states the repository is archived and merged into another tool, so check maintenance status before relying on it.

Installation

In SourceWeft

  1. Open Lookout in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

Merged into anymd (2026-09-25). anymd reads PDFs, Office files, EPUB, web pages, images and video into clean Markdown for AI agents: npx -y @sylphx/anymd. This repository is archived.

[Lookout]

Lookout

Web answers with source-level proof.

Search and fetch citeable excerpts. No API key. Hits name the adapter. Fetches keep a span, warnings, and gaps. Multi-step research is a separate tool.

[npm] [license]

npm @sylphx/lookout · bin lookout · MCP io.github.SylphxAI/lookout


The problem

A search snippet is a title and a URL. The agent then paraphrases a page it never opened. When the body is missing, a confident summary is worse than a gap.

The difference

A snippet saysLookout returns
“Release notes” and a URLtitle, description, excerpt span, and any table rows it could read
nothing when the fetch failsa warning or an error: blocked address, HTTP status, truncation, empty extract

Fetch reads the HTTP response. It does not run JavaScript, and it does not write a model summary.

Search, then open the page

bash
npx -y @sylphx/lookout search "Model Context Protocol"npx -y @sylphx/lookout fetch https://example.comnpx -y @sylphx/lookout extract https://example.com

search queries DuckDuckGo HTML, Wikipedia OpenSearch, the npm registry, and Hacker News Algolia, then ranks the hits. It does not fetch those pages and it does not run web_research.

Install

bash
npx -y @sylphx/lookout

That starts a stdio MCP server. No API key.

Your clientSetup
Any agent / CLInpx -y @sylphx/lookout
Claude Codeclaude mcp add lookout -- npx -y @sylphx/lookout
Claude Desktop / Cursor / VS Code / Codex"command": "npx", "args": ["-y", "@sylphx/lookout"]
json
{  "mcpServers": {    "lookout": { "command": "npx", "args": ["-y", "@sylphx/lookout"] }  }}

Tools

ToolWhen to call it
web_searchRanked hits from the four public adapters. No API key.
web_fetchOne URL. SSRF checks, redirect cap, size cap, body-prefix span.
web_extractTitle, metadata, tables, and spans from HTML or a URL.
web_cacheQuery or manage the on-disk cache. Not a web search.
web_crawlBounded same-origin crawl. Not the search default.
web_researchNamed multi-step tool: search, then fetch and extract the top pages (default 3, max 6).
web_diffAdded and removed words between two texts or two URLs.

There is no profile switch. The tool you name is the work that runs. Cache is on for search and fetch unless you pass useCache: false. A cache hit replays an earlier response from disk. The first search still needs the network.

Reference: tools · defaults

What it will not pretend

  • Private, loopback, and link-local addresses are rejected.
  • A failed adapter, a non-200 response, a truncated body, or an empty extract is reported. It is not turned into a clean answer.
  • web_fetch does not honor robots.txt unless you set respectRobots: true. web_crawl honors it unless you turn that off.
  • Lookout does not render a browser and does not synthesize an answer.

Companion MCP tools

ProductJob
CitraPDF answers with page-level proof
IrisImage facts and pixel evidence
CueVideo timelines and timestamp evidence
SpineRepository architecture and impact
LocusExact code-chunk retrieval

Each product is independent. Install only the tools your agent needs.

Documentation

Development

bash
bun installbun testbun run doctorbun run docs:build

License

MIT

Source: README.md at commit 87ae52c

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

3
  1. v0.3.3LatestSep 23, 2026
  2. v0.3.2Sep 23, 2026
  3. v0.3.1Sep 23, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts