Skip to main content

Carrot MCP - A collection of MCP servers

Project description

Carrot MCP

License: Apache-2.0

A collection of MCP (Model Context Protocol) servers for various hardware and data interfaces.

Installation

pip

pip install carrot-mcp

This installs all MCP servers (pdf, serial, nfc, office) by default.

uv

uv pip install carrot-mcp

Install specific servers only

# pip or uv
pip install carrot-mcp[pdf]
pip install carrot-mcp[serial]
pip install carrot-mcp[nfc]
pip install carrot-mcp[office]

Or install sub-packages directly

pip install carrot-mcp-pdf
pip install carrot-mcp-serial
pip install carrot-mcp-nfc
pip install carrot-mcp-office

Quick Start

uvx (recommended)

# Run a specific server directly (no install needed)
uvx carrot-mcp-pdf@latest
uvx carrot-mcp-serial@latest
uvx carrot-mcp-nfc@latest
uvx carrot-mcp-office@latest

CLI

# List all available servers
carrot-mcp list

# Run a specific server
carrot-mcp pdf
carrot-mcp serial
carrot-mcp nfc
carrot-mcp office

# Run with uv
uv run carrot-mcp office

Python module

python -m carrot_mcp_pdf
python -m carrot_mcp_serial
python -m carrot_mcp_nfc
python -m carrot_mcp_office

Available Servers

Server Package Category Description
PDF carrot-mcp-pdf Document PDF processing
Office carrot-mcp-office Document Excel & Word automation with auto-backup
Serial carrot-mcp-serial Hardware Serial port communication
NFC carrot-mcp-nfc Hardware NFC reader (PN532, CLRC663)

Document Servers

PDF MCP Tools

Tool Description
version Get server version info

Office MCP Tools

Excel Tools

Tool Description
workbook_metadata Get workbook metadata (sheet names, properties)
workbook_search Search for values in a sheet
create_sheet Create a new sheet (creates workbook if needed)
rename_sheet Rename a sheet
delete_sheet Delete a sheet
insert_rows Insert rows into a sheet
delete_rows Delete rows from a sheet
insert_columns Insert columns into a sheet
delete_columns Delete columns from a sheet
read_range Read cell values from a range
write_range Write a 2D array to a range (supports formulas)
copy_range Copy a range to another location
delete_range Clear cell contents in a range
read_chart Read chart information from a sheet
write_chart Create a chart (bar, line, pie, scatter)
format_range Format cells (font, color, alignment, merge/unmerge)

Word Tools

Tool Description
inspect Inspect document structure (paragraphs, tables, images)
insert_para Insert a paragraph
modify_para Modify paragraph text
format_para Format a paragraph (style, alignment, font)
delete_para Delete a paragraph
insert_table Insert a table with optional data
modify_table Modify a table cell
format_table Apply a table style
delete_table Delete a table
insert_image Insert an image
delete_image Delete an inline image

Backup Tools

Tool Description
backup_history List all backup versions of a file
backup_restore Restore a file to a specific backup version

Features:

  • Auto-backup: All modifications are automatically versioned
  • Legacy format support: .doc.docx, .xls.xlsx via win32com (Windows)
  • 100 version limit with 14-day expiry per file

Hardware Servers

Serial MCP Tools

Tool Description
version Get server version info
list_ports List available serial ports
open Open a serial port (baudrate, parity, timeouts, buffer_size)
close Close a serial port
read Blocking read from buffer with timeout
recv Non-blocking read from buffer
write Write data (hex or ascii with escape support)
script Execute a sequence of serial operations (write/read/wait/flush)
history Get operation history for a port

NFC MCP Tools

Tool Description
version Get server version info
list_readers List available reader types and transports
connect Connect to NFC reader
disconnect Disconnect from reader
find Find and activate an NFC card
transceive Raw frame exchange with bit-level control
exchange Data exchange with auto CRC
reqa ISO14443-A REQA
wupa ISO14443-A WUPA
halt ISO14443-A HALT
select ISO14443-A SELECT
anticoll ISO14443-A anti-collision
field_on Turn on RF field
field_off Turn off RF field
script Execute a sequence of NFC operations
trace_get Get trace log entries
trace_clear Clear trace log buffer

MCP Configuration

Add to your MCP client config (e.g., Claude Desktop):

{
  "mcpServers": {
    "carrot-pdf": {
      "command": "uvx",
      "args": ["carrot-mcp-pdf@latest"]
    },
    "carrot-office": {
      "command": "uvx",
      "args": ["carrot-mcp-office@latest"]
    },
    "carrot-serial": {
      "command": "uvx",
      "args": ["carrot-mcp-serial@latest"]
    },
    "carrot-nfc": {
      "command": "uvx",
      "args": ["carrot-mcp-nfc@latest"]
    }
  }
}

Development

# Clone and setup
git clone <repo-url>
cd carrot-mcp
uv sync --all-packages

# Run tests
uv run pytest

# Run tests for specific server
uv run pytest tests/office/ -v
uv run pytest tests/serial/ -v

# Bump version and release
bump.bat                        # interactive
bump.bat carrot-mcp-office      # direct package

License

Apache License 2.0 - see LICENSE for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

carrot_mcp-0.0.4.tar.gz (85.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

carrot_mcp-0.0.4-py3-none-any.whl (8.4 kB view details)

Uploaded Python 3

File details

Details for the file carrot_mcp-0.0.4.tar.gz.

File metadata

  • Download URL: carrot_mcp-0.0.4.tar.gz
  • Upload date:
  • Size: 85.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for carrot_mcp-0.0.4.tar.gz
Algorithm Hash digest
SHA256 94b1e12f28412d6937d724ae1ee55024e0f2ca3b75916220204970119a30a9ad
MD5 f15dbf2baace2b8b8d9180566ac87bb5
BLAKE2b-256 693701e6e3b2aeae51ae94ea07b18e6179d13faa73f2a0f626ff9f49f860f58a

See more details on using hashes here.

File details

Details for the file carrot_mcp-0.0.4-py3-none-any.whl.

File metadata

  • Download URL: carrot_mcp-0.0.4-py3-none-any.whl
  • Upload date:
  • Size: 8.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for carrot_mcp-0.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 fd299f415eed2a449e865efbf6885cd211234b7debcc837d234fc2c2073d66e6
MD5 b228a43bfda492232bee09da367da528
BLAKE2b-256 48f44394b186000eeb2711b514434cb686ff4c04fbd3d5c44a9e4d37de601e21

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page