### Manual Installation of Google Scholar MCP Server Source: https://context7.com/jackkuo666/google-scholar-mcp-server/llms.txt Steps for manually installing the Google Scholar MCP Server, including cloning the repository, setting up a virtual environment, installing dependencies, and starting the server. ```bash # Clone the repository git clone https://github.com/JackKuo666/google-scholar-MCP-Server.git cd google-scholar-MCP-Server # Create virtual environment python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate # Install dependencies pip install -r requirements.txt # Start the server python google_scholar_server.py ``` -------------------------------- ### Start the MCP Server Source: https://github.com/jackkuo666/google-scholar-mcp-server/blob/main/README.md Run this command to start the Google Scholar MCP Server. ```bash python google_scholar_server.py ``` -------------------------------- ### Install Google Scholar MCP Server for Windsurf Source: https://github.com/jackkuo666/google-scholar-mcp-server/blob/main/README.md Use this command to install the Google Scholar MCP Server for Windsurf via Smithery. ```sh npx -y @smithery/cli@latest install @JackKuo666/google-scholar-mcp-server --client windsurf --config "{}" ``` -------------------------------- ### Install Google Scholar MCP Server for Cursor Source: https://github.com/jackkuo666/google-scholar-mcp-server/blob/main/README.md Use this command to install the Google Scholar MCP Server for Cursor. Paste the output into Settings → Cursor Settings → MCP → Add new server. ```sh npx -y @smithery/cli@latest run @JackKuo666/google-scholar-mcp-server --client cursor --config "{}" ``` -------------------------------- ### Install Google Scholar MCP Server for Claude Desktop Source: https://github.com/jackkuo666/google-scholar-mcp-server/blob/main/README.md Use this command to automatically install the Google Scholar MCP Server for Claude Desktop via Smithery. ```sh npx -y @smithery/cli@latest install @JackKuo666/google-scholar-mcp-server --client claude --config "{}" ``` -------------------------------- ### Set up Development Environment Source: https://github.com/jackkuo666/google-scholar-mcp-server/blob/main/README.md Clone the repository, set up a virtual environment, and install dependencies for development. ```bash # 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 ``` -------------------------------- ### Clone Repository and Install Dependencies Source: https://github.com/jackkuo666/google-scholar-mcp-server/blob/main/README.md Clone the Google Scholar MCP Server repository and install its Python dependencies. ```sh git clone https://github.com/JackKuo666/google-scholar-MCP-Server.git cd google-scholar-MCP-Server ``` ```sh pip install -r requirements.txt ``` -------------------------------- ### Install Google Scholar MCP Server for CLine Source: https://github.com/jackkuo666/google-scholar-mcp-server/blob/main/README.md Use this command to install the Google Scholar MCP Server for CLine via Smithery. ```sh npx -y @smithery/cli@latest install @JackKuo666/google-scholar-mcp-server --client cline --config "{}" ``` -------------------------------- ### Install Google Scholar MCP Server via Smithery Source: https://context7.com/jackkuo666/google-scholar-mcp-server/llms.txt Use the Smithery CLI to install the Google Scholar MCP Server for different AI clients like Claude Desktop, Cursor, Windsurf, and Cline. Configuration is typically an empty JSON object. ```bash npx -y @smithery/cli@latest install @JackKuo666/google-scholar-mcp-server --client claude --config "{}" ``` ```bash npx -y @smithery/cli@latest run @JackKuo666/google-scholar-mcp-server --client cursor --config "{}" ``` ```bash npx -y @smithery/cli@latest install @JackKuo666/google-scholar-mcp-server --client windsurf --config "{}" ``` ```bash npx -y @smithery/cli@latest install @JackKuo666/google-scholar-mcp-server --client cline --config "{}" ``` -------------------------------- ### Claude Desktop MCP Server Configuration Source: https://context7.com/jackkuo666/google-scholar-mcp-server/llms.txt Configure the MCP server in `claude_desktop_config.json` for Claude Desktop. This example uses the default Python module execution. ```json { "mcpServers": { "google-scholar": { "command": "python", "args": ["-m", "google_scholar_mcp_server"] } } } ``` -------------------------------- ### Search Google Scholar by Keywords (MCP Tool) Source: https://context7.com/jackkuo666/google-scholar-mcp-server/llms.txt Example of using the `search_google_scholar_key_words` MCP tool to find academic papers based on a keyword query. Requires specifying the query and the number of results. ```python # MCP Tool Usage result = await mcp.use_tool("search_google_scholar_key_words", { "query": "artificial intelligence ethics", "num_results": 5 }) print(result) # Expected Output: # [ # { # "Title": "Artificial Intelligence and Ethics", # "Authors": "J Smith, M Johnson - Nature, 2023", # "Abstract": "This paper examines the ethical implications of AI...", # "URL": "https://example.com/paper1" # }, # { # "Title": "Ethics in Machine Learning Systems", # "Authors": "A Brown - AI Journal, 2022", # "Abstract": "A comprehensive review of ethical frameworks...", # "URL": "https://example.com/paper2" # } # ] ``` -------------------------------- ### Advanced Google Scholar Search by Author and Year (MCP Tool) Source: https://context7.com/jackkuo666/google-scholar-mcp-server/llms.txt Example of using the `search_google_scholar_advanced` MCP tool for precise academic literature discovery. Allows filtering by query, author name, and publication year range. ```python # MCP Tool Usage - Search with author filter result = await mcp.use_tool("search_google_scholar_advanced", { "query": "machine learning", "author": "Hinton", "year_range": [2020, 2023], "num_results": 3 }) print(result) # Expected Output: # [ # { # "Title": "Deep Learning Advances", # "Authors": "G Hinton - Science, 2021", # "Abstract": "Recent advances in deep learning have...", # "URL": "https://example.com/hinton-paper" # } # ] ``` -------------------------------- ### Get Author Information Source: https://github.com/jackkuo666/google-scholar-mcp-server/blob/main/README.md Retrieve detailed information about a specific author from Google Scholar. ```APIDOC ## POST /author/info ### Description Retrieves detailed information about an author. ### Method POST ### Endpoint /author/info ### Parameters #### Request Body - **author_name** (str) - Required - The name of the author ### Request Example ```json { "author_name": "Geoffrey Hinton" } ``` ### Response #### Success Response (200) - **author_info** (dict) - Dictionary containing author details #### Response Example ```json { "author_info": { "name": "Geoffrey Hinton", "affiliations": "University of Toronto", "h_index": 150 } } ``` ``` -------------------------------- ### Get Author Information Source: https://github.com/jackkuo666/google-scholar-mcp-server/blob/main/README.md Retrieves detailed information about a specific author from Google Scholar. ```APIDOC ## GET /author_info ### Description Get detailed information about an author from Google Scholar. ### Method GET ### Endpoint /author_info ### Parameters #### Query Parameters - **author_name** (str) - Required - Name of the author to search for ### Response #### Success Response (200) - Returns a dictionary containing author information. ``` -------------------------------- ### Get Author Information Source: https://github.com/jackkuo666/google-scholar-mcp-server/blob/main/README.md Use this Python code to retrieve detailed information about an author from Google Scholar. ```python result = await mcp.use_tool("get_author_info", { "author_name": "Geoffrey Hinton" }) print(result) ``` -------------------------------- ### Configure Google Scholar MCP Server for Claude Desktop (Windows) Source: https://github.com/jackkuo666/google-scholar-mcp-server/blob/main/README.md Add this JSON configuration to your `claude_desktop_config.json` to enable the Google Scholar MCP Server for Claude Desktop on Windows. Ensure paths are correctly set. ```json { "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": [] } } } ``` -------------------------------- ### Configure Google Scholar MCP Server for Claude Desktop (Mac OS) Source: https://github.com/jackkuo666/google-scholar-mcp-server/blob/main/README.md Add this JSON configuration to your `claude_desktop_config.json` to enable the Google Scholar MCP Server for Claude Desktop on Mac OS. ```json { "mcpServers": { "google-scholar": { "command": "python", "args": ["-m", "google_scholar_mcp_server"] } } } ``` -------------------------------- ### MCP Tool Error Handling Source: https://context7.com/jackkuo666/google-scholar-mcp-server/llms.txt Illustrates how MCP tools return structured error dictionaries on failure. Shows how to check for errors in the response and process successful results. ```python # MCP tools return error dictionaries on failure result = await mcp.use_tool("search_google_scholar_key_words", { "query": "some query" }) # Check for errors in response if isinstance(result, list) and result and "error" in result[0]: print(f"Search failed: {result[0]['error']}") else: # Process successful results for paper in result: print(paper['Title']) # get_author_info returns error dict on failure author_result = await mcp.use_tool("get_author_info", { "author_name": "Nonexistent Author Name" }) if "error" in author_result: print(f"Author lookup failed: {author_result['error']}") else: print(f"Found: {author_result['name']} - {author_result['affiliation']}") ``` -------------------------------- ### Configure Google Scholar MCP Server for Cline Source: https://github.com/jackkuo666/google-scholar-mcp-server/blob/main/README.md Add this JSON configuration to your settings to enable the Google Scholar MCP Server for Cline. Ensure paths and environment activation are correct. ```json { "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": [] } } } ``` -------------------------------- ### Direct Scholarly Library Usage Source: https://context7.com/jackkuo666/google-scholar-mcp-server/llms.txt Shows direct interaction with the Scholarly library for searching authors, retrieving basic and full author details, and accessing publication information. ```python from scholarly import scholarly # Search for author search_query = scholarly.search_author('Steven A Cholewiak') first_author_result = next(search_query) # Get basic info scholarly.pprint(first_author_result) # Get full details author = scholarly.fill(first_author_result) scholarly.pprint(author) # Access specific publication details first_publication = author['publications'][0] first_publication_filled = scholarly.fill(first_publication) scholarly.pprint(first_publication_filled) # Get all publication titles publication_titles = [pub['bib']['title'] for pub in author['publications']] print(publication_titles) ``` -------------------------------- ### Advanced Google Scholar Search by Author and Year (Direct Function) Source: https://context7.com/jackkuo666/google-scholar-mcp-server/llms.txt Directly using the `advanced_google_scholar_search` function for detailed academic searches. Filters results by query, author, and a specified year range, then prints paper details. ```python # Direct Function Usage from google_scholar_web_search import advanced_google_scholar_search # Search for papers by a specific author within a year range results = advanced_google_scholar_search( query="neural networks", author="Ian Goodfellow", year_range=(2010, 2021), num_results=5 ) for paper in results: print(f"Title: {paper['Title']}") print(f"Authors: {paper['Authors']}") print(f"Abstract: {paper['Abstract']}") print(f"URL: {paper['URL']}") print("-" * 80) ``` -------------------------------- ### Search Google Scholar by Keywords (Direct Function) Source: https://context7.com/jackkuo666/google-scholar-mcp-server/llms.txt Directly using the `google_scholar_search` function from the `google_scholar_web_search` module to find academic papers by keywords. Prints title, authors, abstract, and URL for each result. ```python # Direct Function Usage from google_scholar_web_search import google_scholar_search results = google_scholar_search("machine learning", num_results=3) for paper in results: print(f"Title: {paper['Title']}") print(f"Authors: {paper['Authors']}") print(f"Abstract: {paper['Abstract']}") print(f"URL: {paper['URL']}") print("-" * 80) ``` -------------------------------- ### Search Google Scholar by Keywords Source: https://github.com/jackkuo666/google-scholar-mcp-server/blob/main/README.md Use this Python code to search Google Scholar for papers using keywords and a specified number of results. ```python result = await mcp.use_tool("search_google_scholar_key_words", { "query": "artificial intelligence ethics", "num_results": 5 }) print(result) ``` -------------------------------- ### Search Google Scholar by Keywords Source: https://context7.com/jackkuo666/google-scholar-mcp-server/llms.txt Searches Google Scholar for articles based on keyword queries. Returns a list of papers including titles, authors, abstracts, and URLs. ```APIDOC ## POST /search_google_scholar_key_words ### Description Searches for articles on Google Scholar using keyword queries. Returns a list of papers with titles, authors, abstracts, and URLs. ### Method POST ### Endpoint /search_google_scholar_key_words ### Parameters #### Request Body - **query** (string) - Required - The keyword query to search for. - **num_results** (integer) - Optional - The number of results to return. Defaults to a reasonable number if not specified. ### Request Example ```json { "query": "artificial intelligence ethics", "num_results": 5 } ``` ### Response #### Success Response (200) - **Title** (string) - The title of the paper. - **Authors** (string) - The authors of the paper. - **Abstract** (string) - The abstract of the paper. - **URL** (string) - The URL to the paper on Google Scholar. #### Response Example ```json [ { "Title": "Artificial Intelligence and Ethics", "Authors": "J Smith, M Johnson - Nature, 2023", "Abstract": "This paper examines the ethical implications of AI...", "URL": "https://example.com/paper1" }, { "Title": "Ethics in Machine Learning Systems", "Authors": "A Brown - AI Journal, 2022", "Abstract": "A comprehensive review of ethical frameworks...", "URL": "https://example.com/paper2" } ] ``` ``` -------------------------------- ### Search Google Scholar by Keywords Source: https://github.com/jackkuo666/google-scholar-mcp-server/blob/main/README.md This tool allows you to search for articles on Google Scholar using keywords. You can specify the number of results to retrieve. ```APIDOC ## POST /search/google_scholar_keywords ### Description Searches for articles on Google Scholar using keywords. ### Method POST ### Endpoint /search/google_scholar_keywords ### Parameters #### Request Body - **query** (str) - Required - Search query string - **num_results** (int) - Optional - Number of results to return (default: 5) ### Request Example ```json { "query": "artificial intelligence ethics", "num_results": 5 } ``` ### Response #### Success Response (200) - **results** (list) - List of dictionaries containing article information #### Response Example ```json { "results": [ { "title": "Example Article Title", "authors": "Author One, Author Two", "year": 2023, "abstract": "This is an example abstract." } ] } ``` ``` -------------------------------- ### Perform Advanced Google Scholar Search Source: https://github.com/jackkuo666/google-scholar-mcp-server/blob/main/README.md Use this Python code to perform an advanced search on Google Scholar, specifying query, author, year range, and number of results. ```python result = await mcp.use_tool("search_google_scholar_advanced", { "query": "machine learning", "author": "Hinton", "year_range": [2020, 2023], "num_results": 3 }) print(result) ``` -------------------------------- ### Advanced Google Scholar Search Source: https://github.com/jackkuo666/google-scholar-mcp-server/blob/main/README.md Perform an advanced search for articles on Google Scholar with more specific criteria like author and year range. ```APIDOC ## POST /search/google_scholar_advanced ### Description Performs an advanced search for articles on Google Scholar. ### Method POST ### Endpoint /search/google_scholar_advanced ### Parameters #### Request Body - **query** (str) - Required - General search query - **author** (str) - Optional - Author name - **year_range** (list) - Optional - List containing [start_year, end_year] - **num_results** (int) - Optional - Number of results to return (default: 5) ### Request Example ```json { "query": "machine learning", "author": "Hinton", "year_range": [2020, 2023], "num_results": 3 } ``` ### Response #### Success Response (200) - **results** (list) - List of dictionaries containing article information #### Response Example ```json { "results": [ { "title": "Advanced Search Article", "authors": "Author A, Author B", "year": 2022, "abstract": "Abstract for an advanced search result." } ] } ``` ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.