All-in-MCP

Proporciona funciones de utilidad para tareas comunes como procesamiento de texto, codificación, decodificación, hashing e información del sistema.

Documentación

All-in-MCP

Un servidor del Protocolo de Contexto de Modelo (MCP) basado en FastMCP que proporciona utilidades de búsqueda de artículos académicos, búsqueda web y procesamiento de PDF. Cuenta con una arquitectura modular con capacidades tanto de proxy como de servidor independiente.

Introducción al módulo APaper

APaper Research Direction

Arquitectura

All-in-MCP utiliza una arquitectura FastMCP moderna con tres componentes principales:

  1. 🔄 Servidor proxy All-in-MCP: Servidor principal que enruta solicitudes a herramientas académicas y búsqueda web
  2. 📚 Módulo APaper: Servidor de investigación académica aislado con herramientas especializadas de búsqueda de artículos
  3. 🔍 Módulo de búsqueda Qwen: Servidor de búsqueda web impulsado por la API de Qwen/Dashscope con MCP basado en SSE

Este diseño proporciona mejor modularidad, rendimiento y escalabilidad.

Características

Todos los servidores exponen herramientas de búsqueda como endpoints de FastMCP con registro automático de herramientas:

Herramientas disponibles

CategoríaNombre de la herramientaDescripciónBackend
Investigación académicaapaper_search_iacr_papersBuscar artículos académicos del archivo IACR ePrintAPaper
apaper_download_iacr_paperDescargar PDF de un artículo de IACR ePrintAPaper
apaper_read_iacr_paperLeer y extraer contenido de texto de un PDF de IACR ePrintAPaper
Búsqueda bibliográficaapaper_search_dblp_papersBuscar en la base de datos bibliográfica de informática DBLPAPaper
Búsqueda multiplataformaapaper_search_google_scholar_papersBuscar artículos académicos en todas las disciplinas con datos de citasAPaper
Búsqueda webqwen_search_web_searchBuscar en la web usando la API de Qwen/DashscopeQwen Search
Repositorio de GitHubgithub-repo-mcp_getRepoAllDirectoriesObtener todos los directorios de un repositorio de GitHubGitHub-Repo-MCP
github-repo-mcp_getRepoDirectoriesObtener directorios de una ruta específica en un repositorio de GitHubGitHub-Repo-MCP
github-repo-mcp_getRepoFileObtener contenido de archivos de un repositorio de GitHubGitHub-Repo-MCP

Todas las herramientas se implementan utilizando decoradores de FastMCP con registro automático, validación integrada y manejo mejorado de errores.

Inicio rápido

Requisitos previos

  • Python 3.10 o superior
  • pipx para la instalación de paquetes de Python
  • npx para MCP Inspector (requiere Node.js)

Integración con clientes MCP

Agregue los servidores a la configuración de su cliente MCP:

Configuración de VSCode (.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"
      }
    }
  }
}

Configuración de Claude Code (.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"
      }
    }
  }
}

Opciones del servidor

El servidor proxy principal admite múltiples backends de MCP a través de variables de entorno:

# 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

Nota: Si tiene el paquete instalado globalmente, también puede ejecutarlo directamente: all-in-mcp o qwen-search

Depuración y pruebas

MCP Inspector

Use el MCP Inspector oficial para depurar y probar la funcionalidad del servidor:

# 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

Desarrollo local con uv

Cuando desarrolle localmente, use uv run para depurar funciones MCP específicas:

# 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

El MCP Inspector proporciona:

  • 🔍 Pruebas interactivas de herramientas: Pruebe todas las herramientas disponibles con parámetros reales
  • 📊 Información del servidor: Vea las capacidades del servidor y los esquemas de las herramientas
  • 🐛 Mensajes de depuración: Supervise la comunicación del servidor y los mensajes de error
  • ⚡ Pruebas en tiempo real: Ejecute herramientas y vea los resultados inmediatamente

Perfecto para desarrollo, depuración y comprensión de cómo funcionan las herramientas de FastMCP.

Desarrollo

Para la configuración de desarrollo y las pautas de contribución, consulte la Guía de desarrollo.

Configuración rápida de desarrollo

# 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