Skip to main content
Glama
jacksenechal

scan-mcp

by jacksenechal

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
INBOX_DIRNoBase directory for job runs and artifacts.scanned_documents/inbox
LOG_LEVELNoPino log level.info
SCAN_MOCKNoMock SANE calls and generate fake TIFFs for testing.false
TIFFCP_BINNoOverride the tiffcp binary path used for multipage assembly.tiffcp
MCP_HTTP_HOSTNoBind address for the HTTP transport.127.0.0.1
MCP_HTTP_PORTNoTCP port for the HTTP transport.3001
SCANIMAGE_BINNoOverride the scanimage binary path.scanimage
IM_CONVERT_BINNoOverride the ImageMagick convert binary path used for image analysis.convert
SCAN_PREFER_BACKENDSNoComma-separated list of preferred scanner backends (e.g., epjitsu,epson2).
SCAN_EXCLUDE_BACKENDSNoComma-separated list of scanner backends to exclude (e.g., v4l).
PERSIST_LAST_USED_DEVICENoPersist and lightly prefer the last used device.true

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}
prompts
{
  "listChanged": true
}
resources
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_devicesA

List connected scanner devices with basic capabilities

get_device_optionsB

Get SANE options for a specific device (sources, resolutions, modes)

start_scan_jobC

Start a scan job; auto-selects device and fills defaults when omitted

get_job_statusC

Get status and artifact counts for a job

cancel_jobC

Cancel a running scan job

list_jobsC

List recent scan jobs from the inbox directory

get_manifestC

Fetch a job manifest JSON by job_id

get_eventsB

Fetch job events JSONL by job_id

Prompts

Interactive templates invoked by user choice

NameDescription
bootstrap_contextInitialize Context

Resources

Contextual data attached and managed by the client

NameDescription
orientation

TDQS

B3.3/5.0

Scored across 8 tools

Disambiguation5/5

Each tool maps to a distinct resource or action: device listing, device options, job start/cancel, job listing/status, manifest, and events. The job-read tools are adjacent but clearly differentiated by their outputs.

Naming Consistency5/5

All names use consistent snake_case with clear verb_object patterns such as list_devices, get_job_status, start_scan_job, and cancel_job. There is no mixed casing or vague verb usage.

Tool Count5/5

Eight tools is well-scoped for scanner discovery, job control, and job inspection. Each tool covers a separate operation with no obvious filler.

Completeness3/5

The surface covers device discovery/options and the core job lifecycle plus manifest/events inspection. However, there is no tool to retrieve or download scanned artifacts, and no explicit option-setting operation, which can leave end-to-end scanning workflows at a dead end.

Maintenance

ActivityMaintained
ResponsivenessUnresponsive