PubMed Research▌
by aringadre76
Search PubMed for biomedical papers, retrieve abstracts and metadata, generate citations in multiple styles, and track c
Integrates with PubMed's biomedical literature database to search academic papers, retrieve detailed metadata and abstracts, generate formatted citations in multiple styles, and track citation metrics for research and literature review workflows.
Both formats append explainx.ai attribution and the canonical URL for this MCP server listing.
best for
- / Researchers conducting literature reviews
- / Students writing academic papers
- / Healthcare professionals seeking evidence-based research
- / Scientists tracking citations and research trends
capabilities
- / Search PubMed and academic databases for research papers
- / Retrieve detailed metadata and abstracts
- / Generate citations in multiple academic formats
- / Extract content from full-text papers
- / Track citation metrics and paper statistics
- / Search within papers for specific information
what it does
Searches biomedical literature from PubMed and other academic databases to retrieve papers, abstracts, and metadata. Generates citations in multiple formats and provides access to full-text content when available.
about
PubMed Research is a community-built MCP server published by aringadre76 that provides AI assistants with tools and capabilities via the Model Context Protocol. Search PubMed for biomedical papers, retrieve abstracts and metadata, generate citations in multiple styles, and track c It is categorized under search web, ai ml.
how to install
You can install PubMed Research in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.
license
MIT
PubMed Research is released under the MIT license. This is a permissive open-source license, meaning you can freely use, modify, and distribute the software.
readme
Scholarly Research MCP Server
A powerful, consolidated research tool that helps you find and analyze academic research papers from PubMed, Google Scholar, ArXiv, and JSTOR through just 5 powerful tools.
What This Tool Does
This tool helps you:
- Find research papers on any topic from multiple academic databases
- Read full papers when available (not just abstracts)
- Extract key information like quotes, statistics, and findings
- Get citations in the format you need for your work
- Search within papers to find specific information
- Organize research with customizable preferences
Key Features
- 5 Consolidated Tools: Powerful, multi-functional tools instead of 24 separate ones
- Multi-Source Search: PubMed, Google Scholar, ArXiv, and JSTOR
- User Preferences: Customizable search and display settings
- Content Extraction: Full-text paper access and analysis
- Citation Management: Multiple citation format support
- Error Handling: Robust fallback mechanisms
- Web research (Firecrawl): When
FIRECRAWL_API_KEYis set in the environment (or a Firecrawl client is provided), theweb_researchtool can scrape URLs and run web search. See Configuration and copy.env.exampleto.envto set your key. Get an API key at firecrawl.dev.
Configuration Overview
Configuration for environment variables and API keys is documented in more detail in the docs/ folder and .env.example. At a high level, you configure API keys via environment variables and should avoid committing any secret values.
Project Structure
Core Components
src/
├── index.ts # Main server entry point (consolidated)
├── adapters/ # Data source connectors
│ ├── pubmed.ts # PubMed API integration
│ ├── google-scholar.ts # Google Scholar web scraping
│ ├── google-scholar-firecrawl.ts # Firecrawl integration
│ ├── arxiv.ts # ArXiv integration
│ ├── unified-search.ts # Basic multi-source search
│ ├── enhanced-unified-search.ts # Advanced multi-source search
│ └── preference-aware-unified-search.ts # User preference integration
├── preferences/ # User preference management
│ └── user-preferences.ts # Preference storage and retrieval
└── models/ # Data structures and interfaces
├── paper.ts # Paper data models
├── search.ts # Search parameter models
└── preferences.ts # Preference models
Documentation
docs/
├── README.md # Documentation index and overview
├── CONSOLIDATION_GUIDE.md # Complete consolidation guide
├── TOOL_CONSOLIDATION.md # Quick tool mapping reference
├── PROJECT_STRUCTURE.md # Clean project organization
├── API_REFERENCE.md # Complete API documentation
├── ARCHITECTURE.md # Technical system design
├── DATA_MODELS.md # Data structure definitions
└── DEVELOPMENT.md # Developer setup guide
Testing
tests/
├── test-preferences.js # Preference system tests
├── test-all-tools-simple.sh # Bash test runner (recommended)
├── test_all_tools.py # Python test runner
└── test-all-tools.js # JavaScript test runner
Configuration
├── package.json # Project dependencies and scripts
├── tsconfig.json # TypeScript configuration
├── .env.example # Environment variables template
└── README.md # This file
Quick Start
Pick your AI tool below to get started quickly:
Cursor is a true one-click install via the deeplink above. For other tools, the buttons jump to the relevant configuration section.
Claude Desktop – Copy configuration
Add this to your claude_desktop_config.json under mcpServers:
{
"mcpServers": {
"scholarly-research-mcp": {
"command": "npx",
"args": ["-y", "scholarly-research-mcp"]
}
}
}
Then fully restart Claude Desktop.
Config file locations:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%/Claude/claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
Cursor IDE – One‑click install
If you use Cursor, you can install this MCP server with a single click:
This opens Cursor and pre-fills an MCP server that runs npx -y scholarly-research-mcp. You’ll need Node.js and npm available on your system.
VS Code – Copy configuration
Create .vscode/mcp.json in your project (or edit your global MCP config) and add:
{
"servers": {
"scholarly-research-mcp": {
"command": "npx",
"args": ["-y", "scholarly-research-mcp"]
}
}
}
Then reload VS Code so the Copilot / MCP integration picks it up.
Claude Code / Gemini / Codex – CLI
If your tool lets you point at a local MCP server command, use:
npx -y scholarly-research-mcp
or, after cloning this repo and building:
node dist/index.js
Configure your AI tool to use that command as an MCP server.
Manual – Copy configuration JSON
For any MCP-compatible assistant that accepts a JSON config (similar to mcp.json), use:
{
"mcpServers": {
"scholarly-research-mcp": {
"command": "npx",
"args": ["-y", "scholarly-research-mcp"]
}
}
}
Paste this into the assistant’s MCP configuration and adjust paths/env vars if needed.
Requirements
- Node.js >= 18.17 (LTS recommended). Check with
node -v. - npm (comes with Node.js).
- Google Chrome or Chromium (optional) – only needed for Google Scholar scraping and ArXiv full-text extraction. If you only use PubMed, ArXiv API search, or Firecrawl-based features, no browser is required. You can point to a custom binary with
PUPPETEER_EXECUTABLE_PATHorCHROME_PATH.
Local MCP Setup
-
Download the tool
git clone https://github.com/aringadre76/mcp-for-research.git cd mcp-for-research -
Install dependencies
npm install -
Build the tool
npm run build -
Configure your AI assistant
- Find "MCP Servers" or "Tools" in your AI assistant's settings
- Add a new MCP server
- Set the command to:
node dist/index.js - Set the working directory to your project folder
-
Test the setup
npm run test:all-tools-bash -
Connect from your AI assistant
- Open your assistant's settings and find the section for MCP servers or tools.
- Add a new MCP server that runs the command
node dist/index.jsin themcp-for-researchfolder. - Save the configuration and ask the assistant to list or use the
research_searchtool to confirm it is working.
Available Tools
The server provides 5 consolidated MCP tools that replace the previous 24 individual tools:
1. research_search
Comprehensive research paper search across PubMed, Google Scholar, and ArXiv. Uses the preference-aware adapter: when Firecrawl is configured and the preference is set, Google Scholar can use Firecrawl instead of Puppeteer. JSTOR is accepted in sources but not implemented; if requested, a note is appended: "JSTOR is not implemented; results are from other sources."
Parameters: Query, sources (pubmed, google-scholar, arxiv, jstor), maxResults, startDate, endDate, journal, author, includeAbstracts, sortBy
2. paper_analysis
Get comprehensive paper information, full text, and analysis including quotes, statistics, and findings.
Combines: Paper retrieval, content extraction, and analysis tools Parameters: Identifier, analysis type, quote limits, section lengths
3. citation_manager
Generate citations in multiple formats and get citation information including counts and related papers.
Combines: Citation tools, citation counting, and related paper discovery Parameters: Identifier, action, format, related paper limits
4. research_preferences
Manage research preferences including source priorities, search settings, display options, and ca
FAQ
- What is the PubMed Research MCP server?
- PubMed Research is a Model Context Protocol (MCP) server profile on explainx.ai. MCP lets AI hosts (e.g. Claude Desktop, Cursor) call tools and resources through a standard interface; this page summarizes categories, install hints, and community ratings.
- How do MCP servers relate to agent skills?
- Skills are reusable instruction packages (often SKILL.md); MCP servers expose live capabilities. Teams frequently combine both—skills for workflows, MCP for APIs and data. See explainx.ai/skills and explainx.ai/mcp-servers for parallel directories.
- How are reviews shown for PubMed Research?
- This profile displays 53 aggregated ratings (sample rows for discoverability plus signed-in user reviews). Average score is about 4.8 out of 5—verify behavior in your own environment before production use.
Use Cases▌
Web Research & Information Gathering
Fetch and extract information from websites automatically
Example
Research competitor pricing, scrape product reviews, monitor news mentions
Automate 5-10 hours/week of manual web research
Content Monitoring & Alerts
Track website changes, new content, price updates
Example
Monitor competitor blog for new posts, track stock availability, watch for pricing changes
Stay informed without manual checking, never miss important updates
Data Extraction & Aggregation
Extract structured data from multiple websites
Example
Compile product listings from 10 e-commerce sites, aggregate job postings, collect real estate data
Build datasets 100x faster than manual copying
API-less Integration
Interact with services that don't offer APIs
Example
Check form submissions, validate website functionality, test user flows
Automate interactions with any website, even without API
Implementation Guide▌
Prerequisites
- ›Claude Desktop or Cursor with MCP support
- ›Understanding of web scraping ethics and robots.txt
- ›Rate limiting awareness to avoid overwhelming target sites
- ›Knowledge of legal restrictions on data collection
Time Estimate
20-40 minutes including configuration and testing
Installation Steps
- 1.Install web automation MCP server via npm or pip
- 2.Configure allowed domains and rate limits in MCP config
- 3.Test with simple fetch: 'Get content from example.com'
- 4.Progress to extraction: 'Extract all product prices from this page'
- 5.Set up monitoring: 'Check this URL daily for changes'
- 6.Parse structured data: 'Create CSV from this table'
- 7.Respect robots.txt and rate limits always
Troubleshooting
- ⚠403 Forbidden: Website blocks bots—respect their wishes, use official API instead
- ⚠Rate limit errors: Slow down requests, add delays between fetches
- ⚠Stale data: Target site changed HTML structure—update selectors
- ⚠Timeout errors: Site is slow or blocking—increase timeout, try different user agent
- ⚠JavaScript-rendered content: Use headless browser MCP servers for dynamic sites
Best Practices▌
✓ Do
- +Check robots.txt and respect crawl rules
- +Rate limit requests: 1-2 requests/second maximum
- +Use official APIs when available instead of scraping
- +Identify your bot with descriptive user agent
- +Cache results to minimize repeated requests
- +Handle errors gracefully with retries and fallbacks
- +Validate extracted data for accuracy
✗ Don't
- −Don't scrape sites that explicitly forbid it (robots.txt, ToS)
- −Don't overwhelm servers with rapid requests—use rate limiting
- −Don't scrape personal data without consent and legal basis
- −Don't ignore copyright on extracted content
- −Don't assume HTML structure is stable—handle changes
- −Don't use scraped data for commercial purposes without permission
💡 Pro Tips
- ★Use CSS selectors or XPath for robust data extraction
- ★Set up monitoring alerts for extraction failures (structure changed)
- ★Implement exponential backoff for retries on failures
- ★Store raw HTML for reprocessing if extraction logic changes
- ★Combine with data analysis tools for insights from extracted data
- ★Consider using official APIs or RSS feeds as more stable alternatives
Technical Details▌
Architecture
MCP server handles HTTP requests, HTML parsing, JavaScript rendering (if headless browser), and returns structured data to Claude.
Protocols
- HTTP/HTTPS
- WebSocket (for real-time sites)
- Puppeteer/Playwright (for JavaScript sites)
Compatibility
- Static HTML sites
- JavaScript-rendered SPAs (with headless browser)
- REST APIs
- GraphQL endpoints
When to Use This▌
✓ Use When
Use for research automation, content monitoring, data aggregation from multiple sources, and when official APIs don't exist. Best for read-only information gathering.
✗ Avoid When
Avoid for sites with APIs (use API instead), sites that explicitly forbid scraping, when data is copyrighted, or for login-required content without proper authorization.
Integration▌
- →Scheduled monitoring with change detection
- →Multi-source data aggregation pipelines
- →Fallback to web scraping when API rate limits hit
- →Headless browser for JavaScript-heavy sites
Discussion
Product Hunt–style comments (not star reviews)- No comments yet — start the thread.
List & Promote Your MCP Server
Share your MCP server with the developer community
Ratings
4.8★★★★★53 reviews- ★★★★★Amina Sharma· Dec 16, 2024
We wired PubMed Research into a staging workspace; the listing’s GitHub and npm pointers saved time versus hunting across READMEs.
- ★★★★★Ren Menon· Dec 16, 2024
PubMed Research is a well-scoped MCP server in the explainx.ai directory — install snippets and categories matched our Claude Code setup.
- ★★★★★Amina Shah· Dec 12, 2024
Useful MCP listing: PubMed Research is the kind of server we cite when onboarding engineers to host + tool permissions.
- ★★★★★Shikha Mishra· Dec 4, 2024
PubMed Research reduced integration guesswork — categories and install configs on the listing matched the upstream repo.
- ★★★★★Michael Sethi· Dec 4, 2024
According to our notes, PubMed Research benefits from clear Model Context Protocol framing — fewer ambiguous “AI plugin” claims.
- ★★★★★Yash Thakker· Nov 23, 2024
I recommend PubMed Research for teams standardizing on MCP; the explainx.ai page compares cleanly with sibling servers.
- ★★★★★Ishan Sharma· Nov 23, 2024
We wired PubMed Research into a staging workspace; the listing’s GitHub and npm pointers saved time versus hunting across READMEs.
- ★★★★★Evelyn Huang· Nov 7, 2024
According to our notes, PubMed Research benefits from clear Model Context Protocol framing — fewer ambiguous “AI plugin” claims.
- ★★★★★Michael Sharma· Nov 7, 2024
PubMed Research has been reliable for tool-calling workflows; the MCP profile page is a good permalink for internal docs.
- ★★★★★Lucas Ghosh· Nov 3, 2024
Strong directory entry: PubMed Research surfaces stars and publisher context so we could sanity-check maintenance before adopting.
showing 1-10 of 53