# scrivener-mcp

Hooks a Scrivener 3 project into your AI client so the agent reads, edits and searches the manuscript without exports.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 68
- Author: writerslogic
- License: AGPL-3.0 · policy=link-only · description only; the file stays with the author
- Source: https://github.com/writerslogic/scrivener-mcp
- Updated: 2026-10-22
- HTML: https://affpapa.org/en/nevibecode/mcp/scrivener-mcp

## What it does

The server works on a `.scriv` project directly from your assistant: it opens documents, edits them, searches the text and keeps track of what happened earlier in the session. Project memory, keyword lookup and fixed analysis run without any model at all. The project has to be open first, which is how nearly every task begins.

It ships as a Node.js stdio server, so `npx` is enough. A helper, `npx scrivener-setup`, scans for Claude Code, Claude Desktop, Cursor, VS Code, LM Studio, BoltAI and Raycast, writes their configs and confirms the server comes up. On macOS a paid app does the same one-click job for $4.99 across up to three Macs and reconnects after your client updates — no Node.js involved.

Drafting feedback, text generation and semantic search need a provider key from Anthropic, OpenAI or OpenRouter. Set several and the server falls back to the next one when an account errors out. Indexing happens locally; only interpreting a `semantic_search` query leaves the machine. Clients that support sampling can route chat features through their own model instead.

Based on AGPL-3.0 code and aimed at Scrivener 3 on macOS, Windows and Linux.

## Requirements
- Needs: Node.js (commands run via npx)

## Install

### Claude Code (native platform)

**Platform CLI**
```bash
claude mcp add scrivener-mcp -- npx -y scrivener-mcp
```

### Codex

**Platform CLI**
```bash
codex mcp add scrivener-mcp -- npx -y scrivener-mcp
```

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "scrivener-mcp": {
            "command": "npx",
            "args": [
                "-y",
                "scrivener-mcp"
            ]
        }
    }
}
```

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "scrivener-mcp": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "scrivener-mcp"
            ]
        }
    }
}
```

### Gemini CLI

**Platform CLI**
```bash
gemini mcp add scrivener-mcp npx -y scrivener-mcp
```

## When to use it
- pull a chapter out of `.scriv` and get pacing notes
- locate every scene a character walks into
- edit a document in place without launching Scrivener
- follow plot threads across a long manuscript
- carry project context from one session to the next

## Example prompts
- Open `Novel.scriv` and tell me where chapter 12 starts to drag.
- List every scene with Mia and flag anything that contradicts chapter 4.
- Tighten the closing paragraph of chapter 7 without losing the narrator's voice.

## Similar
- [Reactive Resume](https://affpapa.org/en/nevibecode/mcp/reactive-resume.md) — MCP server · ★ 44874
- [Sui Knowledge Base (kapa.ai)](https://affpapa.org/en/nevibecode/mcp/sui-knowledge-base-kapaai.md) — MCP server · ★ 7784
- [Claude Code Ultimate Guide](https://affpapa.org/en/nevibecode/mcp/claude-code-ultimate-guide.md) — MCP server · ★ 6237
- [Zotero MCP](https://affpapa.org/en/nevibecode/mcp/zotero-mcp.md) — MCP server · ★ 5548
- [RevoGrid DataGrid MCP Pro](https://affpapa.org/en/nevibecode/mcp/revogrid-datagrid-mcp-pro.md) — MCP server · ★ 3450
- [Claude Code Explorer MCP](https://affpapa.org/en/nevibecode/mcp/codeaashu-claude-code-explorer-mcp.md) — MCP server · ★ 3409

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
