Skip to content
Conduit

mcp server

carrot-mcp

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

CRThu/carrot-mcpcommunitylistedunreviewed

Set up

Runs on your computer. Pick your agent and operating system.

Before you start

  • uv (`curl -LsSf https://astral.sh/uv/install.sh | sh`)
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "carrot-mcp": {
      "command": "uvx",
      "args": [
        "carrot-mcp"
      ]
    }
  }
}

same format Cursor, GitHub Copilot CLI, Junie, JetBrains AI Assistant, Augment (Auggie CLI), Factory Droid, Kiro, Devin CLI +12

Values in angle brackets are placeholders. Restart Claude Desktop after editing its config.Claude Desktop docs

README

synced Oct 21, 2026

Carrot MCP

License: Apache-2.0

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

Installation

uvx (no install, always latest)

Run directly without installing. Always fetches latest version.

# Run any server directly
uvx carrot-mcp-pdf@latest
uvx carrot-mcp-io@latest
uvx carrot-mcp-nfc@latest
uvx carrot-mcp-office@latest
uvx carrot-mcp-sys@latest

# Run via meta package
uvx carrot-mcp run pdf

uv tool (recommended)

Persistent install with automatic PATH setup. Upgrades cleanly.

# Install all
uv tool install carrot-mcp

# Install specific servers
uv tool install carrot-mcp[pdf]
uv tool install carrot-mcp[io]
uv tool install carrot-mcp[nfc]
uv tool install carrot-mcp[office]
uv tool install carrot-mcp[sys]

# Or install sub-packages directly
uv tool install carrot-mcp-pdf
uv tool install carrot-mcp-io
uv tool install carrot-mcp-nfc
uv tool install carrot-mcp-office
uv tool install carrot-mcp-sys

# Upgrade
uv tool upgrade carrot-mcp

# Uninstall
uv tool uninstall carrot-mcp

pip

Classic Python install. Requires manual PATH setup.

# Install all
pip install carrot-mcp

# Install specific servers
pip install carrot-mcp[pdf]
pip install carrot-mcp[io]
pip install carrot-mcp[nfc]
pip install carrot-mcp[office]
pip install carrot-mcp[sys]

# Or install sub-packages directly
pip install carrot-mcp-pdf
pip install carrot-mcp-io
pip install carrot-mcp-nfc
pip install carrot-mcp-office
pip install carrot-mcp-sys

# Upgrade
pip install --upgrade carrot-mcp

# Uninstall
pip uninstall carrot-mcp

Quick Start

uvx (no install, always latest)

# Run a specific server directly
uvx carrot-mcp-pdf@latest
uvx carrot-mcp-io@latest
uvx carrot-mcp-nfc@latest
uvx carrot-mcp-office@latest
uvx carrot-mcp-sys@latest

# List available servers
uvx carrot-mcp list

# Add all carrot servers to supported agents
uvx carrot-mcp mcp add

# Force uvx mode for agent configs
uvx carrot-mcp mcp add --uvx

# Force local mode
uvx carrot-mcp mcp add --local

# Remove all carrot servers from agents
uvx carrot-mcp mcp remove

CLI (after uv tool or pip install)

# List all available servers
carrot-mcp list

# Run a specific server
carrot-mcp run pdf
carrot-mcp run io
carrot-mcp run nfc
carrot-mcp run office
carrot-mcp run sys

# Add all carrot servers to supported agents
carrot-mcp mcp add

# Add to specific agent(s)
carrot-mcp mcp add gemini
carrot-mcp mcp add claude mimocode opencode gemini

# Force uvx mode (auto-update)
carrot-mcp mcp add --uvx

# Force local mode
carrot-mcp mcp add --local

# Remove all carrot servers from agents
carrot-mcp mcp remove

# Remove from specific agent(s)
carrot-mcp mcp remove claude

# Run with uv
uv run carrot-mcp run office

Python module

python -m carrot_mcp_pdf
python -m carrot_mcp_io
python -m carrot_mcp_nfc
python -m carrot_mcp_office
python -m carrot_mcp_sys

Available Servers

ServerPackageCategoryDescription
PDFcarrot-mcp-pdfDocumentPDF processing
Officecarrot-mcp-officeDocumentExcel & Word automation with auto-backup
IOcarrot-mcp-ioHardwareSerial, TCP, UDP communication
NFCcarrot-mcp-nfcHardwareNFC reader (PN532, CLRC663)
SYScarrot-mcp-sysSystemScreenshot capture for multimodal analysis

Document Servers

PDF MCP Tools

ToolDescription
versionGet server version info
get_tocGet table of contents with page ranges
get_pagesConvert specific pages to markdown (supports multimodal/OCR/force_ocr)
grepSearch for exact substring in PDF pages (case-insensitive, supports regex)

Environment variables:

VariableDescription
CARROT_MCP_MODELVision model name (required if using OCR)
CARROT_MCP_APIKEYAPI key for the vision model
CARROT_MCP_PROXYHTTP proxy URL for API calls
CARROT_MCP_FORCE_MULTIMODALtrue = always return images; false = always run OCR

Office MCP Tools

ToolDescription
versionGet server version info and backup configuration

