Overview
Pdf2md is a high-performance service that converts PDF files into structured Markdown format, utilizing the MinerU API for efficient processing.
To use Pdf2md, clone the repository, set up a virtual environment, install dependencies, configure environment variables, and start the service using command line arguments.
- Format Conversion: Converts PDF files to Markdown format. - Multiple Sources: Supports local files and URL links. - Intelligent Processing: Automatically selects the best processing method. - Batch Processing: Allows for efficient conversion of multiple files. - OCR Support: Optional OCR to enhance recognition rates. - MCP Integration: Works seamlessly with LLM clients like Claude Desktop.
- Converting academic papers from PDF to Markdown for easier editing.
- Batch processing of multiple PDF documents for documentation purposes.
- Integrating with other tools for automated content extraction and formatting.
Add to your AI client
Use these steps to connect Pdf2md in Cursor, Claude, VS Code, and other MCP-compatible apps. The same JSON appears in the Use with menu above for one-click copy.
Cursor
Add this to your .cursor/mcp.json file in your project root, then restart Cursor.
.cursor/mcp.json
{
"mcpServers": {
"pdf2md-futureunreal": {
"command": "uv",
"args": [
"--directory",
"C:\\path\\to\\mcp-pdf2md",
"run",
"pdf2md",
"--output-dir",
"C:\\path\\to\\output"
],
"env": {
"MINERU_API_KEY": "your_api_key_here"
}
}
}
}Claude Desktop
Add this server entry to the mcpServers object in your Claude Desktop config, then restart the app.
~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)
{
"mcpServers": {
"pdf2md-futureunreal": {
"command": "uv",
"args": [
"--directory",
"C:\\path\\to\\mcp-pdf2md",
"run",
"pdf2md",
"--output-dir",
"C:\\path\\to\\output"
],
"env": {
"MINERU_API_KEY": "your_api_key_here"
}
}
}
}Claude Code
Add this to your project's .mcp.json file. Claude Code will detect it automatically.
.mcp.json (project root)
{
"mcpServers": {
"pdf2md-futureunreal": {
"command": "uv",
"args": [
"--directory",
"C:\\path\\to\\mcp-pdf2md",
"run",
"pdf2md",
"--output-dir",
"C:\\path\\to\\output"
],
"env": {
"MINERU_API_KEY": "your_api_key_here"
}
}
}
}VS Code (Copilot)
Add this to your .vscode/mcp.json file. Requires the GitHub Copilot extension with MCP support enabled.
.vscode/mcp.json
{
"servers": {
"pdf2md-futureunreal": {
"type": "stdio",
"command": "uv",
"args": [
"--directory",
"C:\\path\\to\\mcp-pdf2md",
"run",
"pdf2md",
"--output-dir",
"C:\\path\\to\\output"
],
"env": {
"MINERU_API_KEY": "your_api_key_here"
}
}
}
}Windsurf
Add this to your Windsurf MCP config file, then restart Windsurf.
~/.codeium/windsurf/mcp_config.json
{
"mcpServers": {
"pdf2md-futureunreal": {
"command": "uv",
"args": [
"--directory",
"C:\\path\\to\\mcp-pdf2md",
"run",
"pdf2md",
"--output-dir",
"C:\\path\\to\\output"
],
"env": {
"MINERU_API_KEY": "your_api_key_here"
}
}
}
}Cline
Open Cline settings, navigate to MCP Servers, and add this server configuration.
Cline MCP Settings (via UI)
{
"mcpServers": {
"pdf2md-futureunreal": {
"command": "uv",
"args": [
"--directory",
"C:\\path\\to\\mcp-pdf2md",
"run",
"pdf2md",
"--output-dir",
"C:\\path\\to\\output"
],
"env": {
"MINERU_API_KEY": "your_api_key_here"
}
}
}
}FAQ
What is required to run Pdf2md?
You need Python 3.10+ and an API key from MinerU.
Can Pdf2md process multiple files at once?
Yes! It supports batch processing for efficient handling of large volumes of PDFs.
Is there any cost associated with using Pdf2md?
The service is free to use, but you need to obtain an API key from MinerU, which may have its own terms.