Give your AI agent the parts of the internet web search doesn't reach.
OmniSeek is an add-on for AI assistants and agents like Claude Code, Cursor, and Codex that lets them search where web search stops.
- Ask in English, get what people actually said on Bilibili, and Zhihu when you ask for it, with links to the original posts.
- Get the papers a research field is built on, and the recent ones building on them, in one answer.
- Have your agent watch a topic and tell you only what is new since last time.
uv tool install omniseek
claude mcp add omniseek -- omniseekRuns on your own computer. It plugs in through MCP, the standard way AI apps like Claude Code and Cursor add tools. Cursor and Codex: one line each, see Install.
One real question, asked in Chinese: in Mu Li's 87-minute Bilibili walkthrough of the Transformer paper, what does he say about the paper's writing, and at what minute?
- Web search answered from other people's notes: "around minutes 1 to 8", and asked again, "between about 1:50 and 2:30". A search for his exact words found nothing.
- With OmniSeek, the agent transcribed all 87 minutes locally and found the line at 1:21:51: 「这篇文章的写作是非常简洁的,因为就是说他每一句话就基本上在讲一件事情。」 "The writing of this paper is very concise: basically, every sentence says one thing." Asked again, it gave the same line from cache in 0.1 s.
The full comparison on three questions, with sources, dates, and a short video.
- Chinese communities: Bilibili videos and comments, Zhihu answers when you ask for them, recent V2EX threads, all with links to the posts. More: Bilibili, Zhihu
- Across languages: ask in English, search in Chinese, answer in English. And the reverse. More
- Podcasts and videos: turns speech into text on your own computer and quotes it with the minute (optional add-on). More
- Research papers: which papers a field is built on and which recent ones cite them. More
- New since last time: save a search once; each rerun shows only what is new. More
- Sites you log in to: if you switch it on, your agent reads them through your own browser login. Off by default. More
It also keeps what it finds in a local index on your computer, so later searches start from what it already knows.
The two commands above are all you need, with Python 3.11 or newer (uv installs it if you don't have it). Your AI app starts OmniSeek when it needs it. Nothing to keep running, no port to open.
Cursor, Codex, pipx, Docker, and the optional add-ons (podcast transcription, PDF reading, sites you log in to) are in Install.
OmniSeek runs on your computer. There is no OmniSeek cloud, no account, no telemetry: your agent's searches go straight to the sites you turned on. Public sites are on by default. Sites that need a login are off until you switch them on, and then they use the login already in your own browser; OmniSeek never sees your password. What it builds up as you use it stays in local files you own.
OmniSeek has no AI model of its own and sends nothing to a server of ours. Your agent does the thinking; OmniSeek goes and gets things. Settings: Configuration.
Your agent starts with omniseek_search; omniseek_sources shows what is available. The rest, from paper maps to saved searches and the notes your agent keeps (omniseek_ruling, omniseek_statement):
| Tool | What it does |
|---|---|
omniseek_search |
Search the whole catalog at once, remove duplicates, rank. Works across languages. |
omniseek_read |
Turn any URL or document (web page, PDF, arXiv) into clean text. |
omniseek_view |
Look at images, document figures, and video frames. |
omniseek_transcribe |
Transcribe audio or video locally, English and Chinese, from any timestamp. |
omniseek_field_skeleton |
Map a research field's citations: the papers it is built on and the recent ones. |
omniseek_resolve_identity |
Match a person's name to candidate author IDs across databases. |
omniseek_coauthors |
Map a researcher's collaborators by number of joint papers. |
omniseek_institution_cohort |
List who actively publishes at a lab, within a field. |
omniseek_paper_enrich |
Open-access PDF, retraction status, and citation count for a paper. |
omniseek_paper_recommend |
Similar papers (SPECTER embeddings) that keyword search misses. |
omniseek_graph |
Query the local graph of what OmniSeek has found: find, neighborhood, between, since, similar. |
omniseek_sensor |
Saved searches that rerun on a schedule and report only what is new. |
omniseek_ruling |
Record that two entries are (or are not) the same person or thing. |
omniseek_statement |
Record a directed relation between two entries. |
omniseek_curator_act |
Propose, test, add, or retire a source. |
omniseek_curator_view |
Read the queue of proposed sources or one source's report. |
omniseek_gather |
Run several tools in parallel, one response. |
omniseek_sources |
List sources by domain, region, capability, and health. |
One MCP prompt comes with them: investigate(target, shape, context), a ready-made investigation recipe, where shape is person, lab, field, product or chase and the optional context narrows the angle.
Every parameter, and what each returned field means: TOOLS.md. Each tool's own description ends by pointing at its section there.
Worked examples, real outputs · A full case study · FAQ, including how it differs from Exa and Tavily · All sources · Source health, updated weekly
How we test these claims: a test only counts if we first checked that plain web search could not find its answer on the first page (latest results). Using Claude Code? skills/omniseek-investigate is a ready-made research method: search wide, narrow in, add structure.
See CONTRIBUTING.md: a new source has to find something plain web search doesn't. Fixing a source that stopped working is always welcome.
By participating you agree to the Code of Conduct.
Give your AI agent the parts of the internet web search doesn't reach.
Apache-2.0 · NOTICE · Security · Cite
