Metadata-Version: 2.4
Name: all-in-mcp
Version: 0.2.7
Summary: An MCP (Model Context Protocol) server providing daily-use utility functions and academic paper search capabilities
Project-URL: Homepage, https://github.com/jiahaoxiang2000/all-in-mcp
Project-URL: Repository, https://github.com/jiahaoxiang2000/all-in-mcp
Project-URL: Documentation, https://github.com/jiahaoxiang2000/all-in-mcp/tree/main/docs
Project-URL: Issues, https://github.com/jiahaoxiang2000/all-in-mcp/issues
Author-email: isomo <jiahaoxiang2000@gmail.com>
License: MIT
License-File: LICENSE
Keywords: academic,iacr,mcp,model-context-protocol,papers,utilities
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Scientific/Engineering
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Text Processing :: General
Requires-Python: >=3.10
Requires-Dist: beautifulsoup4>=4.12.0
Requires-Dist: feedparser>=6.0.10
Requires-Dist: httpx>=0.24.0
Requires-Dist: mcp>=1.9.4
Requires-Dist: pypdf>=4.0.0
Requires-Dist: requests>=2.31.0
Provides-Extra: all
Requires-Dist: psutil>=5.9.0; extra == 'all'
Provides-Extra: dev
Requires-Dist: build>=1.0.0; extra == 'dev'
Requires-Dist: mypy>=1.5.0; extra == 'dev'
Requires-Dist: pytest-asyncio>=0.21.0; extra == 'dev'
Requires-Dist: pytest-cov>=4.1.0; extra == 'dev'
Requires-Dist: pytest>=8.0.0; extra == 'dev'
Requires-Dist: ruff>=0.1.0; extra == 'dev'
Requires-Dist: twine>=4.0.0; extra == 'dev'
Provides-Extra: system
Requires-Dist: psutil>=5.9.0; extra == 'system'
Description-Content-Type: text/markdown

# All-in-MCP

An MCP (Model Context Protocol) server that provides utility functions, including academic paper search capabilities.

- [**Paper Tools overview _Video_**](https://www.bilibili.com/video/BV1RMKWzdEk8)
- [_Overview PDF_](https://github.com/jiahaoxiang2000/tutor/blob/main/Apaper/setup.pdf)

## Features

This MCP server exposes the following daily-use utility tools as MCP endpoints:

### Available Tools

- **Academic Research**:
  - `search-iacr-papers`: Search academic papers from IACR ePrint Archive
  - `download-iacr-paper`: Download PDF of an IACR ePrint paper
  - `read-iacr-paper`: Read and extract text content from an IACR ePrint paper PDF
- **Bibliography Search**:
  - `search-cryptobib-papers`: Search CryptoBib bibliography database for cryptography papers (structured metadata or raw BibTeX)
- **Crossref Search**:
  - `search-crossref-papers`: Search academic papers from Crossref database
- **Google Scholar**:
  - `search-google-scholar-papers`: Search academic papers across disciplines with citation data
- **PDF Reading**:
  - `read-pdf`: Read and extract text from local and online PDF files

All tools are implemented as async MCP endpoints with proper validation and error handling.

## Quick Start

- [**Video for Env Setup**](https://www.bilibili.com/video/BV1cZKozaEjg)
- [_Overview PDF_](https://github.com/jiahaoxiang2000/tutor/blob/main/Apaper/config.pdf)

### Prerequisites

- Python 3.10 or higher
- UV package manager

### Installation

Install from PyPI (Recommended by `UV`)

```bash
uv pip install all-in-mcp
```

### Integration with MCP Clients Vscode

Add this server to your MCP client configuration. The server runs using stdio transport.

Example configuration for Vscode:

```json .vscode/mcp.json
{
  "servers": {
    "all-in-mcp": {
      "type": "stdio",
      "command": "uv",
      "args": ["run", "all-in-mcp"]
    }
  }
}
```

<details>
<summary>Development</summary>

For development setup and contribution guidelines, see the [Development Guide](docs/development.md).

### Quick Development Setup

```bash
# 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
uv run pytest
```

</details>
