Skip to main content
Glama
ni-c

woodpecker-ci-mcp

by ni-c

Get repository permissions

get_repository_permissions
Read-onlyIdempotent

Check which actions an authenticated account can perform on a repository—pull, push, and admin—by supplying its numeric ID. Use this to diagnose 403 errors without guessing.

Instructions

What the authenticated account may do with this repository: pull, push and admin. Woodpecker inherits these from the forge, so this answers "why was that 403" without guessing.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
repo_idYesNumeric repository id. lookup_repository turns an "owner/name" pair into one; list_repositories shows both.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
truncatedNoPresent only when the answer was shortened to fit the budget.

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observedv0.2.0

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so no safety burden remains. The description adds meaningful behavioral context: Woodpecker inherits permissions from the forge, and the result reflects what the authenticated account may do. This helps the agent interpret the value rather than assuming repository owner semantics.

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?

Two sentences with no filler. The first sentence immediately states the action and output fields, and the second explains the practical diagnostic value. Every clause contributes meaning.

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?

For a single-parameter read-only tool with a rich parameter schema and an output schema present, the description covers purpose, semantic meaning, and a practical use case. Nothing material is missing for correct invocation and interpretation.

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%, and the repo_id parameter already has a clear description plus guidance for looking up a repository from an owner/name pair. The tool description adds no parameter-specific details, but it does not need to because the schema fully documents the single required parameter.

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 states a specific action (get), resource (repository permissions), and enumerates the three permission types returned (pull, push, admin). It also gives a concrete diagnostic purpose, explaining why an agent would call this tool rather than guessing about a 403.

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 phrase 'so this answers "why was that 403" without guessing' clearly communicates a primary use case. It implies troubleshooting permission issues for the authenticated account, but it does not explicitly contrast with alternatives like get_organization_permissions or get_repository.

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

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/ni-c/woodpecker-ci-mcp'

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