Skip to main content
Glama

DevMatch - AI Recruiting & Mission-Aligned Engineer Discovery

Server Details

AI recruiting for mission-aligned engineers — verified across GitHub, X, YouTube, Medium, and more

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.6/5 across 3 of 3 tools scored.

Server CoherenceA
Disambiguation5/5

Each tool has a distinct purpose: find_candidates searches for engineers, find_similar_projects finds similar projects with leads, get_profile fetches individual profiles. No overlap.

Naming Consistency5/5

All tool names follow a clear verb_noun snake_case pattern (find_candidates, find_similar_projects, get_profile). Consistent.

Tool Count4/5

With 3 tools, the set is slightly minimal but still covers the core discovery workflow. Each tool earns its place.

Completeness4/5

The tools cover searching candidates, finding similar projects, and retrieving profiles. Minor gaps like direct filtering or listing all projects, but the main workflow is supported.

Available Tools

3 tools
find_candidatesA
Read-onlyIdempotent
Inspect

Search the DevMatch index for engineers matching a role or project.

Input: pass the richest context you have — (1) a full job description (most common), (2) a synthesized brief after reviewing a company's public repo (README + stack + role needs — preferred over a bare URL when you've evaluated the project), (3) a public github.com repo URL (server fetches README/topics; private repos → paste README as text), or (4) an informal role brief. Longer, more specific input ranks better.

Returns up to limit ranked candidates (default 20, max 50) with full inline profiles in structuredContent (view=candidates): login, name, bio, location, followers, html_url, top_repos, top_topics, signals, matched_projects, and contact.

Results never include bots, CI, or service accounts — they are filtered out automatically. Use the optional exclude array (GitHub logins or org names) to drop additional accounts.

AGENT MODE: consume structuredContent only. HUMAN MODE: MCP App panel shows candidate cards; use server instructions for text-only hosts.

Do not call get_profile for handles already in these results unless the user asks for deeper detail.

