PluginBench
MCP Server

Scholar MCP Server MCP Server

io.github.pvliesdonk/scholar-mcp

What is the Scholar MCP Server MCP server?

Scholarly-sources MCP: papers, patents, books, standards — search and cross-reference prior art.

How to install Scholar MCP Server

Copy-paste configuration for popular MCP clients.

transport: stdio
Config generated by PluginBench — verify against the source before use.
Environment / auth
  • SCHOLAR_MCP_READ_ONLY

    Set to 'false' to enable write tools (default: true)

  • SCHOLAR_MCP_BEARER_TOKEN

    Static bearer token for authentication (optional)

  • FASTMCP_LOG_LEVEL

    Log level (DEBUG, INFO, WARNING, ERROR)

  • SCHOLAR_MCP_KV_STORE_URL

    Persistent-state backend URL for pvl-core subsystems. Schemes: file:///path (survives restarts), memory:// (dev/ephemeral).

  • SCHOLAR_MCP_SERVER_NAME

    MCP server name shown to clients

  • PUID

    Run as this UID (Docker entrypoint)

  • PGID

    Run as this GID (Docker entrypoint)

  • SCHOLAR_MCP_BASE_URL

    Public base URL of this server, required for OIDC (e.g. https://mcp.example.com)

  • SCHOLAR_MCP_OIDC_CONFIG_URL

    OIDC discovery endpoint URL (e.g. https://auth.example.com/.well-known/openid-configuration)

  • SCHOLAR_MCP_OIDC_CLIENT_ID

    OIDC client ID

  • SCHOLAR_MCP_OIDC_CLIENT_SECRET

    OIDC client secret

  • SCHOLAR_MCP_OIDC_JWT_SIGNING_KEY

    JWT signing key — required on Linux/Docker to survive restarts (generate with: openssl rand -hex 32)

Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "scholar-mcp": {
      "command": "uvx",
      "args": [
        "pvliesdonk-scholar-mcp"
      ],
      "env": {
        "SCHOLAR_MCP_READ_ONLY": "<YOUR_SCHOLAR_MCP_READ_ONLY>",
        "SCHOLAR_MCP_BEARER_TOKEN": "<YOUR_SCHOLAR_MCP_BEARER_TOKEN>",
        "FASTMCP_LOG_LEVEL": "<YOUR_FASTMCP_LOG_LEVEL>",
        "SCHOLAR_MCP_KV_STORE_URL": "<YOUR_SCHOLAR_MCP_KV_STORE_URL>",
        "SCHOLAR_MCP_SERVER_NAME": "<YOUR_SCHOLAR_MCP_SERVER_NAME>",
        "PUID": "<YOUR_PUID>",
        "PGID": "<YOUR_PGID>",
        "SCHOLAR_MCP_BASE_URL": "<YOUR_SCHOLAR_MCP_BASE_URL>",
        "SCHOLAR_MCP_OIDC_CONFIG_URL": "<YOUR_SCHOLAR_MCP_OIDC_CONFIG_URL>",
        "SCHOLAR_MCP_OIDC_CLIENT_ID": "<YOUR_SCHOLAR_MCP_OIDC_CLIENT_ID>",
        "SCHOLAR_MCP_OIDC_CLIENT_SECRET": "<YOUR_SCHOLAR_MCP_OIDC_CLIENT_SECRET>",
        "SCHOLAR_MCP_OIDC_JWT_SIGNING_KEY": "<YOUR_SCHOLAR_MCP_OIDC_JWT_SIGNING_KEY>"
      }
    }
  }
}
Cursor
~/.cursor/mcp.json
{
  "mcpServers": {
    "scholar-mcp": {
      "command": "uvx",
      "args": [
        "pvliesdonk-scholar-mcp"
      ],
      "env": {
        "SCHOLAR_MCP_READ_ONLY": "<YOUR_SCHOLAR_MCP_READ_ONLY>",
        "SCHOLAR_MCP_BEARER_TOKEN": "<YOUR_SCHOLAR_MCP_BEARER_TOKEN>",
        "FASTMCP_LOG_LEVEL": "<YOUR_FASTMCP_LOG_LEVEL>",
        "SCHOLAR_MCP_KV_STORE_URL": "<YOUR_SCHOLAR_MCP_KV_STORE_URL>",
        "SCHOLAR_MCP_SERVER_NAME": "<YOUR_SCHOLAR_MCP_SERVER_NAME>",
        "PUID": "<YOUR_PUID>",
        "PGID": "<YOUR_PGID>",
        "SCHOLAR_MCP_BASE_URL": "<YOUR_SCHOLAR_MCP_BASE_URL>",
        "SCHOLAR_MCP_OIDC_CONFIG_URL": "<YOUR_SCHOLAR_MCP_OIDC_CONFIG_URL>",
        "SCHOLAR_MCP_OIDC_CLIENT_ID": "<YOUR_SCHOLAR_MCP_OIDC_CLIENT_ID>",
        "SCHOLAR_MCP_OIDC_CLIENT_SECRET": "<YOUR_SCHOLAR_MCP_OIDC_CLIENT_SECRET>",
        "SCHOLAR_MCP_OIDC_JWT_SIGNING_KEY": "<YOUR_SCHOLAR_MCP_OIDC_JWT_SIGNING_KEY>"
      }
    }
  }
}
Windsurf
~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "scholar-mcp": {
      "command": "uvx",
      "args": [
        "pvliesdonk-scholar-mcp"
      ],
      "env": {
        "SCHOLAR_MCP_READ_ONLY": "<YOUR_SCHOLAR_MCP_READ_ONLY>",
        "SCHOLAR_MCP_BEARER_TOKEN": "<YOUR_SCHOLAR_MCP_BEARER_TOKEN>",
        "FASTMCP_LOG_LEVEL": "<YOUR_FASTMCP_LOG_LEVEL>",
        "SCHOLAR_MCP_KV_STORE_URL": "<YOUR_SCHOLAR_MCP_KV_STORE_URL>",
        "SCHOLAR_MCP_SERVER_NAME": "<YOUR_SCHOLAR_MCP_SERVER_NAME>",
        "PUID": "<YOUR_PUID>",
        "PGID": "<YOUR_PGID>",
        "SCHOLAR_MCP_BASE_URL": "<YOUR_SCHOLAR_MCP_BASE_URL>",
        "SCHOLAR_MCP_OIDC_CONFIG_URL": "<YOUR_SCHOLAR_MCP_OIDC_CONFIG_URL>",
        "SCHOLAR_MCP_OIDC_CLIENT_ID": "<YOUR_SCHOLAR_MCP_OIDC_CLIENT_ID>",
        "SCHOLAR_MCP_OIDC_CLIENT_SECRET": "<YOUR_SCHOLAR_MCP_OIDC_CLIENT_SECRET>",
        "SCHOLAR_MCP_OIDC_JWT_SIGNING_KEY": "<YOUR_SCHOLAR_MCP_OIDC_JWT_SIGNING_KEY>"
      }
    }
  }
}
VS Code
.vscode/mcp.json
{
  "servers": {
    "scholar-mcp": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "pvliesdonk-scholar-mcp"
      ],
      "env": {
        "SCHOLAR_MCP_READ_ONLY": "<YOUR_SCHOLAR_MCP_READ_ONLY>",
        "SCHOLAR_MCP_BEARER_TOKEN": "<YOUR_SCHOLAR_MCP_BEARER_TOKEN>",
        "FASTMCP_LOG_LEVEL": "<YOUR_FASTMCP_LOG_LEVEL>",
        "SCHOLAR_MCP_KV_STORE_URL": "<YOUR_SCHOLAR_MCP_KV_STORE_URL>",
        "SCHOLAR_MCP_SERVER_NAME": "<YOUR_SCHOLAR_MCP_SERVER_NAME>",
        "PUID": "<YOUR_PUID>",
        "PGID": "<YOUR_PGID>",
        "SCHOLAR_MCP_BASE_URL": "<YOUR_SCHOLAR_MCP_BASE_URL>",
        "SCHOLAR_MCP_OIDC_CONFIG_URL": "<YOUR_SCHOLAR_MCP_OIDC_CONFIG_URL>",
        "SCHOLAR_MCP_OIDC_CLIENT_ID": "<YOUR_SCHOLAR_MCP_OIDC_CLIENT_ID>",
        "SCHOLAR_MCP_OIDC_CLIENT_SECRET": "<YOUR_SCHOLAR_MCP_OIDC_CLIENT_SECRET>",
        "SCHOLAR_MCP_OIDC_JWT_SIGNING_KEY": "<YOUR_SCHOLAR_MCP_OIDC_JWT_SIGNING_KEY>"
      }
    }
  }
}
Claude Code
claude mcp add scholar-mcp --env SCHOLAR_MCP_READ_ONLY=<YOUR_SCHOLAR_MCP_READ_ONLY> --env SCHOLAR_MCP_BEARER_TOKEN=<YOUR_SCHOLAR_MCP_BEARER_TOKEN> --env FASTMCP_LOG_LEVEL=<YOUR_FASTMCP_LOG_LEVEL> --env SCHOLAR_MCP_KV_STORE_URL=<YOUR_SCHOLAR_MCP_KV_STORE_URL> --env SCHOLAR_MCP_SERVER_NAME=<YOUR_SCHOLAR_MCP_SERVER_NAME> --env PUID=<YOUR_PUID> --env PGID=<YOUR_PGID> --env SCHOLAR_MCP_BASE_URL=<YOUR_SCHOLAR_MCP_BASE_URL> --env SCHOLAR_MCP_OIDC_CONFIG_URL=<YOUR_SCHOLAR_MCP_OIDC_CONFIG_URL> --env SCHOLAR_MCP_OIDC_CLIENT_ID=<YOUR_SCHOLAR_MCP_OIDC_CLIENT_ID> --env SCHOLAR_MCP_OIDC_CLIENT_SECRET=<YOUR_SCHOLAR_MCP_OIDC_CLIENT_SECRET> --env SCHOLAR_MCP_OIDC_JWT_SIGNING_KEY=<YOUR_SCHOLAR_MCP_OIDC_JWT_SIGNING_KEY> -- uvx pvliesdonk-scholar-mcp

Related MCP servers

MCP server for AI image generation via OpenAI, Stable Diffusion (SD WebUI), or placeholders.

View repository →

Look up company logos and brand data via the logo.dev API.

View repository →

Markdown vault MCP server with FTS5 + semantic search and frontmatter indexing

View repository →