semantic-scholar-graph-api

alperenkocyigit/semantic-scholar-graph-api

3.3

If you are the rightful owner of semantic-scholar-graph-api and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

A comprehensive Model Context Protocol (MCP) server for seamless integration with Semantic Scholar's academic database.

šŸ“š Semantic Scholar MCP Server

A comprehensive Model Context Protocol (MCP) server for seamless integration with Semantic Scholar's academic database

Maintainer: @alperenkocyigit

This powerful MCP server bridges the gap between AI assistants and academic research by providing direct access to Semantic Scholar's comprehensive database. Whether you're conducting literature reviews, exploring citation networks, or seeking academic insights, this server offers a streamlined interface to millions of research papers.

🌟 What Can You Do?

šŸ” Advanced Paper Discovery

  • Smart Search: Find papers using natural language queries
  • Bulk Operations: Process multiple papers simultaneously
  • Autocomplete: Get intelligent title suggestions as you type
  • Precise Matching: Find exact papers using title-based search

šŸŽÆ AI-Powered Recommendations

  • Smart Paper Recommendations: Get personalized paper suggestions based on your interests
  • Multi-Example Learning: Use multiple positive and negative examples to fine-tune recommendations
  • Single Paper Similarity: Find papers similar to a specific research work
  • Relevance Scoring: AI-powered relevance scores for better paper discovery

šŸ‘„ Author Research

  • Author Profiles: Comprehensive author information and metrics
  • Bulk Author Data: Fetch multiple author profiles at once
  • Author Search: Discover researchers by name or affiliation

šŸ“Š Citation Analysis

  • Citation Networks: Explore forward and backward citations
  • Reference Mapping: Understand paper relationships
  • Impact Metrics: Access citation counts and paper influence

šŸ’” Content Discovery

  • Text Snippets: Search within paper content
  • Contextual Results: Find relevant passages and quotes
  • Full-Text Access: When available through Semantic Scholar

šŸ› ļø Quick Setup

System Requirements

  • Python: 3.10 or higher
  • Dependencies: requests, mcp, bs4
  • Network: Stable internet connection for API access

šŸš€ Installation Options

⚔ One-Click Install with Smithery

For Claude Desktop:

npx -y @smithery/cli@latest install @alperenkocyigit/semantic-scholar-graph-api --client claude --config "{}"

For Cursor IDE: Navigate to Settings → Cursor Settings → MCP → Add new server and paste:

npx -y @smithery/cli@latest run @alperenkocyigit/semantic-scholar-graph-api --client cursor --config "{}"

For Windsurf:

npx -y @smithery/cli@latest install @alperenkocyigit/semantic-scholar-graph-api --client windsurf --config "{}"

For Cline:

npx -y @smithery/cli@latest install @alperenkocyigit/semantic-scholar-graph-api --client cline --config "{}"

šŸ”§ Manual Installation

  1. Clone the repository:

    git clone https://github.com/alperenkocyigit/semantic-scholar-graph-api.git
    cd semantic-scholar-graph-api
    
  2. Install dependencies:

    pip install -r requirements.txt
    
  3. Run the server:

    python semantic_scholar_server.py
    

šŸ”§ Configuration Guide

Local Setups

Claude Desktop Setup

macOS/Linux Configuration: Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "semanticscholar": {
      "command": "python",
      "args": ["/path/to/your/semantic_scholar_server.py"]
    }
  }
}

Windows Configuration:

{
  "mcpServers": {
    "semanticscholar": {
      "command": "C:\\Users\\YOUR_USERNAME\\miniconda3\\envs\\mcp_server\\python.exe",
      "args": ["D:\\path\\to\\your\\semantic_scholar_server.py"],
      "env": {},
      "disabled": false,
      "autoApprove": []
    }
  }
}
Cline Integration
{
  "mcpServers": {
    "semanticscholar": {
      "command": "bash",
      "args": [
        "-c",
        "source /path/to/your/.venv/bin/activate && python /path/to/your/semantic_scholar_server.py"
      ],
      "env": {},
      "disabled": false,
      "autoApprove": []
    }
  }
}

Remote Setups

Auto Configuration
npx -y @smithery/cli@latest install @alperenkocyigit/semantic-scholar-graph-api --client <valid-client-name> --key <your-smithery-api-key>

Valid client names: [claude,cursor,vscode,boltai]

Json Configuration

macOS/Linux Configuration:

{
  "mcpServers": {
    "semantic-scholar-graph-api": {
      "command": "npx",
      "args": [
        "-y",
        "@smithery/cli@latest",
        "run",
        "@alperenkocyigit/semantic-scholar-graph-api",
        "--key",
        "your-smithery-api-key"
      ]
    }
  }
}

