Atlas / MCP servers / dralkh / Seerai

SeeraiBLOCK

mcp/dralkh/seerai

Zotero AI plugin Research assistant for Zotero 10. Chat with your library, run federated scholarly search, RAG, OCR, systematic reviews, and manage cloud storage. Includes standalone MCP, Agentic capabilities, and skills library.

Verdict
BLOCK
Grade
F
Trust score
20 /100
Exposed tools
54 36r · 16w · 2d
Transport
stdio
License
MIT
Stars
88
01

Overview

From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.

seerai is an intelligent research assistant plugin for Zotero 9/10 that integrates AI-powered chat, advanced search, structured data extraction, and systematic review workflows directly into your research workflow. Chat with your papers, extract structured data, run PRISMA-style reviews, and accelerate your literature review with a local-first, privacy-focused design.

Installation

From GitHub (Recommended)

  1. Download the latest release (.xpi file) from Releases.
  2. In Zotero, go to Tools → Add-ons.
  3. Click the gear icon ⚙️ and
Read from source at commit d338c4197636OBSERVED · 2026-10-07
Advertisement
02

Connect

Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control. Replace the environment placeholders with a token scoped to the least it needs.

claude-code
claude mcp add seerai --env ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY} --env EXA_API_KEY=${EXA_API_KEY} --env FOUNDRY_API_KEY=${FOUNDRY_API_KEY} --env MP_API_KEY=${MP_API_KEY} -- npx -y [email protected]
claude-desktop
{
  "mcpServers": {
    "seerai": {
      "command": "npx",
      "args": [
        "-y",
        "[email protected]"
      ],
      "env": {
        "ANTHROPIC_API_KEY": "${ANTHROPIC_API_KEY}",
        "EXA_API_KEY": "${EXA_API_KEY}",
        "FOUNDRY_API_KEY": "${FOUNDRY_API_KEY}",
        "MP_API_KEY": "${MP_API_KEY}"
      }
    }
  }
}
03

Exposed tools (54)

36 read · 16 write · 2 destructive. Blast radius: 2 tools can delete or overwrite — an agent that can be talked into calling a tool can be talked into calling this one.

