29 September 2025
scan-mcp: an MCP server for document scanning
Cross-posted on: LinkedIn
I recently published an MCP server that enables agents to use document or image scanners. This is part of a larger project to support digital “clutter clearing” and information organization. I’ll be publishing another server soon that handles OCR and filesystem organization tasks. Together this will allow your favorite local agent to help you get on top of digitial and paper clutter!
How many of us have boxes of paper that needs to be scanned, vetted for usefulness, and meaningfully organized? How many businesses have storage rooms full of old documents? And how many of us relish those long hours of scanning documents, converting them to the right format, naming them something meaningful, and putting them into a useful organizational scheme? Yeah, not me… maybe that’s someone’s thing, but I have been deferring that work for years because I find it unpleasant and not a great use of my time.
This is a great use case for local agents. LLMs are great at inferring structure from unstructured document sources.
- First step: scan your paper documents. That’s where the scan-mcp server comes in. This simple server is dedicated to just doing one thing well - enabling an agent to digitize the paper. It generates a multi-page TIFF file ready for further processing.
- Next up: A document processing server that performs OCR, naming, and metadata extraction.
- Finally: An agentic system that wraps those capabilities, together with filesystem management and structured workflows, to provide a full de-cluttering system for your documents in storage, or existing digitized materials that need better organization, metadata, and consistency.
On the technical side, it’s been implemented with two MCP transports: stdio and HTTP. This allows it to be run locally or remotely. While most people may want to run it locally for simplicity, I added the HTTP option for my own use case, which is having the scanner attached to a small Debian box and operating it remotely over the LAN. (This essentially turns any USB scanner into a wifi one, which is cool.) My local agent can control the scanner, process the documents, and organize them onto my NAS, without needing to be physically connected.
Let me know if you try it. I’d love to hear how it works for you and if you have other use cases it should support.