Skip to main content
Glama

Detect Open Scrivener Project

detect_open_project
Read-onlyIdempotent

Detect the Scrivener project currently open in the desktop app, enabling actions on it without needing a file path.

Instructions

Detect which Scrivener project the user currently has open in the desktop Scrivener app, so you can act on it without asking for a path. Use this when the user says "my project", "the project I have open", or gives a command with no project specified. Reads the open window names from the running app and resolves them to .scriv paths on disk; it does not open anything. If exactly one project is open, pass its path to open_project. macOS only right now (returns supported=false elsewhere; fall back to discover_projects). The first use may prompt macOS to allow the client app to control Scrivener.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
searchPathNoOptional extra directory to resolve project names against, in addition to the default locations. Absolute or ~-relative path.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
countYesNumber of resolved open projects.
runningYesWhether the Scrivener app appears to be running.
supportedYesFalse on platforms where detection is not implemented (non-macOS).
unresolvedYesOpen project names that could not be matched to a .scriv folder on disk.
openProjectsYesOpen projects resolved to a .scriv path.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, destructiveHint. The description adds extra context: it reads window names, resolves to paths, does not open anything, and notes the first use may prompt macOS permissions. This goes beyond the annotations to explain the mechanism and potential side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured: it starts with purpose, then usage guidelines, then how it works, then limitations and fallback. Every sentence adds value, and it is not overly verbose. The information is front-loaded for quick understanding.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of an output schema and annotations covering safety, the description is largely complete. It covers usage, behavior, constraints, and side effects. However, it does not explicitly describe what happens when zero or multiple projects are open, which is a minor gap. Still, overall very good.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the schema description for searchPath is clear ('Optional extra directory... Absolute or ~-relative path.'). The description does not add further meaning beyond the schema, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool detects which Scrivener project the user has open, for acting on it without asking for a path. It distinguishes from sibling tools like open_project and discover_projects by specifying that it passes the path to open_project and falls back to discover_projects on non-macOS.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly says when to use: when user says 'my project', 'the project I have open', or gives a command with no project. Also says when not to use: macOS only, else fall back to discover_projects. Provides an alternative tool and clear context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

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/writerslogic/scrivener-mcp'

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