Skip to main content
Glama
SMABoundless

Unpaywall MCP Server

by SMABoundless

Unpaywall MCP Server

An MCP (Model Context Protocol) server for the Unpaywall API — open-access availability for 120M+ scholarly articles.

Built with FastMCP.

Tools

Tool

Description

unpaywall_lookup

Look up open-access availability by DOI — returns OA status, PDF/landing page URLs, license, all OA locations

unpaywall_search

Search 120M+ article titles with OA filtering and pagination

unpaywall_export_ris

Export results as RIS (for Zotero, EndNote, etc.)

unpaywall_export_bibtex

Export results as BibTeX

Related MCP server: unpaywall-mcp

What you get

  • Open-access status and OA type (gold, green, hybrid, bronze)

  • Best OA location with direct PDF link

  • All OA locations across repositories and publishers

  • Journal OA status, ISSN, publisher info

  • Author lists, publication dates, DOIs

  • License information per location

Setup

1. Get your email ready

Unpaywall requires an email address as your API identifier (no API key needed). See the Unpaywall API docs.

2. Install

pip install unpaywall-mcp-server

Or install from source:

cd unpaywall-mcp-server
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt

3. Add to Claude Desktop

Add this to your claude_desktop_config.json:

{
  "mcpServers": {
    "unpaywall": {
      "command": "uvx",
      "args": ["unpaywall-mcp-server"],
      "env": {
        "UNPAYWALL_EMAIL": "your-email@example.com"
      }
    }
  }
}

Or if using Claude Code CLI:

claude mcp add unpaywall \
  uvx unpaywall-mcp-server \
  -e UNPAYWALL_EMAIL=your-email@example.com

Usage examples

  • "Is there an open-access version of DOI 10.1038/nature12373?"

  • "Search Unpaywall for open-access papers on CRISPR gene editing"

  • "Export these results as RIS for Zotero"

  • "Find OA articles about climate change mitigation"

License

MIT

Available Tools

4 tools
unpaywall_export_bibtexA

Export the most recent unpaywall_lookup or unpaywall_search results as BibTeX format.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description carries the burden. It discloses that it uses the 'most recent' results, implying statefulness, but does not mention side effects, prerequisites, or error conditions. Adequate but minimal.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, front-loaded with action and format, no wasted words. Perfectly concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no parameters and no annotations, the description is minimal. It omits the dependency on prior tool calls and the fact that only the most recent results are exported. Output schema exists, so return values are covered, but the overall context of usage is incomplete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

No parameters, so baseline is 4. The description adds meaning by specifying what is exported (results of lookup/search) and the format (BibTeX), which is beyond the empty schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool exports the most recent results from unpaywall_lookup or unpaywall_search in BibTeX format. It distinguishes from export_ris by specifying the format, but could be more explicit about the exact resource.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit when-to-use or when-not-to-use guidance. It implies it must follow a lookup or search, but doesn't warn that previous results are overwritten, nor does it compare with export_ris.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

unpaywall_export_risA

Export the most recent unpaywall_lookup or unpaywall_search results as RIS format. Save output as a .ris file and import into Zotero: File -> Import.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry the full burden. It discloses that it exports the most recent results and produces a .ris file, but it does not state behavior when no previous results exist, file naming conventions, or error handling. This is adequate but not comprehensive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences with no wasted words. The first sentence states the core function, and the second gives a concrete usage instruction. Perfectly front-loaded and efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has no parameters but has an output schema (not shown). The description explains the output file format and a use case, but it does not cover edge cases (e.g., no prior results, multiple results). Given the tool's simplicity, the description is mostly sufficient but misses some context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters, and schema coverage is 100%. With no parameters to describe, the description adds no parameter information beyond the schema, but baseline for 0 params is 4. The description naturally cannot add value here.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool exports the most recent unpaywall lookup or search results to RIS format, which is a specific verb and resource. It distinguishes from sibling tools (unpaywall_export_bibtex exports to BibTeX, unpaywall_lookup and unpaywall_search have different functions).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit context: it exports the most recent results and gives instructions to import into Zotero via File -> Import. It implies a prerequisite (prior lookup/search) but does not explicitly state when not to use it or alternatives (e.g., use unpaywall_export_bibtex for BibTeX format).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

unpaywall_lookupA

Look up open-access availability for a scholarly article by DOI.

Returns OA status, best OA location (PDF/landing page URL, license), all OA locations, journal info, authors, and publication details.

Args: doi: The DOI to look up (e.g. "10.1038/nature12373")

ParametersJSON Schema
NameRequiredDescriptionDefault
doiYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It lists return data but does not disclose potential side effects, authentication needs, rate limits, or error behavior. However, the tool name and context suggest a read-only operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences plus an args line, front-loaded with purpose, then returning details. No redundant text, every sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter lookup tool, the description covers purpose, parameter, and output. The output schema further clarifies return values. Missing error handling or edge cases, but overall complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema coverage, the description is essential. It explains the 'doi' parameter with an example and states its purpose ('The DOI to look up'). This adds significant value beyond the schema's 'Doi' title.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the tool's purpose: 'Look up open-access availability for a scholarly article by DOI.' It specifies the verb and resource, and distinguishes from siblings (export and search tools) by focusing on a specific DOI lookup.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when a DOI is known, but does not explicitly state when to use this tool versus alternatives like 'unpaywall_search'. No guidance on when not to use or prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

A4/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose: lookup by DOI, search by title, and export in two different formats (BibTeX and RIS). No overlap in functionality.

Naming Consistency5/5

All tools follow a consistent 'unpaywall_verb_noun' pattern in snake_case, making it easy to predict tool names and understand their actions.

Tool Count4/5

With 4 tools, the server is focused but not overly minimal. It covers the core use cases (lookup, search, export) without unnecessary extras.

Completeness4/5

The tool surface covers the primary workflows: looking up articles by DOI, searching by title, and exporting results in common academic formats. Minor gaps like batch operations or direct DOi extraction from search results are acceptable for the scope.

Maintenance

ActivityStale
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Enables AI clients to search for academic papers, fetch metadata by DOI, retrieve open access PDF links, and extract full text from research papers using the Unpaywall API. Provides seamless access to scholarly literature for research and analysis tasks.
    4
    40
    11
    MIT
  • F
    license
    A
    quality
    C
    maintenance
    Enables looking up free-to-read versions of scholarly papers by DOI and searching article titles for Open Access matches via the Unpaywall API.
    2
    1
  • A
    license
    B
    quality
    C
    maintenance
    Enables scholarly search, paper metadata, citation graphs, author and venue resolution, candidate harvesting, API quota visibility, and guarded full-text downloads through the OpenAlex API.
    9
    4
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Provides free, no-key open-access lookup for scholarly papers via Unpaywall. Enables querying article metadata and open-access status through natural language.
    4
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/SMABoundless/unpaywall-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server