Name | lizeur JSON |
Version |
0.1.3
JSON |
| download |
home_page | None |
Summary | Lizeur is a MCP server to be able to get content from PDFs. |
upload_time | 2025-08-13 17:21:00 |
maintainer | None |
docs_url | None |
author | None |
requires_python | >=3.10 |
license | MIT |
keywords |
ai
mcp
mistral
model-context-protocol
ocr
pdf
|
VCS |
 |
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# Lizeur - PDF Content Extraction MCP Server
Lizeur is a Model Context Protocol (MCP) server that enables AI assistants to extract and read content from PDF documents using Mistral AI's OCR capabilities. It provides a simple interface for converting PDF files to markdown text that can be easily consumed by AI models.
## Features
- **PDF OCR Processing**: Uses Mistral AI's latest OCR model to extract text from PDF documents
- **Intelligent Caching**: Automatically caches processed documents to avoid re-processing
- **Markdown Output**: Returns clean markdown text for easy integration with AI workflows
- **FastMCP Integration**: Built with FastMCP for optimal performance and ease of use
## Prerequisites
- Python 3.10
- UV package manager
- Mistral AI API key
## Installation
### From pypi
```
pip install lizeur
```
And add the following configuration to your `mcp.json` file:
**Note:** Lizeur will be installed in the python3.10 folder. If this folder is not in your system PATH, your IDE may not be able to detect the lizeur binary.
**Solution:** You can add the full path to the lizeur binary in the command field to ensure your IDE can locate it.
```json
{
"mcpServers": {
"lizeur": {
"command": "lizeur",
"env": {
"MISTRAL_API_KEY": "your-mistral-api-key-here",
"CACHE_PATH": "your cache path",
}
}
}
}
```
### Manual
#### 1. Clone the Repository
```bash
git clone https://github.com/SilverBzH/lizeur
cd lizeur
```
#### 2. Create and Activate Virtual Environment
```bash
# Create a virtual environment
uv venv --python 3.10
# Activate the virtual environment
# On macOS/Linux:
source .venv/bin/activate
# On Windows:
# .venv\Scripts\activate
```
#### 3. Install Dependencies and Build
```bash
# Install dependencies
uv sync
# Build the package
uv build
```
#### 4. Install System-Wide
```bash
# Install the package system-wide
uv pip install --system .
```
This will install the `lizeur` command globally on your system.
## Usage
Once configured, the MCP server provides two tools that can be used by AI assistants:
### Available Functions
#### `read_pdf`
- **Function**: `read_pdf`
- **Parameter**: `absolute_path` (string) - The absolute path to the PDF file
- **Returns**: Complete OCR response including all pages with markdown content, bounding boxes, and other OCR metadata
#### `read_pdf_text`
- **Function**: `read_pdf_text`
- **Parameter**: `absolute_path` (string) - The absolute path to the PDF file
- **Returns**: Markdown text content from all pages without the full OCR metadata (simpler for agents to process)
### Example Usage in AI Assistant
The AI assistant can now use the tools like this:
```
What the OP command looks like for this specific controller, here is the doc /path/to/document.pdf
```
The MCP server will:
1. Check if the document is already cached
2. If not cached, upload the PDF to Mistral AI for OCR processing **This will use your MISTRAL API key and cost money**
3. Extract the text and convert it to markdown
4. Cache the result for future use
5. Return the markdown content
**Note**: Use `read_pdf_text` when you only need the text content, or `read_pdf` when you need the complete OCR response with metadata. `read_pdf` can be confusion for some agent if the pdf file is big.
## Development
### Local Development Setup
```bash
# Install in development mode
uv pip install -e .
# Run the server directly
python main.py
```
### Project Structure
- `main.py` - Main server implementation with FastMCP integration
- `pyproject.toml` - Project configuration and dependencies
- `uv.lock` - Locked dependency versions
## Dependencies
- `mcp[cli]>=1.12.4` - Model Context Protocol implementation
- `mistralai>=0.0.10` - Mistral AI Python client
## License
This project is licensed under the MIT License.
## Support
For issues and questions, please refer to the project repository or contact the maintainers.
Raw data
{
"_id": null,
"home_page": null,
"name": "lizeur",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": null,
"keywords": "ai, mcp, mistral, model-context-protocol, ocr, pdf",
"author": null,
"author_email": "Charlie Boutier <charlie.boutier7@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/85/b2/1566c4b497629f3cd29b6d9457801aaba7e549e1dcc5a0343d173d54a4c7/lizeur-0.1.3.tar.gz",
"platform": null,
"description": "# Lizeur - PDF Content Extraction MCP Server\n\nLizeur is a Model Context Protocol (MCP) server that enables AI assistants to extract and read content from PDF documents using Mistral AI's OCR capabilities. It provides a simple interface for converting PDF files to markdown text that can be easily consumed by AI models.\n\n## Features\n\n- **PDF OCR Processing**: Uses Mistral AI's latest OCR model to extract text from PDF documents\n- **Intelligent Caching**: Automatically caches processed documents to avoid re-processing\n- **Markdown Output**: Returns clean markdown text for easy integration with AI workflows\n- **FastMCP Integration**: Built with FastMCP for optimal performance and ease of use\n\n## Prerequisites\n\n- Python 3.10\n- UV package manager\n- Mistral AI API key\n\n## Installation\n\n### From pypi\n```\npip install lizeur\n```\n\nAnd add the following configuration to your `mcp.json` file:\n\n**Note:** Lizeur will be installed in the python3.10 folder. If this folder is not in your system PATH, your IDE may not be able to detect the lizeur binary.\n\n**Solution:** You can add the full path to the lizeur binary in the command field to ensure your IDE can locate it.\n\n```json\n{\n \"mcpServers\": {\n \"lizeur\": {\n \"command\": \"lizeur\",\n \"env\": {\n \"MISTRAL_API_KEY\": \"your-mistral-api-key-here\",\n \"CACHE_PATH\": \"your cache path\",\n }\n }\n }\n}\n```\n\n### Manual\n\n#### 1. Clone the Repository\n\n```bash\ngit clone https://github.com/SilverBzH/lizeur\ncd lizeur\n```\n\n#### 2. Create and Activate Virtual Environment\n\n```bash\n# Create a virtual environment\nuv venv --python 3.10\n\n# Activate the virtual environment\n# On macOS/Linux:\nsource .venv/bin/activate\n\n# On Windows:\n# .venv\\Scripts\\activate\n```\n\n#### 3. Install Dependencies and Build\n\n```bash\n# Install dependencies\nuv sync\n\n# Build the package\nuv build\n```\n\n#### 4. Install System-Wide\n\n```bash\n# Install the package system-wide\nuv pip install --system .\n```\n\nThis will install the `lizeur` command globally on your system.\n\n## Usage\n\nOnce configured, the MCP server provides two tools that can be used by AI assistants:\n\n### Available Functions\n\n#### `read_pdf`\n- **Function**: `read_pdf`\n- **Parameter**: `absolute_path` (string) - The absolute path to the PDF file\n- **Returns**: Complete OCR response including all pages with markdown content, bounding boxes, and other OCR metadata\n\n#### `read_pdf_text`\n- **Function**: `read_pdf_text`\n- **Parameter**: `absolute_path` (string) - The absolute path to the PDF file\n- **Returns**: Markdown text content from all pages without the full OCR metadata (simpler for agents to process)\n\n### Example Usage in AI Assistant\n\nThe AI assistant can now use the tools like this:\n\n```\nWhat the OP command looks like for this specific controller, here is the doc /path/to/document.pdf\n```\n\nThe MCP server will:\n1. Check if the document is already cached\n2. If not cached, upload the PDF to Mistral AI for OCR processing **This will use your MISTRAL API key and cost money**\n3. Extract the text and convert it to markdown\n4. Cache the result for future use\n5. Return the markdown content\n\n**Note**: Use `read_pdf_text` when you only need the text content, or `read_pdf` when you need the complete OCR response with metadata. `read_pdf` can be confusion for some agent if the pdf file is big.\n\n## Development\n\n### Local Development Setup\n\n```bash\n# Install in development mode\nuv pip install -e .\n\n# Run the server directly\npython main.py\n```\n\n### Project Structure\n\n- `main.py` - Main server implementation with FastMCP integration\n- `pyproject.toml` - Project configuration and dependencies\n- `uv.lock` - Locked dependency versions\n\n## Dependencies\n\n- `mcp[cli]>=1.12.4` - Model Context Protocol implementation\n- `mistralai>=0.0.10` - Mistral AI Python client\n\n## License\n\nThis project is licensed under the MIT License.\n\n## Support\n\nFor issues and questions, please refer to the project repository or contact the maintainers.\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Lizeur is a MCP server to be able to get content from PDFs.",
"version": "0.1.3",
"project_urls": {
"Homepage": "https://github.com/SilverBzH/lizeur",
"Issues": "https://github.com/SilverBzH/lizeur/issues",
"Repository": "https://github.com/SilverBzH/lizeur"
},
"split_keywords": [
"ai",
" mcp",
" mistral",
" model-context-protocol",
" ocr",
" pdf"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "7c9aa29f9f5a4daa5b843df7f99b05dd72f619d92ef970fb78c1786f04a90d88",
"md5": "1f907349bac98aa1feaddf6c1ccd00da",
"sha256": "4c867653c62ca029f54dc512b791e0783a545191459a7de56ca4bd90bd6553e7"
},
"downloads": -1,
"filename": "lizeur-0.1.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "1f907349bac98aa1feaddf6c1ccd00da",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 43485,
"upload_time": "2025-08-13T17:20:59",
"upload_time_iso_8601": "2025-08-13T17:20:59.307299Z",
"url": "https://files.pythonhosted.org/packages/7c/9a/a29f9f5a4daa5b843df7f99b05dd72f619d92ef970fb78c1786f04a90d88/lizeur-0.1.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "85b21566c4b497629f3cd29b6d9457801aaba7e549e1dcc5a0343d173d54a4c7",
"md5": "cb3a03a2a50a4009cd77eae491169c75",
"sha256": "8604456cd5b08e11d34f46c25cec2696463cedd194090b2d334cb8ab049ba1bd"
},
"downloads": -1,
"filename": "lizeur-0.1.3.tar.gz",
"has_sig": false,
"md5_digest": "cb3a03a2a50a4009cd77eae491169c75",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 37204,
"upload_time": "2025-08-13T17:21:00",
"upload_time_iso_8601": "2025-08-13T17:21:00.565090Z",
"url": "https://files.pythonhosted.org/packages/85/b2/1566c4b497629f3cd29b6d9457801aaba7e549e1dcc5a0343d173d54a4c7/lizeur-0.1.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-13 17:21:00",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "SilverBzH",
"github_project": "lizeur",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "lizeur"
}