Skip to main content
Glama

github_orgs

GitHub — who is in the organization, in a team, on a repository.

⚠️ Three memberships look alike and are not the same thing: member of the ORGANIZATION, member of a TEAM, collaborator on a REPOSITORY. Removing someone from one does not remove them from the others — this is the most frequent error here. remove_member leaves the organization (and all its teams); remove_team_member only touches the team; remove_collaborator only touches one repository, and does not remove access inherited from a team.

⚠️ members only shows what the token is allowed to see: without the organization scope, only PUBLIC members come out — a shorter list, with no error. It is therefore not a census.

⚠️ set_membership and add_collaborator send an invitation: access is only effective once accepted (pending until then). role='admin' on an organization gives owner rights.

⚠️ permission returns the EFFECTIVE level (team inheritance included), which the list of direct collaborators does not say.

op='me' (the token's account) and op='rate_limit' (the quota state, without consuming them) are for diagnosing before blaming a name.

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": "github_orgs"
  }
}

Input Schema

NameRequiredDescriptionDefault
opNothe operation, see above.me
orgNothe targeted organization.
_orgNoOrg (id) de CET APPEL. `oto_list_orgs()`.
pageNopage number.
repoNorepository name (collaborator operations).
roleNoadmin | member (organization); member | maintainer (team).
ownerNorepository owner (collaborator operations).
_groupNoÉquipe (id) de CET APPEL, sous son org parente.
filterNoop='members' — 2fa_disabled | all.
_run_idNoOBLIGATOIRE à chaque appel dès `run_start` ou `data_claim_next` : sans lui, l'écriture sur une ligne réservée est refusée. Hérité seulement si le serveur tient un run actif — n'y compte pas.
_accountNoCompte à OPÉRER parmi : `Julien` (org), `Tulina front` (org). `oto_identity(op='list')`.
_projectNoProjet (id) de CET APPEL — jeton PRIMAIRE. `oto_project(op='list')`.
per_pageNorows per page (1-100, default 30).
usernameNothe targeted account.
_instanceNoInstance de connecteur PRÉCISE (un credential exact). `oto_instance(op='list')`.
team_slugNothe team's slug (not its display name).
permissionNopull | triage | push | maintain | admin (collaborator).
affiliationNoop='collaborators' — outside | direct | all.

Schema Changelog

Changes observed during successful MCP inspections.

No schema history has been recorded yet.

TDQS

A4.3/5.0
Behavior5/5

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

With zero annotations the description carries the full burden and does so unusually well: it discloses silent truncation ('members' shows only PUBLIC members without the org scope — a shorter list, with no error), deferred side effects (set_membership and add_collaborator send invitations that stay 'pending'), privilege escalation (role='admin' grants owner rights), and inheritance semantics (permission returns the EFFECTIVE level). These are the failure modes an agent would otherwise hit blind.

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?

The most important distinction — three memberships that are not the same — is front-loaded, and each following paragraph addresses a distinct hazard, so nothing is filler. The repeated ⚠️ markers and bolded op names make it scannable but visually noisy, and some sentences pack multiple claims together, which slightly costs readability at 20 operations.

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?

For a 20-operation, 18-parameter tool with no annotations and no output schema, the description covers the highest-risk behaviors but leaves gaps: it never says what most ops return (teams, team_members, team_repos, collaborators, is_collaborator), gives no pagination guidance despite page/per_page, and relies on op names being self-explanatory. An agent can call it safely on the mutation paths but must guess at return shapes for the read paths.

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 the schema already documents every parameter and a baseline of 3 applies. The description still adds real meaning on top: what `members` actually returns under scope limits, what `role='admin'` implies, that `permission` reflects inherited levels unlike the collaborator list, and which ops the `filter`/`affiliation` enums attach to. It does not cover pagination or the org/repo/owner pairing rules, so it stops short of full coverage.

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 opening line identifies the resource domain precisely — organization, team, and repository memberships on GitHub — and the warning block makes clear it covers both reads and membership mutations. It is not a clean verb+resource statement (the opening is a fragment, 'who is in...'), and it never enumerates the 20 operations, but an agent can immediately tell this is the org/team/collaborator tool and not github_repos, github_issues, or github_act.

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?

It explicitly disambiguates the three look-alike membership types and routes to the correct removal op for each ('remove_member leaves the organization', 'remove_team_member only touches the team', 'remove_collaborator only touches one repository'). It also tells the agent when to reach for the diagnostic ops ('op=me' and 'op=rate_limit' are for diagnosing before blaming a name). That is exactly the when/when-not/alternative guidance an agent needs, though sibling-tool differentiation is absent.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources