DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

Ppocr — DeepSeek Harness 插件(DSH Plugin)
DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录
← Plugins
P

dsh-ppocr

Ppocr

DeepSeek Harness 插件:本地 OCR。它挂载捆绑的 PP-OCRv6 Medium stdio MCP 服务器(基于 ONNX Runtime 的 PaddleOCR/PaddleX,仅使用 CPU),并提供 mcp__ppocr__ocr_image 和 mcp__ppocr__ocr_pdf,因此无需将图像和 PDF 发送到任何地方即可读取。

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add github:bauerelizabeth07139/opencode-ppocr-mcp#3a0c6e2f17aedff5f23c624db87552237da2f461
README兼容性版本

兼容性与来源证明

Ppocr 以 dsh-ppocr 发布,当前版本为 0.1.0。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
any
发布来源
github
Registry 更新时间
2026/10/4

版本

0.1.0stable
2026/10/4

相关插件

正在加载相关插件…

最新版
0.1.0
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
未提供
文件数
未提供
Surface
any
许可证
MIT
发布源
github
GitHub
★ 0
周下载
0
最近提交
2026/10/8
查看源码 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题

相关插件

继续浏览 vision-media 分类下经过校验的插件。

Modlens@liustack/modlens面向仅支持文本的 LLM 的插件视觉能力,由免费的 Antigravity CLI 提供支持Tool Describe Image@linxin666/dsh-tool-describe-image面向模型的 describe_image 工具,用于 dsh Web GUI:通过在兼容 OpenAI 的端点调用视觉语言模型,为文本模型提供图像理解能力,以描述一张图像(本地路径、http(s) URL 或附件引用)。可热插拔 —Vision Toolkit@anionex/dsh-vision-toolkit面向 Harness 原生集成的 DeepSeek 与 agent-vision-toolkit:图像问答、OCR、定位、UI 还原、像素差异、Artifacts 和 Web UI。Deepseek Ivideodeepseek-ivideoiPolloWork HyperFrames Video Studio,以及 27 个可编辑视频模板,以原生 DeepSeek Harness 对话视图呈现。

README

opencode-ppocr-mcp

Local OCR, no cloud. PP-OCRv6 Medium detection + recognition on ONNX Runtime (CPU), for images and multi-page PDFs.

本地 OCR:PP-OCRv6 Medium 检测+识别,ONNX Runtime CPU 推理,可识别图片与多页 PDF。

As a DeepSeek Harness plugin: the MCP server ships inside the bundle, so installing one plugin is the whole setup — no mcpServers file to hand-edit.

Install

DeepSeek Harness Desktop — open Plugins in the sidebar, choose Add plugin, and enter:

https://github.com/bauerelizabeth07139/opencode-ppocr-mcp

Then switch the new dsh-ppocr bundle on. The Desktop app boots the reserved desktop profile, so that is where it has to be enabled.

dsh CLI — install it into the profile you actually boot:

dsh plugin --profile web add bauerelizabeth07139/opencode-ppocr-mcp

No git on the machine? pnpm resolves a git shorthand with git ls-remote, which fails with 'git' is not recognized when git is missing. Use the tarball instead — that path is plain HTTPS:

dsh plugin --profile web add https://codeload.github.com/bauerelizabeth07139/opencode-ppocr-mcp/tar.gz/main

The same address works in the Desktop Add plugin dialog. Replace main with a commit SHA to pin an exact revision (/tar.gz/<sha>).

Uninstall with dsh plugin --profile web remove dsh-ppocr.

Requirements

  • Python ≥ 3.8 on PATH, or pointed at with python.

  • The OCR stack in that interpreter — this is the heavy part:

    pip install paddlepaddle==3.0.0 paddleocr==3.7.0 onnxruntime Pillow
    

    requirements.txt in this repository pins exactly those.

  • Disk and network for the first run: the detection and recognition models (~170 MB) download into ~/.paddlex/official_models/ the first time a tool is called. CPU only; no GPU and no display.

Tools

The server registers 2 tool(s). DSH namespaces them automatically, so the model calls them as mcp__ppocr__<tool>:

ToolWhat it does
ocr_imageRuns detection + recognition on one image and returns the text. Parameter: image_path (required).
ocr_pdfRenders and recognises a PDF page by page. Parameters: pdf_path (required), start_page (default 1), end_page (optional).

Configuration

KeyEnvironment variableDefaultMeaning
python—discoveredinterpreter that runs the server — must have the OCR stack
toolCallTimeoutMs—600000DSH's per-call budget; the first call also downloads the models
env—{}raw environment passthrough (the server reads none)

Every field is optional and lives in the loader row. For example, in cordis.patch.yml:

- id: dsh-ppocr
  name: 'dsh-ppocr'
  config:
    python: 'C:\ocr-venv\Scripts\python.exe'
    toolCallTimeoutMs: 900000

Notes

  • The plugin mounts; the interpreter must carry the stack. The server imports PaddleOCR lazily, when a tool is called, so a missing dependency shows up as a tool error naming the import rather than a plugin that refuses to load. Point python at an interpreter that has paddlepaddle, paddleocr, onnxruntime and Pillow.
  • The first call is slow. Detection and recognition models (~170 MB) download into ~/.paddlex/official_models/ on first use; the 600 s per-call budget covers it.
  • end_page must be a number. The server does not coerce it, so passing a string makes its comparison fail — pass an integer.

How it is mounted

index.js resolves a Python interpreter (the configured python, then python3/python on PATH), hands the server its argv and working directory, and mounts it as a stdio MCP server through @deepseek-ai/dsh-mcp-client with failOnStartupError: true, so a server that cannot start is a visible error rather than a silently missing tool.

Credentials are forwarded explicitly. The harness scrubs credential-shaped variables (KEY, TOKEN, SECRET, PASSWORD) out of the environment a child process inherits, so config.apiKey — falling back to the variable the server documents — is written into the child's environment by the plugin itself. That means both of these work:

config:
  apiKey: '<your key>'
export the API key variable='<your key>'   # picked up at load time

Development

No build step and no runtime dependencies — @deepseek-ai/cordis and @deepseek-ai/dsh-mcp-client are peers supplied by the Harness.

npm test    # node >= 22: manifest checks + the stdio mount, both Harness-free

The mount test loads index.js with @deepseek-ai/dsh-mcp-client stubbed and asserts the exact stdio configuration the plugin produces, including the credential forwarding above.

Repository layout

PathPurpose
index.jsthe DSH plugin: resolves the interpreter and mounts the server
cordis.patch.ymlthe loader row that activates the plugin
locale/{en,zh}.jsoncard title and description for the plugin lists
assets/icon.svgcard artwork
test/npm test: manifest composition and the mount contract
server.pythe MCP server, unchanged
requirements.txtthe OCR stack, pinned

Other hosts (unchanged)

The server is a plain stdio MCP server and still works anywhere else. The repository's original README is kept verbatim as README.opencode.md, and the launch stanza from it keeps working:

{
  "mcp": {
    "ppocr": {
      "type": "local",
      "command": ["python", "path/to/server.py"],
      "enabled": true
    }
  }
}

License

MIT — the repository's README declared MIT but shipped no licence file; this plugin's release adds one.