Skip to main content
Glama
nazaryanenko

scrivener-mcp

by nazaryanenko

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
find_projectsA

Find Scrivener projects on your computer.

Searches common locations (Documents, Dropbox, iCloud, etc.) for .scriv folders. Use this to discover available projects, then use open_project to load one.

Args: search_path: Optional specific folder to search. If not provided, searches common locations like Documents, Dropbox, iCloud.

Returns: List of found Scrivener projects with their paths.

open_projectB

Open a Scrivener project.

Args: path: Path to the .scriv folder

Returns: Confirmation message with project info

list_binderA

List the binder structure of the Scrivener project.

Shows the hierarchical structure of folders and documents, similar to Scrivener's binder sidebar.

Args: folder_path: Optional path to a specific folder to list (e.g., "Neon Syn/Book One"). If not provided, lists the entire binder.

Returns: Tree representation of the binder structure with: - šŸ“ for folders - šŸ“„ for documents - āœ“ for items marked "Include in Compile"

read_documentA

Read the content of a specific document.

Args: identifier: Can be one of: - Document title (e.g., "Chapter 1") - Full path (e.g., "Neon Syn/Book One/Chapter 01/01") - UUID (e.g., "BA3D0D3E-0BC5-4E4F-AEB4-D7203A5215C4")

Returns: The plain text content of the document, with metadata header showing title, path, and word count.

search_projectA

Search for text across all documents in the project.

Args: query: Text or regex pattern to search for case_sensitive: Whether to match case (default: False)

Returns: List of matching documents with excerpts showing the matching lines.

get_word_countsA

Get word count statistics for the project or a specific folder.

Args: folder_path: Optional path to a specific folder. If not provided, shows stats for the entire manuscript (Draft folder).

Returns: Word count breakdown by folder/chapter.

read_chapterA

Read a specific chapter or section of the manuscript.

Reads all documents within the specified chapter/folder, in binder order.

āš ļø For large projects, always read one chapter at a time to avoid timeouts. Use scan_project first to see available chapters.

Args: chapter: Chapter name or path (e.g., "Chapter 01", "Book One/Chapter 05") include_titles: Whether to include document/folder titles as headings

Returns: The chapter text with all its scenes/documents.

get_synopsisA

Get the synopsis (short summary) of a document.

In Scrivener, the synopsis is a brief description shown on index cards in corkboard view. Useful for understanding scene/chapter summaries.

Args: identifier: Document title, path, or UUID

Returns: The synopsis text, or a message if no synopsis exists.

write_synopsisA

Write the synopsis (index card text) for a document.

The project must be CLOSED in Scrivener, otherwise this fails. Overwrites any existing synopsis. No snapshot is taken.

Args: identifier: Document title, path, or UUID synopsis: The synopsis text to write

Returns: Confirmation message, or an error description.

get_notesA

Get the document notes (inspector notes) for a document.

In Scrivener, document notes appear in the inspector panel and contain author notes, research, reminders, etc.

Args: identifier: Document title, path, or UUID

Returns: The notes text, or a message if no notes exist.

scan_projectA

Scan the project and return a structured overview for analysis.

Returns chapter titles, word counts, synopses (if any), and opening lines. This gives you enough context to understand the whole project without loading every document into memory.

Use this to get a bird's eye view, then use read_document or read_chapter(chapter="...") to dive deeper into specific sections.

Args: folder_path: Optional path to scan a specific folder (e.g., "Book One"). If not provided, scans the entire Draft/Manuscript folder.

Returns: Structured overview with chapter summaries, word counts, and opening lines.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/nazaryanenko/scrivener-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server