Skip to content

Document Processing Standard Tools

doc-processing-std-tools is a library of MCP tool servers that give an AI agent practical capabilities: reading and editing files, searching the web, reading documents and images, running code, keeping memory, and using Agent Skills.

It also has two optional servers, off by default: a browser and a desktop the agent can operate.

It is the standard tool library for the Agent class in doc-processing-toolkit, but every server is an ordinary FastMCP server, so any MCP-compatible host can use it.

Designed and built by Rounak Zoeb as the tool layer for the doc-processing-toolkit agent framework.

Source code

The source code is in a private repository. These pages document every tool, setting and API. To review the code, message Rounak Zoeb on LinkedIn with your GitHub username.

Which version this site describes

These pages describe release 0.6.1 (tag v0.6.1). What changed since 0.5.0 is marked new in 0.6.0 or new in 0.6.1, with an "Upgrading from …" note where you need to act. The Changelog lists every change.

The servers at a glance

Server Import Tools What it gives the agent Extra to install
File System file_system_server 12 Read, write, edit, patch, move and search files —
Web web_search_server 4 Web search (Tavily, Serper, Brave), page and image fetching with SSRF protection, citations [web], optional [extract]
Memory memory_server 11 Persistent key-value and file-based memory —
Documents document_processing_server 13 PDF, Word, Excel, PowerPoint and image reading; OCR; page rendering for vision; conversion with LibreOffice [docs], [ocr]
Code Execution code_execution_server 2 A shell session that keeps its working directory —
Screenshot screenshot_server 2 Screen capture of the machine the server runs on [screenshot]
Image Tools image_tools_server 7 Crop, resize, zoom, rotate, annotate and convert images Pillow ([docs] or [screenshot])
Skills skills_server 5 Discover, load and run Agent Skills —
Browser browser_server 19 or 28 (18 or 27 browser_* tools, plus fetch_webpage_rendered) Optional, off by default: a Chromium browser driven through browser_* tools, and rendered page fetching [browser] + Chromium
Computer (Desktop) computer_server 17 Optional, off by default: a desktop operated by screenshot, mouse and keyboard through computer_* tools — its own virtual display, or the user's real screen [computer] + Xvfb (virtual)

The eight always-on servers expose 56 tools. The optional servers add to the composed launcher only when enabled:

Composed launcher Tools
The eight always-on servers 56
With the browser server (DPTTOOLS_ENABLE_BROWSER=true) 75 (core profile) or 84 (full)
With the computer server (DPTTOOLS_ENABLE_COMPUTER=true) 73
With both 92 (core) or 101 (full)

Every tool name is unique across the servers, so they can be combined freely.

Two ways to run them

  • In-process. Import a server and hand it to the toolkit: Agent(tools=[file_system_server]). The tools run inside your application's process.
  • Out-of-process. python -m doc_processing_std_tools composes all eight servers, plus the optional ones you enable, into one MCP endpoint over stdio (default) or HTTP. Any MCP client can connect to it.

Architecture explains both and when to choose which.

Start here

  • Quickstart — install, attach to an agent, run the launcher.
  • Architecture — how the servers are built, composed and secured.
  • Compatibility — Python, mcp and toolkit versions.
  • The server pages, listed above, for each server's tools, settings and pitfalls.

Recipes

Worked tasks, each checked against the code: steps, what to validate, and the tests behind it.

With doc-processing-toolkit

The toolkit's documentation covers the agent side of the same integration:

For coding agents

Two plain-text files at the site root are generated from this site's navigation:

Source code

The source code is in a private repository. These pages document every tool, setting and API. To review the code, message Rounak Zoeb on LinkedIn with your GitHub username.