scan-mcp is an MCP server that provides scanner capture, document batching, and multipage assembly capabilities to AI agents. It interfaces directly with local Linux SANE backends through the scanimage utility, allowing AI clients such as Claude Desktop and Windsurf to trigger and manage physical document scanning hardware. Developers and office workers handling automated document processing pipelines use it to ingest physical records without manual scanning software. The server enables agents to discover attached scanning hardware, query device capabilities, and execute scanning jobs with custom parameters such as duplex scanning, ADF feeder selection, resolution changes, and page sizing. It automatically handles multi-page document assembly into TIFF files, organizes raw scans and manifests in local inbox directories, and supports carrier sheet cropping. Communication occurs over local standard input/output by default for privacy or through a streamable HTTP transport using Server-Sent Events for networked scanner setups.
Category: Design, Media & Creative
Tags: document-capture, imaging, pdf, scanning
scanimage), and TIFF tools (tiffcp or ImageMagick convert). 2. Add the server configuration to your MCP client's configuration file (such as Claude Desktop): json { "mcpServers": { "scan": { "command": "npx", "args": [ "-y", "scan-mcp" ], "env": { "INBOX_DIR": "~/Documents/scanned_documents/inbox" } } } } 3. Alternatively, run the HTTP transport for network setups using the command scan-mcp --http. 4. Restart your MCP client to start using the scanner tools.Part of MCP Servers
You can run scan-mcp directly using npx by specifying scan-mcp in your client configuration args. Your host system must be running Linux with Node 22 or higher, along with SANE command-line utilities like scanimage and multipage TIFF assembly tools like tiffcp or ImageMagick convert.
The server exposes tools to discover connected scanners, retrieve device options, run scan jobs with custom DPI and color modes, monitor job progress, cancel tasks, inspect scan manifests, and assemble multi-page TIFF artifacts into designated inbox directories.
scan-mcp works with any MCP-compliant client that supports local stdio execution or streamable HTTP transports with Server-Sent Events, including Claude Desktop, Cline, and Windsurf.
Not necessarily on the same machine as the client. While it defaults to stdio on a single Linux machine, you can run scan-mcp on a network machine connected to a scanner using the --http flag and connect to it remotely over your local area network.