Skip to main content
Glama

Argocd Can I

argocd_can_i
Read-onlyIdempotent

Check whether the current Argo CD account can perform an RBAC action on a resource or subresource and return if it is allowed.

Instructions

Check whether the current account may perform resource/action on a subresource.

Returns {allowed: bool, ...}; the API answers the string yes/no.

Input Schema

NameRequiredDescriptionDefault
actionYesRBAC action
resourceYesRBAC resource
subresourceNoSub-resource, e.g. */* or proj/app*/*

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.4.0
    • changedOutput schema / (root)
      Previous value: -{
      -  "properties": {
      -    "result": {
      -      "type": "string"
      -    }
      -  },
      -  "required": [
      -    "result"
      -  ],
      -  "type": "object",
      -  "x-fastmcp-wrap-result": true
      -}New value: +null
  2. First observedv0.1.0

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, so safety is covered. The description adds useful context: the API returns a string yes/no and the tool normalizes to {allowed: bool, ...}. The ellipsis hints at extra fields but doesn't say what. Reasonable value added atop annotations.

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

Conciseness4/5

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

Two tight sentences, no waste. Front-loads the purpose then the return shape. Slightly under-specified rather than verbose, which is the right trade-off.

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

Completeness3/5

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

No output schema, so the description should fully explain return values; it gives {allowed: bool, ...} which is partial. For a read-only permission check this is mostly adequate, but the vagueness of the extra return fields leaves a gap.

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% and both resource/action have enums, so the schema does the heavy lifting. The description mentions subresource and resource/action but adds no syntax details beyond the schema (e.g., what */* vs proj/app means is only in the schema description). Baseline 3 is appropriate.

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?

States a specific verb (check) and resource (whether account may perform resource/action on subresource). Clearly an RBAC permission-check tool, distinguishable from the siblings which mostly list/get actual resources. No explicit sibling differentiation, but the purpose is unambiguous.

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?

No guidance on when to use this versus, say, argocd_get_userinfo or the actual resource tools. No exclusions, no mention of whether it reflects live RBAC, policy caching, or project-scoped permissions. An agent must infer usage entirely.

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