Windows Configuration:

{
  "mcpServers": {
    "semantic-scholar-graph-api": {
      "command": "cmd",
      "args": [
        "/c",
        "npx",
        "-y",
        "@smithery/cli@latest",
        "run",
        "@alperenkocyigit/semantic-scholar-graph-api",
        "--key",
        "your-smithery-api-key"
      ]
    }
  }
}

WSL Configuration:

{
  "mcpServers": {
    "semantic-scholar-graph-api": {
      "command": "wsl",
      "args": [
        "npx",
        "-y",
        "@smithery/cli@latest",
        "run",
        "@alperenkocyigit/semantic-scholar-graph-api",
        "--key",
        "your-smithery-api-key"
      ]
    }
  }
}

šŸŽÆ Available Tools

ToolDescriptionUse Case
search_semantic_scholarSearch papers by queryLiterature discovery
search_semantic_scholar_authorsFind authors by nameResearcher identification
get_semantic_scholar_paper_detailsGet comprehensive paper infoDetailed analysis
get_semantic_scholar_author_detailsGet author profilesAuthor research
get_semantic_scholar_citations_and_referencesFetch citation networkImpact analysis
get_semantic_scholar_paper_matchFind exact paper matchesPrecise searching
get_semantic_scholar_paper_autocompleteGet title suggestionsSmart completion
get_semantic_scholar_papers_batchBulk paper retrievalBatch processing
get_semantic_scholar_authors_batchBulk author dataMass analysis
search_semantic_scholar_snippetsSearch text contentContent discovery
get_semantic_scholar_paper_recommendations_from_listsGet recommendations from positive/negative examplesAI-powered discovery
get_semantic_scholar_paper_recommendationsGet recommendations from single paperSimilar paper finding

šŸ’” Usage Examples

Basic Paper Search

# Search for papers on machine learning
results = await search_semantic_scholar("machine learning", num_results=5)

Author Research

# Find authors working on natural language processing
authors = await search_semantic_scholar_authors("natural language processing")

Citation Analysis

# Get citation network for a specific paper
citations = await get_semantic_scholar_citations_and_references("paper_id_here")

šŸ†• AI-Powered Paper Recommendations

Multi-Example Recommendations
# Get recommendations based on multiple positive and negative examples
positive_papers = ["paper_id_1", "paper_id_2", "paper_id_3"]
negative_papers = ["bad_paper_id_1", "bad_paper_id_2"]
recommendations = await get_semantic_scholar_paper_recommendations_from_lists(
    positive_paper_ids=positive_papers,
    negative_paper_ids=negative_papers,
    limit=20
)
Single Paper Similarity
# Find papers similar to a specific research work
similar_papers = await get_semantic_scholar_paper_recommendations(
    paper_id="target_paper_id",
    limit=15
)
Content Discovery
# Search for specific text content within papers
snippets = await search_semantic_scholar_snippets(
    query="neural network optimization",
    limit=10
)

šŸ“‚ Project Architecture

semantic-scholar-graph-api/
ā”œā”€ā”€ šŸ“„ README.md                    # Project documentation
ā”œā”€ā”€ šŸ“‹ requirements.txt             # Python dependencies
ā”œā”€ā”€ šŸ” search.py   # Core API interaction module
ā”œā”€ā”€ šŸ–„ļø server.py   # MCP server implementation
└── šŸ—‚ļø __pycache__/                # Compiled Python files

Core Components

  • search.py: Handles all interactions with the Semantic Scholar API, including rate limiting, error handling, and data processing
  • server.py: Implements the MCP server protocol and exposes tools for AI assistant integration

šŸ¤ Contributing

We welcome contributions from the community! Here's how you can help:

Ways to Contribute

  • šŸ› Bug Reports: Found an issue? Let us know!
  • šŸ’” Feature Requests: Have ideas for improvements?
  • šŸ”§ Code Contributions: Submit pull requests
  • šŸ“– Documentation: Help improve our docs

Development Setup

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/amazing-feature
  3. Make your changes and test thoroughly
  4. Commit your changes: git commit -m 'Add amazing feature'
  5. Push to the branch: git push origin feature/amazing-feature
  6. Open a Pull Request

šŸ“„ License

This project is licensed under the MIT License - see the file for details.


šŸ™ Acknowledgments

  • Semantic Scholar Team for providing the excellent API
  • Model Context Protocol community for the framework
  • Contributors who help improve this project

šŸ“ž Support


Made with ā¤ļø for the research community
Empowering AI agents with academic knowledge