Officekit Opencode
Document tools (PowerPoint now, more later) for OpenCode — single-binary MCP server, presentations skill, /deck command
0
575
575 in 7 days
37.0
Multi-signal model
3 days ago
2026-10-17
Install and configure
opencode.jsonWrites to this project's opencode.json — applies to this repository only.
opencode.json
{
"$schema": "https://opencode.ai/config.json",
"plugin": ["officekit-opencode@0.1.2"]
}Writes to ~/.config/opencode/opencode.json — applies to every project.
~/.config/opencode/opencode.json
{
"$schema": "https://opencode.ai/config.json",
"plugin": ["officekit-opencode@0.1.2"]
}If you want to modify the plugin locally, install it into the project and reference the local path.
shell
pnpm add -D officekit-opencodeOpenCode loads npm dependencies through its embedded runtime on startup and caches them locally — no manual global install needed.
Fast, single-binary document tools for AI coding agents. One 760 KB Rust binary speaks MCP over stdio — no Python, no Node, no Microsoft Office, no approvals from anyone. Works with OpenCode, Claude Code, and Codex.
What it does (v0.1 — PowerPoint)
| Tool | What |
|---|---|
pptx_create |
New 16:9 deck with all 11 standard PowerPoint layouts |
pptx_add_slide |
Add a slide by layout name (Title Slide, Two Content, …) |
pptx_set_text |
Fill placeholders / shapes: paragraphs, bullets, levels, bold, size, color, align |
pptx_add_image |
Insert png/jpg/gif; auto aspect-ratio and auto-fit-to-slide |
pptx_add_textbox |
Free-form text boxes anywhere |
pptx_duplicate_slide |
Clone a slide (text + images) |
pptx_delete_slide |
Remove a slide |
pptx_inspect |
Full structural dump: shapes, placeholders, positions, text |
pptx_extract_text |
Read all text from a deck |
Edits work on existing .pptx files created by PowerPoint, python-pptx, etc.
Every operation saves atomically (tmp + rename).
Install
Prebuilt binaries for Linux (x64/arm64, gnu/musl), macOS (x64/arm64) and Windows (x64): GitHub Releases.
Or build from source (needs Rust):
cargo build --release
cp target/release/officekit ~/.local/bin/
OpenCode (npm package)
Published as officekit-opencode.
One line in config — the package downloads the right binary for your platform
automatically (falls back to an officekit binary on PATH):
// ~/.config/opencode/opencode.jsonc
{
"plugins": ["officekit-opencode"]
}
You get: the officekit MCP server, a presentations skill, and a /deck
command. Options via plugin config:
{ "plugins": [{ "package": "officekit-opencode",
"options": { "command": "/usr/local/bin/officekit" } }] }
Or from a local checkout:
{ "plugins": ["/path/to/officekit/plugin/opencode"] }
Or skip the plugin and register the server directly:
opencode mcp add officekit --global -- officekit
Claude Code
claude mcp add officekit -- officekit
Codex
codex mcp add officekit -- officekit
Layout
src/ Rust sources (MCP server + pptx core)
xml.rs minimal OOXML DOM
imgdim.rs PNG/JPEG/GIF dimension probing
pptx.rs package model + all operations
tools.rs MCP tool definitions & dispatch
main.rs stdio JSON-RPC loop
assets/ blank_16x9.pptx template (embedded into the binary)
plugin/opencode OpenCode plugin (TS) + presentations skill
Roadmap
- docx (Word): paragraphs, tables, images, headers
- xlsx (Excel): cells, formulas, styles, charts
- pptx: tables, charts, shape styling, slide reordering, notes
- prebuilt binaries for linux/macOS/windows via GitHub releases
MIT licensed. Nobody's approval required.
Similar plugins
Browser
opencode-browser
OpenCode plugin that integrates Browser MCP for browser automation
Browser Mcp
opencode-browser-mcp
OpenCode plugin that integrates Browser MCP for browser automation
Navigator
opencode-navigator
Search, navigate, and manage OpenCode sessions from the TUI