ParametersJSON Schema
NameRequiredDescriptionDefault
inputYesSearch brief: full JD, repo-derived summary (preferred when you've reviewed the project), README excerpt, informal role brief, or a PUBLIC github.com repo URL. Private repos: paste README content as text.
limitNoMax candidates to return. Default 20, max 50.
excludeNoOptional. GitHub logins or org names to exclude from results (case-insensitive). Matches a candidate's login AND the owner/org of every repo they matched on — so passing a company's GitHub org (e.g. "livekit", which also covers "livekit-cloud") keeps that company's own engineers out of a shortlist you're building FOR them. Also use it to suppress specific handles you've already contacted. Bots and CI/service accounts are excluded automatically and need not be listed.

Output Schema

ParametersJSON Schema
NameRequiredDescription
viewNoPayload discriminator for MCP App hosts
query_msNoEnd-to-end query time in milliseconds
candidatesYesRanked engineer candidates, strongest fit first. When presenting to the user, format each item using FindCandidatesPresentationTemplate from server instructions — list every contact.urls entry and every email verbatim.
total_countYesCount of candidates returned (≤ requested limit)
cache_sourceNo
Behavior4/5

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

Annotations already declare readOnly and idempotent, so description's main addition is filtering out bots/CI/service accounts and ranking logic. This adds meaningful behavioral context beyond annotations without contradiction.

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?

Well-structured: purpose first, then input options enumerated, output details, filtering, and mode instructions. Every sentence adds value without redundancy, despite being detailed.

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?

Covers input, output fields, filtering, usage boundaries with siblings, and mode-specific behavior. With output schema present, it fully equips an agent to use correctly.

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

Parameters5/5

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

Schema already covers 100%, but description adds significant nuance: input types (JD, repo summary, URL, etc.) and ranking hint ('longer input ranks better'), plus detailed exclude logic matching login AND repo owner/org.

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?

Description clearly states it searches DevMatch index for engineers matching a role/project, with specific verb 'Search' and resource 'DevMatch index'. It distinguishes from siblings by mentioning get_profile for deeper detail and implies find_similar_projects targets projects, not candidates.

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?

Explicitly describes when to use (matching engineers) and when not to call get_profile for results. Provides input format preferences, default/max limit, and exclude usage with concrete examples. Also covers agent vs human mode.

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

find_similar_projectsA
Read-onlyIdempotent
Inspect

Find open-source projects similar to a seed GitHub repo, ranked by semantic similarity to its description/topics/README. Each result includes top contributors as leads — not JD-ranked candidates. Returns structuredContent (view=similar_projects). Agents: consume structuredContent only.

Use for landscape mapping or to discover anchor repos; follow with find_candidates for hiring matches.

ParametersJSON Schema
NameRequiredDescriptionDefault
repoYesSeed repo in `owner/name` form (e.g. 'karpathy/llm.c'). A full github.com URL is also accepted; the server strips the prefix.
limitNoNumber of similar projects to return. Defaults to 10, max 25.

Output Schema

ParametersJSON Schema
NameRequiredDescription
seedNoThe owner/name searched against
projectsYesSimilar projects, ranked by vector similarity to the seed repo.
query_msNo
total_countNo
cache_sourceNo
Behavior4/5

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

Annotations already declare readOnly, openWorld, idempotent, and non-destructive. Description adds that results include top contributors as leads (not JD-ranked), and instructs agents to consume structuredContent only. No contradictions.

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?

Three concise sentences: purpose, output/consumption instruction, usage guidance. Front-loaded with key info, no wasted words.

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?

Given simple tool with 2 params, full annotations, and existing output schema, the description covers purpose, usage guidelines, output structure, and follow-up. Agents can decide and invoke correctly.

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 covers both parameters with clear descriptions (repo format, limit range, default). Description does not add new parameter details but mentions ranking by semantic similarity, which is a minor extra. With 100% schema coverage, baseline 3 is appropriate.

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?

Description clearly states it finds open-source projects similar to a seed GitHub repo, ranked by semantic similarity. This distinguishes it from sibling tools find_candidates (which finds candidates) and get_profile (profile retrieval).

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?

Explicitly says use for landscape mapping or discovering anchor repos, and follow with find_candidates for hiring matches. Provides both when to use and when not to use, with alternative specified.

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

get_profileA
Read-onlyIdempotent
Inspect

Fetch one contributor's profile card for a GitHub handle not already returned by find_candidates — e.g. the user names a specific person, references an external handle, or wants verification before outreach. find_candidates already returns full inline profiles; use get_profile only for handles outside those results or when the user asks for deeper detail.

Returns structuredContent (view=profile). Agents: consume structuredContent only.

IMPORTANT — interpreting recent_activities: indexed GitHub activity in the current ingestion window (2025–2026), up to ~20 events per recent project. NOT a complete career history. Empty or older activity does not mean inactive.

ParametersJSON Schema
NameRequiredDescriptionDefault
handleYesThe GitHub handle to look up. Plain login name, no '@' prefix (e.g. 'karpathy', not '@karpathy').

Output Schema

ParametersJSON Schema
NameRequiredDescription
bioNo
nameNo
emailNo
companyNo
html_urlNoProfile URL on GitHub
locationNo
followersNo
avatar_urlNo
login_nameYesGitHub handle
display_nameNo
public_reposNo
top_projectsNoHighest-contribution projects this user worked on
profile_readmeNoUser's profile README content if present
social_accountsNoSocial URLs (twitter, linkedin, etc.)
recent_activitiesNoIndexed GitHub events from current ingestion window (2025–2026). NOT a full career timeline.
Behavior5/5

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

Annotations already indicate readOnly, openWorld, idempotent, non-destructive. The description adds valuable context: returns structuredContent (view=profile), advises agents to consume only structuredContent, and clarifies the interpretation of recent_activities (limited to 2025-2026 ingestion window, ~20 events per project, not complete history).

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 description is reasonably concise with three short paragraphs, though it could be slightly tighter by removing redundant phrases like 'Agents: consume structuredContent only' which is implied by the previous sentence.

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?

Given the output schema exists (not needing return value explanation), the description covers all necessary behavioral context: the specific view, the limitation on recent_activities, and the relationship to find_candidates. It is complete for a simple profile lookup tool.

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 the schema already describes the 'handle' parameter with the same detail (plain login name, no '@' prefix). The description restates this but does not add new meaning beyond 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?

The description clearly states the verb 'Fetch' and the resource 'profile card' for a GitHub handle, and explicitly distinguishes its use from the sibling tool 'find_candidates' by specifying that it is for handles not already returned by find_candidates or when deeper detail is needed.

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?

The description provides explicit guidance on when to use this tool (handles outside find_candidates results, or when user asks for deeper detail) and what find_candidates already provides, helping the agent decide between the two.

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

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources