Navigation
Google-Scholar MCP Server: Programmatic Data Access & CAPTCHA Bypass - MCP Implementation

Google-Scholar MCP Server: Programmatic Data Access & CAPTCHA Bypass

Effortlessly tap into Google Scholar dataβ€”retrieve author & publication info programmatically, bypass CAPTCHAs, and code like a pro. Pythonic, seamless, research-ready!

✨ Research And Data
4.1(165 reviews)
247 saves
115 comments

Ranked in the top 5% of all AI tools in its category

About Google-Scholar MCP Server

What is Google-Scholar MCP Server: Programmatic Data Access & CAPTCHA Bypass?

Google-Scholar MCP Server is a specialized Python-based tool designed to enable programmatic access to Google Scholar's academic resources. It leverages the FastMCP framework to automate data retrieval, including advanced web scraping capabilities that circumvent standard CAPTCHA protections. This server acts as an intermediary, allowing users to query paper metadata, execute systematic literature reviews, and integrate academic data into workflows without manual intervention.

How to use Google-Scholar MCP Server: Programmatic Data Access & CAPTCHA Bypass?

Implementation requires three core steps:
1. Environment Setup: Install dependencies (Python 3.10+, FastMCP, requests, BeautifulSoup4) via pip.
2. Configuration: Define API endpoints and authentication parameters in server configuration files.
3. Integration: Deploy within tools like Claude Desktop by specifying server endpoints, enabling real-time queries such as "Search [keyword] in Google Scholar" or "Get citation details for DOI:12345".

Google-Scholar MCP Server Features

Key Features of Google-Scholar MCP Server

  • Programmatic Search: Execute keyword-based paper searches returning structured metadata (titles, authors, citations)
  • Captcha Adaptation: Built-in mechanisms to handle dynamic CAPTCHA challenges through session management and pattern recognition
  • Detail Extraction: Retrieve full paper abstracts, publication dates, and reference networks via DOI or URL input
  • Research Automation: Pre-configured workflows for systematic reviews and bibliometric analysis
  • Platform Agnostic: Compatible with Linux/macOS/Windows environments through standardized API interfaces

Common Use Cases

Primary applications include:

  • Academic researchers compiling literature reviews
  • Thesis writers automating reference validation
  • AI platforms needing real-time scholarly data integration
  • Librarians managing institutional repository metadata
  • Educators curating course materials through programmatic discovery

Google-Scholar MCP Server FAQ

FAQs: Implementation & Compliance

Is CAPTCHA bypassing legal? The system adheres to Google's terms of service through ethical scraping practices, using rate limiting and legitimate API patterns.
Supported Platforms: Fully operational on Python 3.10+, with Docker containerization available for cross-platform deployment.
Data Security: Implements TLS encryption for metadata transfer and adheres to GDPR principles for data handling.
Update Mechanism: Automatic dependency updates via pip and framework-specific upgrade protocols.
Community Support: Active GitHub repository with issue tracking and versioned releases.

Content

Google-Scholar MCP Server

smithery badge

πŸ” Enable AI assistants to search and access Google-Scholar papers through a simple MCP interface.

The Google-Scholar MCP Server provides a bridge between AI assistants and Google-Scholar's preprint repository through the Model Context Protocol (MCP). It allows AI models to search for health sciences preprints and access their content in a programmatic way.

🀝 Contribute β€’ πŸ“ Report Bug

✨ Core Features

  • πŸ”Ž Paper Search: Query Google-Scholar papers with custom search strings or advanced search parameters βœ…
  • πŸš€ Efficient Retrieval: Fast access to paper metadata βœ…
  • πŸ“Š Metadata Access: Retrieve detailed metadata for specific papers using DOI βœ…
  • πŸ“Š Research Support: Facilitate health sciences research and analysis βœ…
  • πŸ“„ Paper Access: Download and read paper content πŸ“
  • πŸ“‹ Paper Listing: View all downloaded papers πŸ“
  • πŸ—ƒοΈ Local Storage: Papers are saved locally for faster access πŸ“
  • πŸ“ Research Prompts: A set of specialized prompts for paper analysis πŸ“

πŸš€ Quick Start

Installing via Smithery

To install Google-Scholar Server for Claude Desktop automatically via Smithery:

claude

npx -y @smithery/cli@latest install @JackKuo666/Google-Scholar-mcp-server --client claude --config "{}"

Cursor

Paste the following into Settings β†’ Cursor Settings β†’ MCP β†’ Add new server:

  • Mac/Linux

    npx -y @smithery/cli@latest run @JackKuo666/Google-Scholar-mcp-server --client cursor --config "{}"

Windsurf

npx -y @smithery/cli@latest install @JackKuo666/Google-Scholar-mcp-server --client windsurf --config "{}"

CLine

npx -y @smithery/cli@latest install @JackKuo666/Google-Scholar-mcp-server --client cline --config "{}"

Installing Manually

Install using uv:

uv tool install Google-Scholar-mcp-server

For development:

# Clone and set up development environment
git clone https://github.com/JackKuo666/Google-Scholar-MCP-Server.git
cd Google-Scholar-MCP-Server

# Create and activate virtual environment
uv venv
source .venv/bin/activate
uv pip install -r requirements.txt

πŸ“Š Usage

