Skip to main content
Glama
Scrapbox Cosense MCP Server

Scrapbox Cosense MCP Server

create_page

Create a new Scrapbox page with a title and optional body. Get the page creation URL without opening a browser, using the default project if none is specified.

Instructions

Create a new page in Scrapbox project on cosense (scrapbox). Creates a new page with the specified title and optional body text. Returns the page creation URL without opening browser. Uses my-cosense-project project as default if projectName is not specified.

Input Schema

NameRequiredDescriptionDefault
bodyNoContent in markdown format (default) or Scrapbox syntax (when format is 'scrapbox'). Avoid duplicating the title in the body since it's automatically displayed at the top. Supports links, code blocks, lists, and emphasis.
titleYesTitle of the new page
formatNoContent format of the body. 'markdown' (default) converts Markdown to Scrapbox syntax. 'scrapbox' passes content through as-is, preserving Scrapbox-native indentation and syntax.
projectNameNoTarget project name. If not specified, defaults to 'my-cosense-project'.
createActuallyNoWhether to actually create the page. If true (default), creates the page immediately. If false, returns only the creation URL.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.13.0
    • changedInput schema / properties / createActually / description
      Previous value: -"Whether to actually create the page using WebSocket API. If true (default), creates the page immediately. If false, returns only the creation URL."New value: +"Whether to actually create the page. If true (default), creates the page immediately. If false, returns only the creation URL."
  2. Changed2 schema fields changedv0.10.1
    • changedInput schema / properties / body / description
      Previous value: -"Content in markdown format. Avoid duplicating the title in the body since it's automatically displayed at the top. Supports links, code blocks, lists, and emphasis."New value: +"Content in markdown format (default) or Scrapbox syntax (when format is 'scrapbox'). Avoid duplicating the title in the body since it's automatically displayed at the top. Supports links, code blocks, lists, and emphasis."
    • addedInput schema / properties / format
      Added value: +{
      +  "description": "Content format of the body. 'markdown' (default) converts Markdown to Scrapbox syntax. 'scrapbox' passes content through as-is, preserving Scrapbox-native indentation and syntax.",
      +  "enum": [
      +    "markdown",
      +    "scrapbox"
      +  ],
      +  "type": "string"
      +}
  3. Changed1 schema field changedv0.4.0
    • changedInput schema / properties / projectName / description
      Previous value: -"Target project name. If not specified, defaults to 'example-project'."New value: +"Target project name. If not specified, defaults to 'my-cosense-project'."
  4. First observed

TDQS

B3.2/5.0
Behavior3/5

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

With no annotations, the description carries full behavioral burden. It usefully discloses that the tool returns a creation URL without opening a browser and that projectName defaults to 'my-cosense-project'. However, it omits key mutation traits such as auth requirements and, importantly, what happens when the page already exists (overwrite vs error).

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

Conciseness4/5

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

Four sentences, front-loaded with the core action and closing with the most actionable constraint (default project). Slightly redundant phrasing ('Scrapbox project on cosense (scrapbox)') but no filler sentences.

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

Completeness3/5

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

No output schema exists, and the description does address the return value (creation URL). For a mutation tool with no annotations, it is adequate but incomplete, missing auth/permission context and duplicate-page behavior that an agent needs before invoking a write operation.

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 description coverage is 100%, so the schema already documents all five parameters thoroughly, including the markdown/scrapbox format semantics and createActually behavior. The description reinforces title/body/projectName defaults but adds no syntax or meaning beyond the schema, so the baseline 3 applies.

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

Purpose4/5

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

The description gives a clear verb+resource ('Create a new page in Scrapbox project on cosense') and states scope (title + optional body). It distinguishes the tool's core action from read-only siblings like get_page, though it never explicitly names the mutation alternatives (edit_lines, insert_lines).

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

Usage Guidelines2/5

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

It explains the default project behavior but offers no guidance on when to use create_page versus editing existing content with edit_lines or insert_lines. There is no when-not or alternative routing, leaving the agent to infer selection from the name alone.

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