š Enable AI assistants to search and access Google Scholar papers through a simple MCP interface.
š 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 through the Model Context Protocol (MCP). It allows AI models to search for academic papers and access their content in a programmatic way.
To install google-scholar Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli@latest install @JackKuo666/google-scholar-mcp-server --client claude --config "{}"
Paste the following into Settings ā Cursor Settings ā MCP ā Add new server:
npx -y @smithery/cli@latest run @JackKuo666/google-scholar-mcp-server --client cursor --config "{}"
npx -y @smithery/cli@latest install @JackKuo666/google-scholar-mcp-server --client windsurf --config "{}"
npx -y @smithery/cli@latest install @JackKuo666/google-scholar-mcp-server --client cline --config "{}"
Clone the repository:
git clone https://github.com/JackKuo666/google-scholar-MCP-Server.git
cd google-scholar-MCP-Server
Install the required dependencies:
pip install -r requirements.txt
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 python -m venv venv source venv/bin/activate # On Windows use `venv\Scripts\activate` # Install dependencies pip install -r requirements.txt
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:
result = await mcp.use_tool("search_google_scholar_key_words", { "query": "artificial intelligence ethics", "num_results": 5 }) print(result)
result = await mcp.use_tool("search_google_scholar_advanced", { "query": "machine learning", "author": "Hinton", "year_range": [2020, 2023], "num_results": 3 }) print(result)
result = await mcp.use_tool("get_author_info", { "author_name": "Geoffrey Hinton" }) 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.
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\\PATH\\miniconda3\\envs\\mcp_server\\python.exe", "args": [ "D:\\code\\YOUR\\PATH\\Google-Scholar-MCP-Server\\google_scholar_server.py" ], "env": {}, "disabled": false, "autoApprove": [] } } }
Using with Cline
{ "mcpServers": { "google-scholar": { "command": "bash", "args": [ "-c", "source /home/YOUR/PATH/.venv/bin/activate && python /home/YOUR/PATH/google_scholar_mcp_server.py" ], "env": {}, "disabled": false, "autoApprove": [] } } }
The Google Scholar MCP Server provides the following tools:
Search for articles on Google Scholar using key words.
Parameters:
query
(str): Search query stringnum_results
(int, optional): Number of results to return (default: 5)Returns: List of dictionaries containing article information
Perform an advanced search for articles on Google Scholar.
Parameters:
query
(str): General search queryauthor
(str, optional): Author nameyear_range
(tuple, optional): Tuple containing (start_year, end_year)num_results
(int, optional): Number of results to return (default: 5)Returns: List of dictionaries containing article information
Get detailed information about an author from Google Scholar.
Parameters:
author_name
(str): Name of the author to search forReturns: Dictionary containing author information
google_scholar_server.py
: The main MCP server implementation using FastMCPgoogle_scholar_web_search.py
: Contains the web scraping logic for searching Google ScholarYou can install the required dependencies using:
pip install -r requirements.txt
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License.
This tool is for research purposes only. Please respect Google Scholar's terms of service and use this tool responsibly.
Discover shared experiences
Shared threads will appear here, showcasing real-world applications and insights from the community. Check back soon for updates!