Skip to main content
Glama

Create Wiki Page

page_create

Create or update Yandex Wiki pages by providing a slug, title, and Markdown (YFM) content. Use YFM-compatible syntax to ensure correct rendering.

Instructions

Create a Yandex Wiki page. Content is Markdown (YFM): plain Markdown renders as-is, but GitHub-specific extensions ('[!NOTE]' alerts, raw HTML) do not — see the wiki-mcp://yfm-cheatsheet resource for YFM equivalents.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
slugYesWiki page slug like 'users/login/project/page'. A full Wiki page URL is also accepted.
titleYesWiki page title.
contentYesFull page content.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYes
slugNo
ownerNo
titleNo
contentNo
redirectNo
page_typeNo
attributesNo
created_atNo
breadcrumbsNo
modified_atNo
access_listsNo
yfm_warningsNoMarkup warnings for the written content (the write itself succeeded): parts that will not render as intended on Yandex Wiki. See the wiki-mcp://yfm-cheatsheet resource for fixes.
access_policyNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv1.3.0
    • changedOutput schema / properties / yfm_warnings / description
      Previous value: -"Markup warnings for the submitted content (the write itself succeeded): parts that will not render as intended on Yandex Wiki. See the wiki-mcp://yfm-cheatsheet resource for fixes."New value: +"Markup warnings for the written content (the write itself succeeded): parts that will not render as intended on Yandex Wiki. See the wiki-mcp://yfm-cheatsheet resource for fixes."
  2. Changed18 schema fields changedv1.0.1
    • removedInput schema / properties / page_type
      Removed value: -{
      -  "default": "wysiwyg",
      -  "description": "Wiki page type. Prefer 'wysiwyg' unless a different editor type is required.",
      -  "title": "Page Type",
      -  "type": "string"
      -}
    • addedOutput schema / $defs
      Added value: +{
      +  "WikiOwner": {
      +    "description": "Page owner: the API nests the full identity payload under `user`.",
      +    "properties": {
      +      "group": {
      +        "anyOf": [
      +          {
      +            "additionalProperties": true,
      +            "type": "object"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ],
      +        "default": null
      +      },
      +      "user": {
      +        "anyOf": [
      +          {
      +            "$ref": "#/$defs/WikiUser"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ],
      +        "default": null
      +      }
      +    },
      +    "type": "object"
      +  },
      +  "WikiUser": {
      +    "description": "Trimmed user reference — the API sends much more (identity, flags…).",
      +    "properties": {
      +      "display_name": {
      +        "anyOf": [
      +          {
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ],
      +        "default": null
      +      },
      +      "id": {
      +        "anyOf": [
      +          {
      +            "type": "integer"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ],
      +        "default": null
      +      },
      +      "username": {
      +        "anyOf": [
      +          {
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ],
      +        "default": null
      +      }
      +    },
      +    "type": "object"
      +  }
      +}
    • removedOutput schema / additionalProperties
      Removed value: -true
    • addedOutput schema / properties / access_lists
      Added value: +{
      +  "anyOf": [
      +    {
      +      "additionalProperties": true,
      +      "type": "object"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / properties / access_policy
      Added value: +{
      +  "anyOf": [
      +    {
      +      "additionalProperties": true,
      +      "type": "object"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • removedOutput schema / properties / attributes / title
      Removed value: -"Attributes"
    • removedOutput schema / properties / breadcrumbs / title
      Removed value: -"Breadcrumbs"
    • removedOutput schema / properties / content / title
      Removed value: -"Content"
    • removedOutput schema / properties / created_at / title
      Removed value: -"Created At"
    • removedOutput schema / properties / id / title
      Removed value: -"Id"
    • removedOutput schema / properties / modified_at / title
      Removed value: -"Modified At"
    • addedOutput schema / properties / owner
      Added value: +{
      +  "anyOf": [
      +    {
      +      "$ref": "#/$defs/WikiOwner"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • removedOutput schema / properties / page_type / title
      Removed value: -"Page Type"
    • removedOutput schema / properties / redirect / title
      Removed value: -"Redirect"
    • removedOutput schema / properties / slug / title
      Removed value: -"Slug"
    • removedOutput schema / properties / title / title
      Removed value: -"Title"
    • removedOutput schema / properties / yfm_warnings / title
      Removed value: -"Yfm Warnings"
    • removedOutput schema / title
      Removed value: -"PageWriteResponse"
  3. Changed2 schema fields changedv0.7.0
    • addedOutput schema / properties / yfm_warnings
      Added value: +{
      +  "anyOf": [
      +    {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Markup warnings for the submitted content (the write itself succeeded): parts that will not render as intended on Yandex Wiki. See the wiki-mcp://yfm-cheatsheet resource for fixes.",
      +  "title": "Yfm Warnings"
      +}
    • changedOutput schema / title
      Previous value: -"WikiPage"New value: +"PageWriteResponse"
  4. Addedv0.6.0

TDQS

A4.3/5.0
Behavior4/5

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

Annotations declare destructiveHint=false and openWorldHint=false, which the description complements by mentioning non-destructive creation. The description adds value by disclosing the behavioral nuance of content rendering (Markdown limitations and YFM requirements), which goes beyond the annotations. No contradictions.

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 two sentences long, front-loaded with the core action, and immediately provides actionable detail about content formatting. Every sentence earns its place with no fluff.

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

Completeness5/5

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

Given that the tool has only 3 required parameters, a clear input schema, an output schema (not shown but mentioned in signals), and good annotations, the description is complete. It addresses the key nuance (content rendering) that could trip up an AI agent, and the reference to a resource for YFM equivalents is a helpful touch.

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%, so parameters are already well-documented in the schema. The description adds context about the 'content' parameter (Markdown/YFM format) but does not elaborate on 'slug' or 'title' beyond the schema. Baseline 3 is appropriate given full schema coverage.

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 action ('Create a Yandex Wiki page') and the resource ('Wiki page'). It distinguishes from siblings like page_update or page_edit by specifying creation. The mention of Markdown (YFM) adds specificity about the content format.

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

Usage Guidelines4/5

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

The description implies when to use this tool (to create a new wiki page) and provides a crucial detail about content formatting (YFM vs plain Markdown). However, it does not explicitly state when not to use it or contrast with similar tools like page_clone or page_update, leaving some room for ambiguity.

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