Skip to main content
Glama

Upload wiki page attachment

gitlab_upload_wiki_page_attachment

Upload a file as an attachment to a GitLab project wiki page by providing the project ID, branch, and file path.

Instructions

Upload an attachment to a wiki page for a project.

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

Returns: Response: A wrapper containing the original response and the raw attachment data.

Raises: MissingParameterError: If the project_id, file, or branch is missing. ParameterError: If invalid parameters are provided.

Input Schema

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

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv27.3.13

TDQS

C2.6/5.0
Behavior2/5

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

Annotations already declare readOnly=false, destructive=false, idempotent=false and openWorld=true. The description adds only a return-wrapper note and generic parameter-validation errors; it says nothing about required permissions, whether uploads overwrite same-named files, or the effect on the wiki page beyond annotations.

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 docstring layout is front-loaded with a clear purpose sentence, but the Args/Returns/Raises boilerplate includes a misleading generic '**kwargs' line that adds noise rather than signal for a schema with explicit named properties.

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?

For a mutation tool with 12 optional parameters, no output schema and no annotation coverage of auth or side effects, the description should explain at least the core upload parameters and the effect on the target page. It does not, leaving the agent under-informed for correct invocation.

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?

Schema coverage is 0% across 12 parameters, so the description carries the full burden, yet it only names project_id, file and branch, and frames them as '**kwargs' which does not match the schema's named properties. Eight parameters (slug, title, content, version, format_type, render_html, with_content, data, api_parameters) are undocumented anywhere.

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 first sentence gives a specific verb plus resource (upload attachment to a wiki page) scoped to a project, so the agent knows exactly what the tool does. It does not distinguish itself from siblings such as create_wiki_page or update_wiki_page, which prevents 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 versus alternatives (e.g. edit the page contents instead of attaching a file), and no prerequisites or context beyond 'for a project'. Only the Raises section hints that project_id, file, and branch are expected, which is parameter validation, not usage 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