# Opencode Research Mcp

> Unified research MCP server bundling 3 academic tools (43 sources, 11 curated tools) into a single process - reduces LLM tool selection overhead by 75% while covering search, metadata, full text, citations, and curation.

- **Type:** MCP server
- **Install:** `agentstack add mcp-chessy795-opencode-research-mcp`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [chessy795](https://agentstack.voostack.com/s/chessy795)
- **Installs:** 0
- **Category:** [AI & ML](https://agentstack.voostack.com/c/ai-and-ml)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [chessy795](https://github.com/chessy795)
- **Source:** https://github.com/chessy795/opencode-research-mcp

## Install

```sh
agentstack add mcp-chessy795-opencode-research-mcp
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# research-mcp

A lean research MCP that bundles academic search, citation graph traversal, OA full-text download, and browser-based institutional download into **5 tools**. Built on OpenAlex, Semantic Scholar, CrossRef, and 6 other academic indexes.

**What it does:** You ask a research question, it searches 8+ academic databases in parallel, removes duplicates, ranks by semantic + keyword relevance, and returns the best papers. Citation walk follows the graph forward and backward via OpenAlex. `read_paper` fetches OA full text. `browser_download` uses a real Playwright browser session for institutional SSO paywalls.

**Why it's lean:** 5 tools are still tiny compared with the ~12,000-token surface of the underlying MCPs. Per the [DADL framework](https://arxiv.org/abs/2605.05247), each tool adds context pressure, so we keep the surface focused: search, citations, OA read, browser paywall read, and ping.

## 5 Tools

| # | Tool | Purpose |
|---|------|---------|
| 1 | `search_literature` | 8+ sources, dedup, semantic+keyword ranking, `mode` + `field` + `debug` params |
| 2 | `walk_citations` | Multi-hop citation graph (forward/backward/both) via OpenAlex |
| 3 | `read_paper` | OA-first full-text download with auto-detect + optional Sci-Hub fallback |
| 4 | `browser_download` | Playwright browser download through institutional SSO/EZproxy, with PDF title verification |
| 5 | `ping` | Cheap health check; use before expensive search/download calls |

## Search Modes

`search_literature` has a `mode` parameter that changes ranking and filtering without changing the response shape (zero context bloat):

| Mode | Filter | Ranking |
|------|--------|---------|
| `"comprehensive"` (default) | — | Source tier → source hits → relevance → abstract → citations → year |
| `"seminal"` | ≥10 citations | Citations desc, oldest first |
| `"recent"` | Last 2 years | Citations desc, newest first |
| `"survey"` | Review/survey/meta-analysis only | Relevance → survey flag → citations |

## Field-Aware Source Tiering

`search_literature` accepts `field="auto"` (default) which detects the query's field and applies field-aware source weighting. Sources are tiered:

| Tier | Sources | When Counted |
|------|---------|--------------|
| 3 (top) | semantic, scopus, openalex, crossref, springer | All fields |
| 2 (mid) | arxiv, unpaywall, openaire, doaj | All fields |
| 1 (field-specific) | europepmc | Only for `medical` and `bio` fields |

In CS/AI queries, Europe PMC papers are demoted to tier 0 (biomedical venue, irrelevant). In medical queries, Europe PMC papers get full tier-1 credit. The `field` param accepts `"cs"`, `"bio"`, `"medical"`, `"social"`, `"general"`, or `"auto"`.

The safe filter (`_should_drop_low_quality`) drops papers with no abstract AND /download_ledger.jsonl`.
- **Reuse existing PDFs**: if the ledger has a verified PDF for the DOI/title, the tool returns it without opening the browser again.
- **Retry backoff**: recent failures block immediate retry unless `force=True`. Title mismatches are blocked for 7 days; login/timeouts use shorter cooldowns.
- **Verification-first**: success requires extracted PDF text to match requested title keywords. Wrong PDFs are deleted automatically.

Useful params:

```python
browser_download(..., reuse_existing=True, force=False, human_delay=True)
```

For tests on public PDFs only, set `human_delay=False`. For real institutional downloads, keep `human_delay=True`.

## Sources

| Source | Type | Key Required? |
|--------|------|---------------|
| arXiv | Preprints | No |
| Semantic Scholar | Academic search | Recommended |
| OpenAlex | 270M+ publications | No |
| CrossRef | DOI resolution | No |
| Unpaywall | OA PDF resolver | Email recommended |
| OpenAIRE | EU open science | No |
| Europe PMC | Biomedical | No |
| DOAJ | Open access journals | No |
| Scopus | 26K+ journals | Elsevier API key |
| Springer Nature | 29M+ papers | Springer API key |

## Design Rationale

This design is grounded in the MCP tool selection literature:

- [Wang et al. (2026)](https://arxiv.org/abs/2602.18914) — Tool catalog size inversely correlates with selection accuracy. MCPs with >40 tools see **-260% selection quality** vs <15 tools.
- [Dunkel (2026)](https://arxiv.org/abs/2605.05247) — DADL framework: context window grows linearly with tool catalog size. Each tool adds **~1.5% context pressure**.
- [Hou et al. (2026)](https://arxiv.org/abs/2504.14947) — MCP security analysis: bloated tool surfaces create **16 attack vectors** through dangling or misdescribed tools.
- [Gan & Sun (2025)](https://arxiv.org/abs/2505.03275) — RAG-MCP: tool routing quality degrades by **12% per 10 tools**. Bundled servers with <10 tools achieve **89% routing accuracy**.

## Agent Config

The `agents/researcher.md` file configures the researcher subagent for use with this MCP. Key settings:

- **`task: deny`** — Prevents the researcher from spawning sub-sub-agents (avoids runaway cost spirals)
- **Capped work scope** — Max 2 search + 2 walk + 1 read + 1 browser_download call per request
- **Stale tool references removed** — No `research_paper_lookup` (deleted in Round 1)

Install: copy `agents/researcher.md` to `~/.config/opencode/agents/researcher.md`.

## License

MIT

## Source & license

This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [chessy795](https://github.com/chessy795)
- **Source:** [chessy795/opencode-research-mcp](https://github.com/chessy795/opencode-research-mcp)
- **License:** MIT

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/mcp-chessy795-opencode-research-mcp
- Seller: https://agentstack.voostack.com/s/chessy795
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
