NestDaddy

PyEuropePMC

io.github.JonasHeinickeBio/pyeuropepmc · v4.8.0

Europe PMC search, search analytics, full text, enrichment, PICO, MeSH, data links, export, auth

Connect Runs on your machine

Terminal
claude mcp add pyeuropepmc -e PYEUROPEPMC_MCP_LOG_LEVEL=<PYEUROPEPMC_MCP_LOG_LEVEL> -e SEMANTIC_SCHOLAR_API_KEY=<SEMANTIC_SCHOLAR_API_KEY> -e OPENAI_API_KEY=<OPENAI_API_KEY> -e OPENAI_BASE_URL=<OPENAI_BASE_URL> -e OPENAI_MODEL=<OPENAI_MODEL> -e UNPAYWALL_EMAIL=<UNPAYWALL_EMAIL> -e PYEUROPEPMC_MCP_DOWNLOAD_DIR=<PYEUROPEPMC_MCP_DOWNLOAD_DIR> -- uvx pyeuropepmc==4.8.0
claude_desktop_config.json
{
  "mcpServers": {
    "pyeuropepmc": {
      "command": "uvx",
      "args": [
        "pyeuropepmc==4.8.0"
      ],
      "env": {
        "PYEUROPEPMC_MCP_LOG_LEVEL": "<PYEUROPEPMC_MCP_LOG_LEVEL>",
        "SEMANTIC_SCHOLAR_API_KEY": "<SEMANTIC_SCHOLAR_API_KEY>",
        "OPENAI_API_KEY": "<OPENAI_API_KEY>",
        "OPENAI_BASE_URL": "<OPENAI_BASE_URL>",
        "OPENAI_MODEL": "<OPENAI_MODEL>",
        "UNPAYWALL_EMAIL": "<UNPAYWALL_EMAIL>",
        "PYEUROPEPMC_MCP_DOWNLOAD_DIR": "<PYEUROPEPMC_MCP_DOWNLOAD_DIR>"
      }
    }
  }
}
~/.cursor/mcp.json
{
  "mcpServers": {
    "pyeuropepmc": {
      "command": "uvx",
      "args": [
        "pyeuropepmc==4.8.0"
      ],
      "env": {
        "PYEUROPEPMC_MCP_LOG_LEVEL": "<PYEUROPEPMC_MCP_LOG_LEVEL>",
        "SEMANTIC_SCHOLAR_API_KEY": "<SEMANTIC_SCHOLAR_API_KEY>",
        "OPENAI_API_KEY": "<OPENAI_API_KEY>",
        "OPENAI_BASE_URL": "<OPENAI_BASE_URL>",
        "OPENAI_MODEL": "<OPENAI_MODEL>",
        "UNPAYWALL_EMAIL": "<UNPAYWALL_EMAIL>",
        "PYEUROPEPMC_MCP_DOWNLOAD_DIR": "<PYEUROPEPMC_MCP_DOWNLOAD_DIR>"
      }
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "pyeuropepmc": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "pyeuropepmc==4.8.0"
      ],
      "env": {
        "PYEUROPEPMC_MCP_LOG_LEVEL": "<PYEUROPEPMC_MCP_LOG_LEVEL>",
        "SEMANTIC_SCHOLAR_API_KEY": "<SEMANTIC_SCHOLAR_API_KEY>",
        "OPENAI_API_KEY": "<OPENAI_API_KEY>",
        "OPENAI_BASE_URL": "<OPENAI_BASE_URL>",
        "OPENAI_MODEL": "<OPENAI_MODEL>",
        "UNPAYWALL_EMAIL": "<UNPAYWALL_EMAIL>",
        "PYEUROPEPMC_MCP_DOWNLOAD_DIR": "<PYEUROPEPMC_MCP_DOWNLOAD_DIR>"
      }
    }
  }
}

Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.

Tools

This server runs locally, so its tools are listed by your MCP client once it starts.

Environment variables

NameDescription
PYEUROPEPMC_MCP_LOG_LEVEL
Optional
Log level, written to stderr: DEBUG, INFO, WARNING or ERROR.
SEMANTIC_SCHOLAR_API_KEY
Optional, secret
Optional. Raises the Semantic Scholar rate limit used by citation_snowball, the semantic_scholar source of unified_search and the DOI route of download_papers_pdf; without it requests are throttled and may get HTTP 429.
OPENAI_API_KEY
Optional, secret
Optional. Enables the LLM-powered tools (analyze_citations, literature_review, paper_screening, ...) with any OpenAI-compatible API. Needs the agentic extra.
OPENAI_BASE_URL
Optional
Optional. Base URL of an OpenAI-compatible API for the LLM tools.
OPENAI_MODEL
Optional
Optional. Model for the LLM tools.
UNPAYWALL_EMAIL
Optional
Optional. Your contact e-mail address, sent with each Unpaywall request (their terms ask for one). Used by the find_open_access and download_papers_pdf tools (without it download_papers_pdf skips the Unpaywall source); there is no default.
PYEUROPEPMC_MCP_DOWNLOAD_DIR
Optional
Optional. Folder where the download_papers_pdf tool saves PDFs on the machine running the server. Default: ~/Downloads/pyeuropepmc.

Details

Package[email protected] (PYPI, stdio)
First published8 Nov 2026
Last updated8 Nov 2026
Registry nameio.github.JonasHeinickeBio/pyeuropepmc

More search and web servers See all

Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.