📡 MCP Radar

Jesse-njx/dsh-cowork

READ + WRITE for office documents & notebooks in DeepSeek Harness — doc_read/doc_write tools (xlsx, pdf, docx, pptx, ipynb) plus MCP server and CLI

⭐ 4 stars
⑂ 0 forks
TypeScript
momentum ▲ 8.0
created 2026-08-13
on radar since 2026-08-16
star trend 3 → 4 since 2026-08-16
deepseek-harnessdsh-pluginmcpoffice-documents
View on GitHub ↗

About dsh-cowork

READ + WRITE for office documents and Jupyter notebooks inside DeepSeek Harness — and anywhere else your agent runs.

DSH Cowork adds first-class document handling to coding agents:

Format Read Write (v1) --- --- --- xlsx spreadsheets ✅ bounded, cell-addressed windows ✅ create + edit by cell ref ipynb notebooks ✅ cells + inline outputs ✅ create + edit by cell index pdf ✅ text windows (pages) — (v2: form-fill) docx ✅ paragraphs + word count — (v2: generation) pptx ✅ slides + shape ids — (v2: generation)

DeepSeek Harness's built-in read is UTF-8 text only — it cannot open a spreadsheet, a PDF, a slide deck, or a notebook. Claude Code reads PDFs and notebooks natively; Codex has nothing. DSH Cowork closes that gap as an out-of-tree plugin (no fork, no PR needed — the ecosystem path CONTRIBUTING.md recommends).

Two ideas make "Cowork = READ + WRITE" coherent instead of two separate tools:

1. Stable addresses. docread returns cell refs for xlsx (A1, C12) and shape ids for pptx — docwrite consumes them. Line numbers cannot address binary formats; addresses can. 2. Bounded windows, explicit truncation. Every read is capped (pages / rows / slides / cells / bytes). Silent truncation is the cardinal sin: a Truncated: notice always tells you the window was cut short.

Package What it is --- --- packages/core Pure TS, zero DSH deps: sniff → extract → build, windowing, safety caps packages/dsh DSH bundle: docread / docwrite tools (install with dsh plugin add) packages/mcp MCP server over stdio — for Codex, Claude Code, any MCP client packages/cli doc-read / doc-write binaries + SKIL

From the project README.

Maintaining this server?

Add the radar badge to your README — it shows your project was picked up by MCP Radar and links to this page:

[![On MCP Radar](https://mcp.liqiwa.com/badge.svg)](https://mcp.liqiwa.com/s/Jesse-njx--dsh-cowork.html)

Related MCP servers

Dominic789654/awesome-deepseek-harness

A curated list of plugins, skills, MCP servers, patch/profile layers, orchestrators & UIs for DeepSeek Harness (DSH). Visualization · PPT · Coding · Agents · Loops (auto-research) and more. #dsh

⭐ 151TypeScript
PerryLink/jevcore

TypeSafe Jev for DeepSeek Harness, the Model Context Protocol, and plain Node: typed judgments instead of prose, offline by default.

⭐ 38TypeScript
PerryLink/dsh-mcp-panel

MCP management console for the official DeepSeek Harness MCP client: /mcp command with health diagnostics and pipeline trial calls, a Settings MCP tab with server CRUD (approval-gated writes, automati

⭐ 14TypeScript
oomol-lab/dsh-oomol

OOMOL Connector for DeepSeek Harness—discover connected apps and execute Actions through progressive MCP discovery without exposing provider credentials.

⭐ 11TypeScript
chushixixin/dsh-harness-mcp-server

Expose DeepSeek Harness agent capabilities as an MCP server (brain=Hermes, arms=Harness)

⭐ 9TypeScript
noteflowai/dsh-skills-anywhere

Reuse Agent Skills across DeepSeek Harness and MCP. Check local SKILL.md files in the browser or CI, with parser diagnostics, file hashes and clear exit codes. Try the Hugging Face playground.

⭐ 6TypeScript

📬 Get the weekly radar in your inbox

The top new MCP servers of the week, every Monday. No spam, unsubscribe anytime.