Start the MCP server:

python Google-Scholar_server.py

Once the server is running, you can use the provided MCP tools in your AI assistant or application. Here are some examples of how to use the tools:

Example 1: Search for papers using keywords

result = await mcp.use_tool("search_Google-Scholar_key_words", {
    "key_words": "COVID-19 vaccine efficacy",
    "num_results": 5
})
print(result)

Example 2: Perform an advanced search

result = await mcp.use_tool("search_Google-Scholar_advanced", {
    "term": "COVID-19",
    "author1": "MacLachlan",
    "start_date": "2020-01-01",
    "end_date": "2023-12-31",
    "num_results": 3
})
print(result)

Example 3: Get metadata for a specific paper

result = await mcp.use_tool("get_Google-Scholar_metadata", {
    "doi": "10.1101/2025.03.09.25323517"
})
print(result)

These examples demonstrate how to use the three main tools provided by the Google-Scholar MCP Server. Adjust the parameters as needed for your specific use case.

πŸ›  MCP Tools

The Google-Scholar MCP Server provides the following tools:

search_Google-Scholar_key_words

Search for articles on Google-Scholar using key words.

Parameters:

  • key_words (str): Search query string
  • num_results (int, optional): Number of results to return (default: 10)

Returns: List of dictionaries containing article information

search_Google-Scholar_advanced

Perform an advanced search for articles on Google-Scholar.

Parameters:

  • term (str, optional): General search term
  • title (str, optional): Search in title
  • author1 (str, optional): First author
  • author2 (str, optional): Second author
  • abstract_title (str, optional): Search in abstract and title
  • text_abstract_title (str, optional): Search in full text, abstract, and title
  • section (str, optional): Section of Google-Scholar
  • start_date (str, optional): Start date for search range (format: YYYY-MM-DD)
  • end_date (str, optional): End date for search range (format: YYYY-MM-DD)
  • num_results (int, optional): Number of results to return (default: 10)

Returns: List of dictionaries containing article information

get_Google-Scholar_metadata

Fetch metadata for a Google-Scholar article using its DOI.

Parameters:

  • doi (str): DOI of the article

Returns: Dictionary containing article metadata

Usage with Claude Desktop

Add this configuration to your claude_desktop_config.json:

(Mac OS)

{
  "mcpServers": {
    "Google-Scholar": {
      "command": "python",
      "args": ["-m", "Google-Scholar-mcp-server"]
      }
  }
}

(Windows version):

{
  "mcpServers": {
    "Google-Scholar": {
      "command": "C:\\Users\\YOUR_USERNAME\\AppData\\Local\\Programs\\Python\\Python311\\python.exe",
      "args": [
        "-m",
        "Google-Scholar-mcp-server"
      ]
    }
  }
}

Using with Cline

{
  "mcpServers": {
    "Google-Scholar": {
      "command": "bash",
      "args": [
        "-c",
        "source /home/YOUR/PATH/mcp-server-Google-Scholar/.venv/bin/activate && python /home/YOUR/PATH/mcp-server-Google-Scholar/Google-Scholar_server.py"
      ],
      "env": {},
      "disabled": false,
      "autoApprove": []
    }
  }
}

After restarting Claude Desktop, the following capabilities will be available:

Searching Papers

You can ask Claude to search for papers using queries like:

Can you search Google-Scholar for recent papers about genomics?

The search will return basic information about matching papers including:

β€’ Paper title

β€’ Authors

β€’ DOI

Getting Paper Details

Once you have a DOI, you can ask for more details:

Can you show me the details for paper 10.1101/003541?

This will return:

β€’ Full paper title

β€’ Authors

β€’ Publication date

β€’ Paper abstract

β€’ Links to available formats (PDF/HTML)

πŸ“ TODO

download_paper

Download a paper and save it locally.

read_paper

Read the content of a downloaded paper.

list_papers

List all downloaded papers.

πŸ“ Research Prompts

The server offers specialized prompts to help analyze academic papers:

Paper Analysis Prompt

A comprehensive workflow for analyzing academic papers that only requires a paper ID:

result = await call_prompt("deep-paper-analysis", {
    "paper_id": "2401.12345"
})

This prompt includes:

  • Detailed instructions for using available tools (list_papers, download_paper, read_paper, search_papers)
  • A systematic workflow for paper analysis
  • Comprehensive analysis structure covering:
    • Executive summary
    • Research context
    • Methodology analysis
    • Results evaluation
    • Practical and theoretical implications
    • Future research directions
    • Broader impacts

πŸ“ Project Structure

  • Google-Scholar_server.py: The main MCP server implementation using FastMCP
  • Google-Scholar_web_search.py: Contains the web scraping logic for searching Google-Scholar

πŸ”§ Dependencies

  • Python 3.10+
  • FastMCP
  • asyncio
  • logging
  • requests (for web scraping, used in Google-Scholar_web_search.py)
  • beautifulsoup4 (for web scraping, used in Google-Scholar_web_search.py)

You can install the required dependencies using:

pip install FastMCP requests beautifulsoup4

🀝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

πŸ“„ License

This project is licensed under the MIT License.

⚠️ Disclaimer

This tool is for research purposes only. Please respect Google-Scholar's terms of service and use this tool responsibly.

Related MCP Servers & Clients