Skip to main content
Glama

Get wiki page

gitlab_get_wiki_page
Read-onlyIdempotent

Retrieve a specific GitLab wiki page by project ID and slug, with optional content or rendered HTML, to inspect documentation directly from the GitLab API.

Instructions

Get information about a specific wiki page.

Args: **kwargs: Additional parameters for the request (e.g., project_id, slug).

Returns: Response: A wrapper containing the original response and a WikiPage model.

Raises: MissingParameterError: If the project_id or slug is missing. ParameterError: If invalid parameters are provided.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "gitlab_get_wiki_page"
  }
}

Input Schema

NameRequiredDescriptionDefault
dataNo
fileNo
slugNo
titleNo
branchNo
contentNo
versionNo
project_idNo
format_typeNo
render_htmlNo
with_contentNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv27.3.20
    • removedInput schema / properties / api_parameters
      Removed value: -{
      -  "anyOf": [
      -    {
      -      "additionalProperties": true,
      -      "type": "object"
      -    },
      -    {
      -      "type": "null"
      -    }
      -  ],
      -  "default": null
      -}
  2. First observedv27.3.13

TDQS

C2.8/5.0
Behavior3/5

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

The annotations already state readOnlyHint=true, idempotentHint=true, openWorldHint=true, and destructiveHint=false, so safety is fully covered. The description adds value by naming the return type (a wrapper containing a WikiPage model) and the failure modes (MissingParameterError, ParameterError). However, it does not disclose that all schema parameters are optional with null defaults, which conflicts with its claim that project_id or slug can be 'missing' and raise an error, so the error contract is left ambiguous.

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

Conciseness3/5

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

The opening sentence is front-loaded and economical, but the 'Args: **kwargs: Additional parameters for the request (e.g., project_id, slug)' block is Python-client boilerplate that conveys little to a caller. The Returns/Raises sections earn their place more than the Args section does.

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

Completeness2/5

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

With 11 optional parameters and no output schema, the description should explain which inputs drive retrieval, but it documents only two examples. The return-value summary partially compensates for the missing output schema, but the parameter surface remains largely unexplained for a tool with this much schema complexity.

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

Parameters2/5

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

The schema has 11 parameters at 0% schema description coverage, and the description names only project_id and slug, both as examples inside a **kwargs note. It gives no meaning for with_content, render_html, format_type, or version, which are the fields that change what a wiki fetch returns. The retrieval behaviour of the tool is therefore unclear from the definition alone.

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 states a specific verb and resource: 'Get information about a specific wiki page.' That clearly separates it from gitlab_get_wiki_list, gitlab_create_wiki_page, gitlab_update_wiki_page, and gitlab_delete_wiki_page without naming them. It never explicitly names a sibling, so it stops short of a 5.

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?

There is no statement of when to use this tool rather than gitlab_get_wiki_list, and no mention of prerequisites such as resolving the slug first. The word 'specific' hints that a slug is needed, but that is inference rather than guidance.

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

Deploy Server

Other Tools