Skip to main content
Glama

Search GitHub for people

search_people

Search GitHub profiles: words matched against name, login and bio (e.g. 'rust database', 'GTM engineer', 'AI adoption'; GitHub needs every word to match, so use one to three), a location (a city, a country, or a region such as Europe), language of their repos, minimum followers or repos. Each person comes back with bio, location, company, followers, the hireable flag and their top 3 own repos. Good for roles where profiles say more than repos, and for a location constraint; for engineers, mining the contributors of seed repos (find_people_behind_repos) is often stronger. Returns the exact query run and the total; pass next_cursor as cursor for more. With role_id, people the role has already seen are left out (unless include_seen) and the search goes in the role's history. Free.

Input Schema

NameRequiredDescriptionDefault
sortNoDefault best (GitHub's relevance)
limitNo1-50, default 30
queryNoWords for name, login and bio
cursorNonext_cursor from the previous call, for the next page
role_idNoOptional role id: this search is logged in the role's search history, everyone it returns is marked as seen for the role, and people the role has already seen are left out (unless include_seen). Nothing is added to the role: use add_people_to_role.
languageNoLanguage of their repos, e.g. 'Rust'
locationNoOne place: a city or country as people write it ('Berlin', 'Germany'), or a region ('Europe', 'North America'). A region reads the top 100 matches and keeps the people located in it (region_filter says how many).
min_reposNo
include_seenNoWith role_id: also return people the role has already seen (default false)
min_followersNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior4/5

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

Adds real behavioral context beyond the annotations: what each result contains (bio, location, company, followers, hireable, top 3 repos), that the exact query and total are returned, cursor pagination via next_cursor, and that the call is free. It also explains the non-read-only side effect (role_id logs the search and marks people seen), which reconciles with readOnlyHint=false. Slightly short of 5 only because rate/limit behavior is left to the schema.

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?

Front-loaded with the core matching semantics and alternative routing, with zero filler sentences. It is a dense single paragraph rather than cleanly segmented, which makes it slightly harder to scan for a 10-parameter tool.

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 covers return contents, the echoed query, total, and pagination cursor usage. Combined with the role_id side-effect explanation, an agent has everything needed to call this correctly.

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 already 80%, but the description adds genuine meaning: query words must all match GitHub-side so keep it to one to three, location may be a region with a top-100 read, and role_id excludes already-seen people unless include_seen. That goes beyond the field-level schema text.

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 (search GitHub profiles) and immediately defines the matching surface: name, login and bio. It also explicitly contrasts itself with find_people_behind_repos and search_candidates, so an agent can route between them without reading schemas.

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?

Gives concrete when-to-use guidance ('roles where profiles say more than repos', 'a location constraint') and names the alternative plus the condition that selects it ('for engineers, mining the contributors of seed repos ... is often stronger'). This is explicit routing, not inference.

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