ToolRiskDescription
check_environmentreadCheck available runtimes and tools on the host computer. Reports Python, Node, Git, pip/npm versions, and shell availability. Use before installing packages or running skill scripts.
citation-managementwriteValidate citations, organize references, manage Zotero collections, and create citation-backed notes.
clarifyreadPAgent-compatible clarification tool.
collectiondestructiveManage Zotero collections. Find, create, list contents, or add/remove items from collections.
contextwriteManage conversation context. Add items (papers, tags, collections) to focus the conversation, remove them, or list current context.
delegate_taskwriteRun a bounded non-tool sub-agent task through the plugin.
document-processingreadProcess PDFs, DOCX, markdown, images, and workspace files using SeerAI OCR, document conversion, and file tools.
execute_codewriteRun a temporary Python, JavaScript, or Bash snippet.
experimental-design-and-powerreadSupport study design, protocol criteria, outcome selection, effect measures, and power-analysis planning.
generate_item_tagsreadGenerate AI-powered tags for a Zotero item based on its content.
generate_tagsreadGenerate structured tags for an academic paper
get_item_metadatareadGet complete metadata for a Zotero item (authors, DOI, abstract, etc.).
import_paperwriteImport a paper from a federated scholarly corpus into Zotero. Accepts search_external paper IDs and common arXiv, DOI, PubMed, repository, preprint, and Semantic Scholar identifiers.
keyword_searchreadFast keyword-based search of your Zotero library using BM25 lexical matching.
literature-reviewwritePlan, screen, synthesize, and write literature reviews with Zotero collections, RAG, tables, and systematic review workflows.
mixture_of_agentswriteRun bounded non-tool sub-agent perspectives and synthesize.
notewriteCreate or edit Zotero notes. Create new notes attached to items/collections, or edit existing notes with operations.
paper-lookupwriteFind, inspect, import, and read academic papers using Zotero, Semantic Scholar, web search, related-paper discovery, and OCR-backed content reading.
patchwriteApply a targeted fuzzy patch to a workspace file.
peer-reviewreadReview papers or manuscripts for novelty, validity, reporting quality, methods, limitations, and actionable revisions.
processreadManage background terminal processes.
read_chunksreadRead specific text chunks/passages from indexed papers by chunk ID or item ID.
read_filereadRead a workspace text file with pagination.
read_item_contentreadRead the full content of an existing Zotero paper including notes and PDF text. Numeric item_id values are Zotero item IDs; string values are read-only aliases for existing Zotero items.
related_papersreadFind related papers via citations (forward) or references (backward).
scientific-writingreadDraft, revise, and structure scientific prose grounded in Zotero evidence and verified citations.
search_externalreadSearch external scholarly corpora. Defaults to Semantic Scholar; supports smart modes and specific corpora such as PubMed, arXiv, Europe PMC, CORE, BASE, Zenodo, HAL, bioRxiv, medRxiv, and IACR.
search_filesreadSearch workspace filenames and file contents.
search_libraryreadSearch the Zotero library for papers matching a query. Returns titles, authors, and IDs.
search_similarreadFind papers similar to a given item using embedding similarity.
semantic_searchreadSemantically search your Zotero library for relevant passages.
skill_inforeadGet filesystem information about a bundled skill: absolute skill directory path, available scripts, references, and assets. Use before executing skill scripts so you know the correct paths.
skill_managereadManage local Agent Skills registry state and trusted sources.
skill_referencereadRead a reference or script file from a bundled skill directory. Use this to access API documentation, configuration templates, or utility scripts included with a skill.
skill_viewreadView and activate the full instructions for one Agent Skill.
skills_listreadList and search SeerAI Agent Skills.
statistical-analysisreadGuide extraction and interpretation of effect sizes, confidence intervals, heterogeneity, and evidence synthesis.
systematic_reviewwriteRead and update systematic review projects, analyze papers, save grounded extraction data, and run or inspect evidence synthesis and gap analysis.
tablewriteManage research analysis tables. List tables, create new tables, add papers, add columns, generate AI data, complete PDF-aware generation, or read table contents. Prefer action=
task_completereadSignal that the current task is fully complete. Call this ONLY when ALL requested work has been DONE.
terminalwriteExecute a shell command in the workspace through guarded MCP execution.
todoreadPAgent-compatible TODO wrapper over todoread/todowrite.
todoreadreadRead the current TODO list for this session. Call this when you lose track of what remains to be done or after context compaction to recover your task state.
todowritewriteCreate or update a structured task list (TODO list) for the current session.
webreadSearch the web or read webpage content.
workspace_diffreadShow the diff (changes) for a workspace file between versions.
workspace_edit_filewriteEdit a file in the workspace by replacing an exact string match with new content.
workspace_globreadFind files in the workspace matching a glob pattern (e.g.
workspace_grepreadSearch for a regex pattern across files in the workspace.
workspace_logreadShow version history for a workspace file.
workspace_questionreadAsk the user one or more questions during execution. Returns the user
workspace_read_filereadRead a file from the workspace. Returns the file content and metadata.
workspace_write_filewriteWrite a file to the workspace. Creates the file if it does not exist, overwrites if it does.
write_filedestructiveWrite or overwrite a workspace file completely.
04

Trust audit

BLOCKgrade F · trust 20/100 Do not install this without reading the findings. The audit found something that could harm you or your machine.

LayerWhat it checksResult
L0Provenance & inventoryPASS
L1Static analysis of the codeWARN
L2Instruction surface (what it tells the agent)FAIL
L3Class-specific surfaceWARN
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
declared (7 observation(s))
Network
declared (9 observation(s))
Shell
declared (3 observation(s))
Dependencies
not all pinned
Secrets in source
found

Findings (25)

CRITICALPrompt injection · prompt.transfer_instruction · CWE-94, CWE-1427
skills/labarchive-integration/SKILL.md:199
python3 scripts/notebook_operations.py backup-all --email [email protected] --password AUTH_TOKEN
Why it matters. an instruction to move sensitive data to an outside destination
Fix. remove; a skill never needs the user's secrets off the machine
HIGHPrompt injection · prompt.credential_read · CWE-94, CWE-1427
skills/adaptyv/SKILL.md:22
When writing code, always read the API key from the environment variable `ADAPTYV_API_KEY` or from a `.env` file — never hardcode tokens. Check for a `.env` file in the project root first; if one exis
Why it matters. asks the agent to read credentials
HIGHPrompt injection · prompt.credential_read · CWE-94, CWE-1427
skills/autoskill/SKILL.md:14
> **Network access & environment variables.** This skill makes authenticated HTTP requests to (a) the user's local screenpipe daemon on loopback, and (b) the user-configured LLM backend — one of `http
Why it matters. asks the agent to read credentials
HIGHPrompt injection · prompt.credential_read · CWE-94, CWE-1427
skills/benchling-integration/SKILL.md:434
- Read only named environment variables (`BENCHLING_TENANT_URL`, `BENCHLING_API_KEY`, etc.)
Why it matters. asks the agent to read credentials
HIGHPrompt injection · prompt.credential_read · CWE-94, CWE-1427
skills/biopython/SKILL.md:54
For NCBI database access, always set your email address (required by NCBI). For reusable software, set a stable `Entrez.tool` value and register the tool/email with NCBI. For higher rate limits (10 re
Why it matters. asks the agent to read credentials
MEDIUMCode injection · code.dynamic_import · CWE-78, CWE-94, CWE-95
skills/diffdock/scripts/setup_check.py:40
module = __import__(import_name)
MEDIUMCode injection · code.dynamic_import · CWE-78, CWE-94, CWE-95
skills/timesfm-forecasting/scripts/check_system.py:362
mod = importlib.import_module(import_name)
MEDIUMNetwork egress · net.beacon_words · CWE-200, CWE-319
src/modules/systematicReview/utils.ts:222
"beacon",
MEDIUMNetwork egress · net.raw_ip · CWE-200, CWE-319
addon/prefs.js:148
pref("execServerUrl", "http://127.0.0.1:23120");
MEDIUMNetwork egress · net.raw_ip · CWE-200, CWE-319
mcp-server/src/index.ts:232
`[seerai] HTTP execution API listening on http://127.0.0.1:${execPort}`,
MEDIUMNetwork egress · net.raw_ip · CWE-200, CWE-319
mcp-server/src/index.ts:245
res.setHeader("Access-Control-Allow-Origin", "http://127.0.0.1:23119");
MEDIUMObfuscation / stealth · obf.base64_blob · CWE-506, CWE-94
skills/diffdock/assets/batch_template.csv:3
example_2,,COc1ccc(C#N)cc1,MSKGEELFTGVVPILVELDGDVNGHKFSVSGEGEGDATYGKLTLKFICTTGKLPVPWPTLVTTFSYGVQCFSRYPDHMKQHDFFKSAMPEGYVQERTIFFKDDGNYKTRAEVKFEGDTLVNRIELKGIDFKEDGNILGHKLEYNYNSHNVYIMADKQKNGIKVNFKIRHNIED
MEDIUMObfuscation / stealth · obf.base64_blob · CWE-506, CWE-94
skills/diffdock/scripts/prepare_batch_csv.py:172
'MSKGEELFTGVVPILVELDGDVNGHKFSVSGEGEGDATYGKLTLKFICTTGKLPVPWPTLVTTFSYGVQCFSRYPDHMKQHDFFKSAMPEGYVQERTIFFKDDGNYKTRAEVKFEGDTLVNRIELKGIDFKEDGNILGHKLEYNYNSHNVYIMADKQKNGIKVNFKIRHNIEDGSVQLADHYQQNTPIGDGPVLLPDNH
MEDIUMObfuscation / stealth · obf.base64_blob · CWE-506, CWE-94
skills/glycoengineering/SKILL.md:88
fc_sequence = "APELLGGPSVFLFPPKPKDTLMISRTPEVTCVVVDVSHEDPEVKFNWYVDGVEVHNAKTKPREEQYNSTYRVVSVLTVLHQDWLNGKEYKCKVSNKALPAPIEKTISKAKGQPREPQVYTLPPSREEMTKNQVSLTCLVKGFYPSDIAVEWESNGQPENNYKTTPPVLDSDGSFFLYSKLTVDKS
MEDIUMObfuscation / stealth · obf.homoglyph · CWE-506, CWE-94
skills/neuropixels-analysis/scripts/neuropixels_pipeline.py:133
ax.set_ylabel('Depth (μm)')
MEDIUMObfuscation / stealth · obf.homoglyph · CWE-506, CWE-94
skills/neuropixels-analysis/scripts/neuropixels_pipeline.py:143
print(f"  Estimated drift range: {drift_estimate:.1f} μm")
MEDIUMObfuscation / stealth · obf.homoglyph · CWE-506, CWE-94
skills/neuropixels-analysis/scripts/neuropixels_pipeline.py:383
print(f"Drift > 20 μm detected, applying motion correction...")
MEDIUMHard-coded secrets · secret.generic · CWE-798, CWE-321
skills/markitdown/SKILL.md:136
api_key="your-openrouter-api-key",
MEDIUMHard-coded secrets · secret.generic · CWE-798, CWE-321
skills/markitdown/SKILL.md:259
api_key="your-openrouter-api-key",
MEDIUMHard-coded secrets · secret.generic · CWE-798, CWE-321
skills/markitdown/SKILL.md:416
api_key="your-openrouter-api-key",
MEDIUMHard-coded secrets · secret.generic · CWE-798, CWE-321
skills/markitdown/assets/example_usage.md:130
api_key="your-openrouter-api-key",
MEDIUMHard-coded secrets · secret.generic · CWE-798, CWE-321
skills/markitdown/assets/example_usage.md:163
api_key="your-openrouter-api-key",
MEDIUMHard-coded secrets · secret.private_key · CWE-798, CWE-321
skills/autoskill/tests/test_redact.py:78
body = ("before\n-----BEGIN OPENSSH PRIVATE KEY-----\n"
MEDIUMSupply chain · prompt.pipe_to_shell · CWE-829, CWE-1357
skills/literature-review/SKILL.md:670
curl -fsSL https://parallel.ai/install.sh | bash
MEDIUMSupply chain · prompt.pipe_to_shell · CWE-829, CWE-1357
skills/nextflow/SKILL.md:38
curl -s https://get.nextflow.io | bash      # creates ./nextflow

Gates applied: critical_finding, no_behavioural_pass, undeclared_transfer.

Audited 2026-10-07 · audit v0.4.1 · source sha d338c4197636full audit observations/trust-audit/mcp-server/dralkh__seerai.json · Report an issue / request a re-scan
05

Audit history

Every audit this server has had. A grade with a past is a grade somebody is still checking.

DateSourceVerdictGradeScoreChange
2026-10-07d338c4197636BLOCKF20first audit
06

Questions

What is the Seerai MCP server?

Zotero AI plugin Research assistant for Zotero 10. Chat with your library, run federated scholarly search, RAG, OCR, systematic reviews, and manage cloud storage. Includes standalone MCP, Agentic capabilities, and skills library.

What tools does Seerai expose?

54 in total: 36 read-only, 16 that write, and 2 that can delete or overwrite (collection, write_file). Every one is listed on this page with its risk.

Is Seerai safe to connect to an agent?

No — not without reading the findings first. The audit graded it F (20/100) and found 5 critical or high issues in the source. Each one is listed on this page with the file and line it is on. Separately from the audit: 2 of its tools can destroy data, so scope the token you give it to what you actually need.

What credentials does Seerai need?

It reads ANTHROPIC_API_KEY, EXA_API_KEY, FOUNDRY_API_KEY, MP_API_KEY, NCBI_API_KEY, OPENROUTER_API_KEY, PARALLEL_API_KEY and SCREENPIPE_TOKEN from the environment. Give it a token scoped to the least it needs — an agent that can be talked into calling a tool can be talked into calling it with your credentials.

How does Seerai run?

It speaks stdio, so it runs as a local process your client starts. It is published on npm as seerai at 1.9.43.

How current is this page?

The grade is for one exact copy of the source (d338c4197636), read on 2026-10-07. The repository is watched and re-audited when it changes.

Advertisement