Skip to main content
Glama
N0moreher0
by N0moreher0

CI status

project_ci_status
Read-onlyIdempotent

Read CI status for a branch, workflow, run, or PR to confirm checks passed before merging; supports GitHub Actions, GitLab, and Bitbucket.

Instructions

Read CI status: recent runs for a branch/workflow, one run with its jobs, or branch-protection check-runs for a ref/PR (GitHub). GitHub Actions, GitLab pipelines and Bitbucket Pipelines are supported. Use when: after pushing or triggering a pipeline, to see whether checks passed before merging; pass pr= (or ref=) for branch-protection check-runs (GitHub). Avoid when: you need the failure detail (use project_ci_logs with the run_id/job_id). Speed: 1-2 API calls; newest runs first. pr= adds one call to resolve the head sha. Output: ci_status: overall (success|failure|in_progress|no_runs|no_checks) + runs[] {id, name, status, conclusion, branch, sha, url}; run_id → run + jobs[]; ref/pr → check_runs[] (GitHub) or the newest pipeline (GitLab/Bitbucket). Batch-safe: yes

Input Schema

NameRequiredDescriptionDefault
prNoPR number or PR URL: read check-runs for the PR head commit.
refNoCommit sha or branch: read check-runs (GitHub) or the newest pipeline for that ref.
repoNoRepository as "owner/name" or a PR URL (default: VENIRA_GIT_REPO, git.repo in venira.config.json, else the workspace .git origin remote).
limitNoMax runs (or check-runs) to list (default 10 / 20).
branchNoFilter runs by branch.
run_idNoInspect one run: GitHub/GitLab numeric id, or a Bitbucket pipeline UUID.
providerNoProvider override for this call (default: VENIRA_GIT_PROVIDER, then venira.config.json, then inferred from the origin remote).
workflowNoWorkflow file name (ci.yml) or numeric id.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.5.4

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already cover readOnly/idempotent/openWorld, and the description adds cost and ordering context the annotations cannot: '1-2 API calls', 'newest runs first', and that pr= adds one resolving call. It also discloses per-provider divergence (GitHub returns check_runs, GitLab/Bitbucket return the newest pipeline) and batch-safety.

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?

Front-loaded with the core action, then labeled sections (Use when / Avoid when / Speed / Output / Batch-safe) that each carry distinct information. No sentence restates the name or the annotations.

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?

No output schema exists, yet the description enumerates the returned fields including the overall status enum values and the per-mode array shapes, plus cost and ordering. Nothing an agent needs to call or interpret it is missing.

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

Parameters4/5

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

Schema coverage is 100%, so baseline would be 3, but the description ties parameters to distinct output shapes (run_id → run + jobs[], ref/pr → check_runs[]) and notes the extra call cost of pr=, which the schema's one-line descriptions do not convey. Room remains since defaults and the provider inference chain are already in the schema.

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?

States a specific verb and resource ('Read CI status') and enumerates the three distinct read modes (recent runs, one run with jobs, branch-protection check-runs) with the providers covered. An agent can distinguish it from project_ci_logs or project_ci_trigger without opening a schema.

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

Usage Guidelines5/5

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

Explicit 'Use when' clause names the trigger (after pushing/triggering, before merging) and the parameter that selects a mode (pr=/ref=). The 'Avoid when' clause names the sibling project_ci_logs and the condition that selects it, so routing is unambiguous.

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