Research MCP Server
Searches preprints on arXiv (and bioRxiv, medRxiv) via the search_preprints tool.
Searches public posts on Bluesky via the search_bluesky tool.
Used as a fallback search engine for web searches when no Google API key is provided.
Searches datasets on Figshare via the search_datasets tool.
Searches the web using Google (when API key provided) via the web_search tool.
Searches news articles from Google News RSS via the search_news tool.
Searches public posts on Mastodon via the search_mastodon tool.
Searches points of interest and amenities on OpenStreetMap via the search_osm tool.
Searches datasets on OSF via the search_datasets tool.
Searches posts and comments on Reddit via the search_reddit tool.
Fetches newsletters from Substack publications via RSS using the search_substack tool.
Searches public Telegram channels and messages via the search_telegram tool.
Retrieves article summaries from Wikipedia via the get_wikipedia tool.
Searches YouTube videos and optionally fetches transcripts via the search_youtube tool.
Searches datasets on Zenodo via the search_datasets tool.
Research MCP Server — 23 Research Tools for AI Agents
One endpoint. 23 tools. Web, social, academic, and financial data — for any MCP client.
Give your AI agent the ability to search the web, extract content, find academic papers, verify citations, scan social media, pull SEC filings, and more — all through a single MCP server. Works with Claude, Cursor, ChatGPT, LangChain, LlamaIndex, and any MCP-compatible client.
Tools | 23 (web, social, academic, financial, geographic) |
Pricing | $0.01–$0.03 per successful call. No charge on errors. |
Setup | 2 minutes. One URL, one token. |
Rate limit | 60 requests/minute |
Presets | Load only the tools you need (saves tokens) |
Why This Exists
AI agents are only as good as their data. Without research tools, they hallucinate. With this MCP server, your agent can:
Search the web and extract clean content from any URL
Find academic papers on arXiv, bioRxiv, medRxiv and verify citations against Crossref/OpenAlex
Scan social platforms — Reddit, Hacker News, YouTube, Bluesky, Telegram, Mastodon, VK, Substack
Pull financial data — SEC EDGAR filings by ticker
Find geographic data — OpenStreetMap POIs and amenities
Detect trends across multiple platforms simultaneously
Resurrect dead links via the Wayback Machine
Score source reliability with rule-based tier scoring
Related MCP server: agent101-mcp
Quick Start
# 1. List all 23 tools
curl -X POST https://mcp.apify.com/mcp?tools=research-mcp-server \
-H "Authorization: Bearer $APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"tools/list","id":1}'
# 2. Call web_search
curl -X POST https://mcp.apify.com/mcp?tools=research-mcp-server \
-H "Authorization: Bearer $APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"tools/call","params":{"name":"web_search","arguments":{"query":"AI agents 2025"}},"id":2}'If you see a JSON response with 23 tool definitions, your token works. Then configure your MCP client below.
Use Cases
Research assistant:
web_search→extract_content→score_reliability→find_counter_arguments→verify_citations→format_citationsMarket intelligence:
detect_trends→search_reddit→search_hackernews→search_newsAcademic workflow:
search_preprints→search_datasets→find_counter_arguments→validate_bibliographyFinancial research:
search_sec_filings→extract_content→score_reliabilitySocial listening:
search_bluesky→search_telegram→search_mastodon→search_vkLink rescue:
resurrect_dead_link→extract_content(read archived content)Location research:
search_osm→extract_content(pull details from POI websites)
Tools
Web & Content — $0.01/call
Tool | Description | Example |
| Google (with API key) or DuckDuckGo fallback |
|
| Clean text from any URL |
|
| Google News RSS |
|
| Wikipedia article summary |
|
| Find archived version via Wayback Machine |
|
| Rule-based source reliability scoring |
|
Social & Discussion — $0.02/call
Tool | Description | Example |
| Reddit posts + comments |
|
| Hacker News via Algolia API |
|
| YouTube videos + transcripts |
|
| Substack newsletters via RSS |
|
| Bluesky (AT Protocol) public posts |
|
| Public Telegram channels via t.me/s/ preview |
|
| Mastodon Fediverse public posts |
|
| VKontakte public posts via official API |
|
| Trending topics across Reddit, HN, YouTube, News |
|
Academic & Research — $0.03/call
Tool | Description | Example |
| arXiv, bioRxiv, medRxiv preprints |
|
| Zenodo, Figshare, OSF data repositories |
|
| Academic papers supporting/contrasting a claim |
|
| Verify citations against Crossref and OpenAlex |
|
| Validate entire bibliography with auto-format detection |
|
| Generate BibTeX, APA, MLA, Chicago, RIS from DOIs |
|
Specialized Data — $0.02/call
Tool | Description | Example |
| OpenStreetMap POIs and amenities via Overpass API |
|
| SEC EDGAR filings by ticker or company name |
|
Response Format
All tools return { query, count, results }. Errors return { query, count: 0, results: [], error: "message" }. You only pay for successful calls — errors are free.
Example — web_search({ query: "rust async runtime" }):
{
"query": "rust async runtime",
"count": 3,
"results": [
{ "title": "Tokio — Async runtime for Rust", "url": "https://tokio.rs", "snippet": "Tokio is an async runtime...", "source": "duckduckgo" },
{ "title": "async-std — Alternative async runtime", "url": "https://async.rs", "snippet": "async-std provides...", "source": "duckduckgo" }
]
}Example — score_reliability({ urls: ["https://en.wikipedia.org/wiki/Rust"] }):
{
"query": "https://en.wikipedia.org/wiki/Rust",
"count": 1,
"results": [
{ "url": "https://en.wikipedia.org/wiki/Rust", "reliabilityScore": 1.0, "reliabilityTier": "HIGH", "domain": "en.wikipedia.org" }
]
}Presets
Reduce token overhead by loading only needed tools. Configure via Actor input JSON {"preset": "web"} in Apify Console.
Preset | Tools | Count |
| All tools | 23 |
| web_search, extract_content, search_news, get_wikipedia, resurrect_dead_link, score_reliability | 6 |
| search_reddit, search_hackernews, search_youtube, search_substack, search_bluesky, search_telegram, search_mastodon, search_vk, detect_trends | 9 |
| search_preprints, search_datasets, find_counter_arguments, verify_citations, validate_bibliography, format_citations | 6 |
| search_osm, search_sec_filings | 2 |
MCP Client Setup
Claude Desktop
{
"mcpServers": {
"apify": {
"command": "npx",
"args": [
"mcp-remote",
"https://mcp.apify.com/?tools=research-mcp-server",
"--header",
"Authorization: Bearer <YOUR_APIFY_TOKEN>"
]
}
}
}Cursor
{
"mcpServers": {
"research": {
"url": "https://mcp.apify.com/?tools=research-mcp-server",
"headers": {
"Authorization": "Bearer <YOUR_APIFY_TOKEN>"
}
}
}
}LangChain
from langchain_mcp import MCPClient
client = MCPClient("https://mcp.apify.com/?tools=research-mcp-server",
headers={"Authorization": "Bearer <YOUR_APIFY_TOKEN>"})
tools = await client.get_tools()LlamaIndex
from llama_index.tools.mcp import McpToolSpec
tool_spec = McpToolSpec(
server_url="https://mcp.apify.com/?tools=research-mcp-server",
headers={"Authorization": "Bearer <YOUR_APIFY_TOKEN>"},
)
tools = await tool_spec.to_tool_list()Pricing
Tier | Price | Tools |
Simple lookup | $0.01/call | web_search, extract_content, get_wikipedia, search_news, search_hackernews, score_reliability, resurrect_dead_link |
Standard search | $0.02/call | search_reddit, search_youtube, search_substack, search_bluesky, search_telegram, search_mastodon, search_vk, search_osm, detect_trends, search_preprints, search_datasets, search_sec_filings |
Premium workflow | $0.03/call | find_counter_arguments, verify_citations, validate_bibliography, format_citations |
Pay only for successful calls. No subscription, no minimum. If a tool returns an error, you are not charged.
Cost examples:
100 web searches = $1.00
50 Reddit searches + 25 YouTube searches = $1.50
20 citation verifications + 10 bibliography validations = $0.90
Full research workflow (search → extract → score → verify → format) = ~$0.08
Cost tips: Use presets to reduce token overhead. Lower maxResults for faster, cheaper calls. Use score_reliability before expensive citation tools. Simple lookups ($0.01) are cheapest — start there.
API Endpoints
Endpoint | Method | Description |
| GET | API info and endpoint directory |
| POST | MCP protocol endpoint (tools/list, tools/call) |
| GET | Returns 405 (use POST) |
| GET | Server health check (status, tool count, preset, uptime) |
| GET | List all active tools with pricing tiers |
| GET | Usage stats (total calls, per-tool call counts) |
| GET | Full pricing breakdown by tier with tool lists |
Rate Limits
60 requests/minute per IP (global)
HTTP 429 with
Retry-Afterheader when exceededExternal API limits (Crossref, SEC, Wikipedia) handled with automatic retries
Troubleshooting
Error | Cause | Fix |
| SSRF protection | Use public HTTP/HTTPS URLs, not localhost/private IPs |
| Missing env var | Add |
HTTP 429 | Rate limit exceeded | Wait for |
Empty | No Google API key | Falls back to DuckDuckGo (fewer results). Add |
| Non-US company |
|
| Input too large | Split bibliography into smaller batches |
Environment Variables
Variable | Required | Description |
| Yes | Apify API token |
| No | Google Custom Search API key (enables Google search) |
| No | Google Custom Search Engine ID |
| No | VKontakte API token (required for |
Copy .env.example to .env and fill in values. Without Google API keys, web search falls back to DuckDuckGo.
Legal & Ethical Use
This actor respects robots.txt, rate limits, and platform terms of service. Users are responsible for compliance with applicable laws and the terms of service of platforms accessed (Reddit, YouTube, SEC, Crossref, etc.).
FAQ
How is this different from using SerpAPI or Serper? SerpAPI and Serper only do web search. This server covers 23 tools across web, social, academic, financial, and geographic data — all through one MCP endpoint. No need to manage multiple API keys, billing accounts, and integrations.
How is this different from building my own tools? Building 23 research tools from scratch takes weeks: API integrations, error handling, caching, rate limiting, testing, deployment. This server is production-ready, tested (71 tests), and deployed on Apify's infrastructure with standby mode for instant responses.
Do I pay for failed calls? No. You only pay for successful tool calls. If a tool returns an error (API down, invalid input, rate limited), you are not charged.
What MCP clients are supported? Any MCP-compatible client: Claude Desktop, Cursor, ChatGPT, LangChain, LlamaIndex, Windsurf, and more. The server follows the MCP protocol specification.
Can I use only a subset of tools?
Yes. Use presets (web, social, academic, data) to load only the tools you need. This reduces token overhead in your AI agent's context window.
Is there a free tier? Apify provides a free tier with $5 monthly credit. At $0.01–$0.03/call, that's 150–500 free calls per month.
What happens if an external API is down? The server retries on 429 and 5xx errors with exponential backoff. If the API remains unavailable, the tool returns a clear error message (no charge). Cached results may still be served.
Development
npm install
npm run build
npm test
npm run start:devDeployment
This actor is configured for Apify's platform. To deploy:
# Install Apify CLI
npm i -g apify
# Login
apify login
# Push to Apify (builds and deploys)
apify push
# After deployment, set SEO title and description in:
# Apify Console → Actor → Publication → Display informationThe actor uses standby mode for instant MCP responses. No cold-start delay after the first request.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/liqlos/research-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server