sciverse-mcp-server

Search paper and patent metadata, run semantic retrieval and read full text from the Sciverse platform

Official · OpenDataLab TypeScript Local · stdio Web searchKnowledge and memory

55 popularity score ★ 129 ↓ 848/wk

Connect your client

Local (npm)

Add in one click

Opens the app, which asks before it adds the server. Then replace each <NAME> in its settings with your value.

Or add it by command or config

It needs SCIVERSE_API_TOKEN. Replace each <NAME> with your value.

Claude CodeTerminal
claude mcp add sciverse -e SCIVERSE_API_TOKEN=<SCIVERSE_API_TOKEN> -- npx -y sciverse-mcp-server
Claude Desktopclaude_desktop_config.json
{
  "mcpServers": {
    "sciverse": {
      "command": "npx",
      "args": [
        "-y",
        "sciverse-mcp-server"
      ],
      "env": {
        "SCIVERSE_API_TOKEN": "<SCIVERSE_API_TOKEN>"
      }
    }
  }
}
Cursor~/.cursor/mcp.json
{
  "mcpServers": {
    "sciverse": {
      "command": "npx",
      "args": [
        "-y",
        "sciverse-mcp-server"
      ],
      "env": {
        "SCIVERSE_API_TOKEN": "<SCIVERSE_API_TOKEN>"
      }
    }
  }
}
VS Code.vscode/mcp.json
{
  "servers": {
    "sciverse": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "sciverse-mcp-server"
      ],
      "env": {
        "SCIVERSE_API_TOKEN": "<SCIVERSE_API_TOKEN>"
      }
    }
  }
}
Codex~/.codex/config.toml
[mcp_servers.sciverse]
command = "npx"
args = ["-y", "sciverse-mcp-server"]

[mcp_servers.sciverse.env]
SCIVERSE_API_TOKEN = "<SCIVERSE_API_TOKEN>"
Gemini CLITerminal
gemini mcp add --scope user -e SCIVERSE_API_TOKEN=<SCIVERSE_API_TOKEN> sciverse npx -- -y sciverse-mcp-server

Settings 4

SCIVERSE_API_TOKEN secret Required: Sciverse API bearer token from sciverse.space; can be left out after sciverse auth login saved ~/.sciverse/credentials.json.
SCIVERSE_BASE_URL Optional: API endpoint; must be a *.sciverse.space host. Default https://api.sciverse.space.
SCIVERSE_ENABLE_LEGACY_TOOLS Optional: Set to true to also list the deprecated search_papers tool. For search_papers.
PORT Optional: Listening port for the sciverse-mcp-http program. Default 8080. For sciverse-mcp-http.

What it does

sciverse-mcp-server is OpenDataLab's MCP server for Sciverse, a hosted index of academic papers and patents. It runs on your machine over stdio and passes each tool call to the Sciverse API with your token.

There are six tools in the published package. search_metadata does structured search over papers, patents, authors or sources, with filters, sorting, facets and cursor paging. semantic_search pulls matching text chunks from papers so an agent can quote them. read_content returns a slice of a paper's or patent's text, 4096 code points from the start unless you pass offset and limit. list_catalog shows which fields exist and what values they take. list_paper_relations pages through a paper's citations, references or related works. get_resource fetches a figure or table and hands it back as an image block a multimodal model can look at.

The package README still lists the older search_papers tool and leaves out list_paper_relations. In the code search_papers is now a deprecated alias, offered only when SCIVERSE_ENABLE_LEGACY_TOOLS is set to true (src/server.ts, openapi.yaml). Tool names and schemas are generated from the repository's openapi.yaml at build time.

The package also installs sciverse-mcp-http, which the README skips. It serves the same tools over Streamable HTTP at /mcp on 0.0.0.0, port 8080 unless PORT is set (src/cli-http.ts).

What it needs

RuntimeNode.js 18+
Runs onmacOS, Windows, Linux
Sciverse (sciverse.space)API token from the Sciverse console, or saved to ~/.sciverse/credentials.json by the sciverse Python CLI

Get an API token at https://sciverse.space and pass it as SCIVERSE_API_TOKEN. Or run pip install sciverse && sciverse auth login once, which saves it to ~/.sciverse/credentials.json and lets you drop the env block. The server stops at start when it finds neither (src/config.ts).

Limits

  • Read only All tools only read from the Sciverse index. Nothing can be uploaded, annotated or changed.
  • Not covered Searches the Sciverse index only, not the open web or other paper databases.
  • Not covered semantic_search covers papers only; read_content takes papers or patents, and author or source IDs cannot be read.
  • Limit SCIVERSE_BASE_URL must be sciverse.space or a subdomain of it. Any other host stops the server at start (src/config.ts).
  • Size cap search_metadata returns 25 results per page by default, at most 50 with page_size. semantic_search returns 10 chunks by default, up to 100 with top_k.
  • Size cap read_content reads 4096 code points by default when limit is not given, up to 524288.
  • Early release search_papers is deprecated and hidden unless SCIVERSE_ENABLE_LEGACY_TOOLS=true, although the README still lists it.

Read-only retrieval: it cannot upload papers, annotate or change anything on the platform. It only searches the Sciverse index, not the open web or other paper databases. SCIVERSE_BASE_URL must be sciverse.space or a *.sciverse.space subdomain; any other host stops the server at start (src/config.ts), so it cannot be pointed at a self-hosted or third-party API. The stdio program speaks stdio only; HTTP is a separate program (sciverse-mcp-http) the README does not describe.

Who it suits

Suits developers and researchers who want an agent to find papers or patents, follow citations, quote passages and look at figures, and who are fine creating a Sciverse account and token. Every query goes to the vendor's API, so it is no fit for offline work or for sources outside the Sciverse index. Setups built on the old search_papers tool should move to search_metadata or turn the legacy flag on. A team can share one instance by running the bundled HTTP program.

Tools 7

7 only read. A ? marks an optional parameter.

search_metadata
Structured search over papers, patents, authors or sources with filters, sort, facets and cursor pagingquery?: stringcollection?: enumfilters?: arraysort?: arrayfields?: arraypage?: integerpage_size?: integercursor?: stringfacets?: arrayfreshness_boost?: stringimpact_boost?: stringlanguage_affinity?: string
semantic_search
Natural-language search returning matching paper chunks for cited answersquery: stringtop_k?: integersource_types?: arrayfilters?: objectmode?: enum
read_content
Read a range of a paper's or patent's text by offset and limit in code pointsdoc_id: stringcollection?: enumoffset?: integerlimit?: integer
list_catalog
List a collection's searchable fields, what can be filtered or sorted, and sample valuescollection?: enuminclude_sample_values?: booleaninclude_field_stats?: boolean
list_paper_relations
Page through a paper's citations, references or related worksunique_id: stringrelation: enumpage?: integerpage_size?: integer
get_resource
Fetch a figure or table image from a paper as an MCP image blockfile_name: string
search_papers
Deprecated paper search kept for old setups, listed only with SCIVERSE_ENABLE_LEGACY_TOOLS=true

Similar servers