# documents.js MCP server

> Converts between OOXML, OpenDocument, Markdown, EPUB, and PDF formats using a type-safe, lossless Zod-based schema.

- Repository: https://github.com/ExaDev/documents.js
- Page: https://hostedmcp.org/servers/exadev/documents-js
- Transport: stdio
- Stars: 2
- License: MIT

## Install

### Claude Code

```sh
claude mcp add documents-js -- npx -y document-mcp
```

### Cursor (`~/.cursor/mcp.json`)

```json
{
  "mcpServers": {
    "documents-js": {
      "command": "npx",
      "args": [
        "-y",
        "document-mcp"
      ]
    }
  }
}
```

### VS Code (`.vscode/mcp.json`)

```json
{
  "servers": {
    "documents-js": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "document-mcp"
      ]
    }
  }
}
```

### VS Code CLI

```sh
code --add-mcp '{"name":"documents-js","type":"stdio","command":"npx","args":["-y","document-mcp"]}'
```

### Claude Desktop (`claude_desktop_config.json`)

```json
{
  "mcpServers": {
    "documents-js": {
      "command": "npx",
      "args": [
        "-y",
        "document-mcp"
      ]
    }
  }
}
```

### Codex

```sh
codex mcp add documents-js -- npx -y document-mcp
```

### Codex config.toml (`~/.codex/config.toml`)

```toml
[mcp_servers.documents-js]
command = "npx"
args = ["-y", "document-mcp"]
```

### Gemini CLI

```sh
gemini mcp add -s user documents-js npx -- -y document-mcp
```

### Gemini settings.json (`~/.gemini/settings.json`)

```json
{
  "mcpServers": {
    "documents-js": {
      "command": "npx",
      "args": [
        "-y",
        "document-mcp"
      ]
    }
  }
}
```

## FAQ

### Does this require any environment variables to run?

No environment variables are required for a normal build, lint, or test run.

### What are the prerequisites for using documents.js?

You need Node 24 and pnpm installed to use the package.
