All-in-MCP
Enables academic research through paper search across multiple databases (IACR, CryptoBib, Crossref, Google Scholar), PDF processing, and GitHub repository browsing. Features modular architecture with FastMCP-based proxy server routing to specialized academic tools.
README
All-in-MCP
A FastMCP-based Model Context Protocol (MCP) server providing academic paper search, web search, and PDF processing utilities. Features a modular architecture with both proxy and standalone server capabilities.
<details> <summary>APaper Module Introduction</summary>

</details>
Architecture
All-in-MCP uses a modern FastMCP architecture with three main components:
- 🔄 All-in-MCP Proxy Server: Main server that routes requests to academic tools and web search
- 📚 APaper Module: Isolated academic research server with specialized paper search tools
- 🔍 Qwen Search Module: Web search server powered by Qwen/Dashscope API with SSE-based MCP
This design provides better modularity, performance, and scalability.
Features
All servers expose search tools as FastMCP endpoints with automatic tool registration:
Available Tools
| Category | Tool Name | Description | Backend |
|---|---|---|---|
| Academic Research | apaper_search_iacr_papers |
Search academic papers from IACR ePrint Archive | APaper |
apaper_download_iacr_paper |
Download PDF of an IACR ePrint paper | APaper | |
apaper_read_iacr_paper |
Read and extract text content from an IACR ePrint paper PDF | APaper | |
| Bibliography Search | apaper_search_dblp_papers |
Search DBLP computer science bibliography database | APaper |
| Cross-platform Search | apaper_search_google_scholar_papers |
Search academic papers across disciplines with citation data | APaper |
| Web Search | qwen_search_web_search |
Search the web using Qwen/Dashscope API | Qwen Search |
| GitHub Repository | github-repo-mcp_getRepoAllDirectories |
Get all directories from a GitHub repository | GitHub-Repo-MCP |
github-repo-mcp_getRepoDirectories |
Get directories from a specific path in GitHub repository | GitHub-Repo-MCP | |
github-repo-mcp_getRepoFile |
Get file content from GitHub repository | GitHub-Repo-MCP |
All tools are implemented using FastMCP decorators with automatic registration, built-in validation, and enhanced error handling.
Quick Start
Prerequisites
- Python 3.10 or higher
pipxfor Python package installationnpxfor MCP Inspector (Node.js required)
Integration with MCP Clients
Add the servers to your MCP client configuration:
VSCode Configuration (.vscode/mcp.json)
{
"servers": {
"all-in-mcp": {
"type": "stdio",
"command": "pipx",
"args": ["run", "all-in-mcp"],
"env": {
"APAPER": "true",
"QWEN_SEARCH": "true",
"DASHSCOPE_API_KEY": "your_api_key_here",
"GITHUB_REPO_MCP": "true"
}
}
}
}
Claude Code Configuration (.mcp.json)
{
"mcpServers": {
"all-in-mcp": {
"type": "stdio",
"command": "pipx",
"args": ["run", "all-in-mcp"],
"env": {
"APAPER": "true",
"QWEN_SEARCH": "true",
"DASHSCOPE_API_KEY": "your_api_key_here",
"GITHUB_REPO_MCP": "true"
}
}
}
}
Server Options
The main proxy server supports multiple MCP backends through environment variables:
# Run with APaper academic tools enabled
APAPER=true pipx run all-in-mcp
# Run with Qwen Search web search enabled
QWEN_SEARCH=true DASHSCOPE_API_KEY=your_api_key_here pipx run all-in-mcp
# Run with GitHub repository tools enabled
GITHUB_REPO_MCP=true pipx run all-in-mcp
# Run with all backends enabled
APAPER=true QWEN_SEARCH=true DASHSCOPE_API_KEY=your_api_key_here GITHUB_REPO_MCP=true pipx run all-in-mcp
# Run standalone APaper server (academic tools only)
pipx run apaper
# Run standalone Qwen Search server (web search only)
DASHSCOPE_API_KEY=your_api_key_here pipx run qwen-search
Note: If you have the package installed globally, you can also run directly:
all-in-mcporqwen-search
Debugging & Testing
MCP Inspector
Use the official MCP Inspector to debug and test server functionality:
# Debug the main proxy server with APaper tools
APAPER=true npx @modelcontextprotocol/inspector pipx run all-in-mcp
# Debug with all backends enabled
APAPER=true GITHUB_REPO_MCP=true npx @modelcontextprotocol/inspector pipx run all-in-mcp
# Debug standalone APaper server
npx @modelcontextprotocol/inspector pipx run apaper
Local Development with uv
When developing locally, use uv run to debug specific MCP functions:
# Debug APaper server (academic tools)
npx @modelcontextprotocol/inspector uv run apaper
# Debug all-in-mcp proxy with APaper enabled
APAPER=true npx @modelcontextprotocol/inspector uv run all-in-mcp
# Debug all-in-mcp proxy with GitHub repo tools enabled
GITHUB_REPO_MCP=true npx @modelcontextprotocol/inspector uv run all-in-mcp
# Debug all-in-mcp with all backends enabled
APAPER=true QWEN_SEARCH=true DASHSCOPE_API_KEY=your_api_key_here GITHUB_REPO_MCP=true npx @modelcontextprotocol/inspector uv run all-in-mcp
# Debug Qwen Search server
DASHSCOPE_API_KEY=your_api_key_here npx @modelcontextprotocol/inspector uv run qwen-search
The MCP Inspector provides:
- 🔍 Interactive Tool Testing: Test all available tools with real parameters
- 📊 Server Information: View server capabilities and tool schemas
- 🐛 Debug Messages: Monitor server communication and error messages
- ⚡ Real-time Testing: Execute tools and see results immediately
Perfect for development, debugging, and understanding how the FastMCP tools work.
<details> <summary>Development</summary>
For development setup and contribution guidelines, see the Development Guide.
Quick Development Setup
# Clone the repository
git clone https://github.com/jiahaoxiang2000/all-in-mcp.git
cd all-in-mcp
# Install with development dependencies
uv sync --extra dev
# Run tests (now using unittest)
uv run python tests/test_fastmcp_server.py
uv run python tests/test_apaper_iacr.py
uv run python tests/test_apaper_pdf.py
uv run python tests/test_qwen_search.py
</details>
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
E2B
Using MCP to run code via e2b.