Excel Tools

ToolDescription
workbook_metadataGet workbook metadata (sheet names, properties)
workbook_grepSearch for exact substring in cell values (case-insensitive, supports regex)
create_sheetCreate a new sheet (creates workbook if needed)
rename_sheetRename a sheet
delete_sheetDelete a sheet
insert_rowsInsert rows into a sheet
delete_rowsDelete rows from a sheet
insert_columnsInsert columns into a sheet
delete_columnsDelete columns from a sheet
read_rangeRead cell values from a range
write_rangeWrite a 2D array to a range (supports formulas)
copy_rangeCopy a range to another location
delete_rangeClear cell contents in a range
read_chartRead chart information from a sheet
write_chartCreate a chart (bar, line, pie, scatter)
format_rangeFormat cells (font, color, alignment, merge/unmerge)

Word Tools

ToolDescription
inspectInspect document structure (paragraphs, tables, images)
get_outlineGet document outline as tree + flat list
get_contentGet paragraphs, tables, and images by section or paragraph indices
get_tableRead table content as 2D array
grepSearch for exact substring in paragraphs (case-insensitive, supports regex)
insert_paraInsert a paragraph
modify_paraModify paragraph text
format_paraFormat a paragraph (style, alignment, font)
delete_paraDelete a paragraph
insert_tableInsert a table with optional data
modify_tableModify a table cell
format_tableApply a table style
delete_tableDelete a table
insert_imageInsert an image
delete_imageDelete an inline image

Backup Tools

ToolDescription
backup_historyList all backup versions of a file
backup_restoreRestore 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

Environment variables:

VariableDescription
CARROT_MCP_BACKUP_MAX_VERSIONSMax backup versions per file (default: 100)
CARROT_MCP_BACKUP_MAX_AGE_DAYSDays before backup expiry (default: 14)
CARROT_MCP_BACKUP_ROOTCustom backup directory

Hardware Servers

IO MCP Tools

ToolDescription
versionGet server version info
list_transportsList available transport types and serial ports
openOpen a connection (serial, tcp, udp)
closeClose a connection
readBlocking read from buffer with timeout
recvNon-blocking read from buffer
writeWrite data (hex or ascii with escape support)
scriptExecute a sequence of I/O operations (write/read/wait/flush)
historyGet operation history for a connection

NFC MCP Tools

ToolDescription
versionGet server version info
list_readersList available reader types and transports
connectConnect to NFC reader
disconnectDisconnect from reader
findFind and activate an NFC card
transceiveRaw frame exchange with bit-level control
reqaISO14443-A REQA
wupaISO14443-A WUPA
haltISO14443-A HALT
selectISO14443-A SELECT
anticollISO14443-A anti-collision
field_onTurn on RF field
field_offTurn off RF field
scriptExecute a sequence of NFC operations
trace_getGet trace log entries
trace_clearClear trace log buffer

System MCP Tools

ToolDescription
versionGet server version info
list_monitorsList all monitors with coordinates and resolution
screenshotCapture screenshot(s) - supports monitor index, region coordinates, or all monitors

MCP Configuration

Auto-config (recommended)

carrot-mcp mcp add

This adds all servers to supported agents (claude, opencode, mimocode). Auto-detects whether to use carrot-mcp run or uvx based on what's installed. Use --uvx or --local to override.

Manual config

Claude Desktop (~/.claude.json):

{
  "mcpServers": {
    "carrot-pdf": {
      "command": "carrot-mcp",
      "args": ["run", "pdf"]
    },
    "carrot-office": {
      "command": "carrot-mcp",
      "args": ["run", "office"]
    },
    "carrot-io": {
      "command": "carrot-mcp",
      "args": ["run", "io"]
    },
    "carrot-nfc": {
      "command": "carrot-mcp",
      "args": ["run", "nfc"]
    },
    "carrot-sys": {
      "command": "carrot-mcp",
      "args": ["run", "sys"]
    }
  }
}

OpenCode / MiMoCode (~/.config/opencode/opencode.jsonc or ~/.config/mimocode/mimocode.jsonc):

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "carrot-pdf": {
      "type": "local",
      "command": ["carrot-mcp", "run", "pdf"],
      "enabled": true,
      "environment": {}
    },
    "carrot-office": {
      "type": "local",
      "command": ["carrot-mcp", "run", "office"],
      "enabled": true,
      "environment": {}
    },
    "carrot-io": {
      "type": "local",
      "command": ["carrot-mcp", "run", "io"],
      "enabled": true,
      "environment": {}
    },
    "carrot-nfc": {
      "type": "local",
      "command": ["carrot-mcp", "run", "nfc"],
      "enabled": true,
      "environment": {}
    },
    "carrot-sys": {
      "type": "local",
      "command": ["carrot-mcp", "run", "sys"],
      "enabled": true,
      "environment": {}
    }
  }
}

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/pdf/ -v
uv run pytest tests/office/ -v
uv run pytest tests/io/ -v
uv run pytest tests/nfc/ -v
uv run pytest tests/sys/ -v

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

License

Apache License 2.0 - see LICENSE for details.

↑↓ navigate openesc close