orcid-mcp-server
Server Details
Researcher profiles, works, affiliations, funding, and peer reviews from the ORCID registry.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- cyanheads/orcid-mcp-server
- GitHub Stars
- 2
- Server Listing
- @cyanheads/orcid-mcp-server
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
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.
Tool Definition Quality
Average 4.4/5 across 9 of 9 tools scored.
Each tool targets a distinct aspect of ORCID data (profile, works, affiliations, funding, peer reviews, research resources) or distinct search mode (researcher disambiguation vs. structured registry search). The relationship between orcid_get_works and orcid_get_work_detail is clearly hierarchical, and the search tools are explicitly differentiated by use case.
All tool names follow the consistent pattern `orcid_<verb>_<resource>` with snake_case throughout. Verbs are limited to `get`, `resolve`, `search`, and resource nouns are descriptive and uniform, making the API predictable.
With 9 tools, the server covers all major ORCID profile and activity sections plus two search methods, which is well-scoped for an ORCID data retrieval service. No redundant or unnecessary tools are present.
The tool surface comprehensively covers the ORCID public data model: profile, works (with summary and detail), affiliations, funding, peer reviews, and research resources. It also includes search and disambiguation capabilities, leaving no obvious gaps for read-only ORCID interactions.
Available Tools
9 toolsorcid_get_affiliationsGet ORCID Researcher AffiliationsARead-onlyIdempotentInspect
Fetch affiliation records for an ORCID researcher. The types parameter controls which affiliation sections to return: employment, education, invited-positions, distinctions, memberships, qualifications, services, or all. Default is employment and education. Returns organization names, disambiguated organization identifiers (ROR/GRID/Ringgold), departments, roles, and date ranges. Affiliation data is self-reported; absence does not mean no affiliation.
| Name | Required | Description | Default |
|---|---|---|---|
| types | No | Which affiliation types to return. Defaults to employment and education. Use ["all"] to get every section. | |
| orcid_id | Yes | ORCID iD — bare format (0000-0001-2345-6789) or full URI (https://orcid.org/0000-0001-2345-6789). |
Output Schema
| Name | Required | Description |
|---|---|---|
| notice | No | Note when no affiliations were found — may indicate private visibility or no self-reported affiliations. |
| orcidId | Yes | Normalized ORCID iD (bare format). |
| orcidUri | Yes | Full ORCID URI. |
| affiliations | Yes | Affiliation records for the requested types. |
| requestedTypes | Yes | Affiliation types that were requested. |
| affiliationCount | Yes | Total number of affiliation records returned. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent, and closed-world behavior, so the description adds value by specifying the return fields and the caveat that affiliation data is self-reported and absence does not mean no affiliation. This warns the agent about data completeness and accuracy, which goes beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (four sentences) and front-loaded with the primary purpose. It then covers parameter behavior, return data, and a data-quality caveat—each sentence serves a distinct purpose without redundancy or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (2 params, one required), the presence of an output schema, and comprehensive annotations, the description fully covers what the tool does, what it returns, and a critical data limitation. It provides all necessary context for correct selection and invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with both 'types' and 'orcid_id' fully documented. The description's explanation of 'types' and its default mirrors the schema, adding no new information. Since the schema already provides complete parameter semantics, the description does not need to compensate, resulting in a baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb ('Fetch') and a specific resource ('affiliation records for an ORCID researcher'). It is immediately distinguishable from sibling tools by focusing on affiliation data, as opposed to funding, peer reviews, or works.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies when to use this tool: when affiliation data for an ORCID researcher is needed. It provides details on the 'types' parameter and default behavior, which helps an agent decide if this is the right endpoint, though it does not explicitly name alternatives or give exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
orcid_get_fundingGet ORCID Researcher FundingARead-onlyIdempotentInspect
Fetch funding records for an ORCID researcher: grants, contracts, awards, and salary awards. Returns funder names, funder organization identifiers, grant numbers, and funding periods. Funding data is entirely self-reported — most researchers do not enter funding even when they have grants. Absence of funding records does not imply absence of funding. When records exist they are high-value for grant tracking and funder analysis.
| Name | Required | Description | Default |
|---|---|---|---|
| orcid_id | Yes | ORCID iD — bare format (0000-0001-2345-6789) or full URI (https://orcid.org/0000-0001-2345-6789). |
Output Schema
| Name | Required | Description |
|---|---|---|
| notice | No | Note when no funding is found — absence of records does not mean absence of funding. |
| funding | Yes | Funding records associated with this ORCID iD. |
| orcidId | Yes | Normalized ORCID iD (bare format). |
| orcidUri | Yes | Full ORCID URI. |
| fundingCount | Yes | Total number of funding records returned. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark the tool as readOnly and idempotent, so the description does not need to reiterate those. It adds valuable behavioral context that funding data is entirely self-reported and often missing, which is a critical reliability caveat beyond what annotations convey. No contradiction with annotations exists.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured: a lead sentence states purpose and scope, a second sentence lists return values, and the final sentences provide essential caveats. Every sentence adds value without redundancy, making it easy for an agent to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so detailed return formatting is covered there. The description complements this with high-level return categories and the crucial caveat about self-reported data, which helps the agent interpret missing results correctly. It is complete for a simple read-only tool with one parameter.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage for the single parameter (orcid_id) is 100%, with detailed format guidance and examples. The description does not add semantics beyond the schema's parameter explanation, which is the baseline for high schema coverage. No parameter information in the description is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly specifies an action ('Fetch funding records') and a resource ('ORCID researcher') with a defined scope ('grants, contracts, awards, and salary awards'). It also lists concrete return fields (funder names, grant numbers, funding periods), which distinguishes it from sibling tools like orcid_get_affiliations or orcid_get_works.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context on when to use this tool by enumerating the funding-related content and emphasizing high-value use cases like grant tracking and funder analysis. It also gives a caveat about self-reported data, implicitly guiding expectations about real-world usage. However, it does not explicitly name alternatives or state 'when not to use,' so it falls short of a perfect 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
orcid_get_peer_reviewsGet ORCID Researcher Peer ReviewsARead-onlyIdempotentInspect
Fetch peer review activity for an ORCID researcher: convening organizations (journals and publishers), reviewer role (reviewer, editor, chair, etc.), review type, completion dates, and ISSN-keyed group identifiers. Use to assess editorial activity, journal affiliations, and the scope of a researcher's peer review contributions. Peer review records are self-reported or imported by participating publishers — coverage varies by researcher.
| Name | Required | Description | Default |
|---|---|---|---|
| orcid_id | Yes | ORCID iD — bare format (0000-0001-2345-6789) or full URI (https://orcid.org/0000-0001-2345-6789). |
Output Schema
| Name | Required | Description |
|---|---|---|
| notice | No | Note when no peer reviews are found — coverage varies by researcher and publisher participation. |
| orcidId | Yes | Normalized ORCID iD (bare format). |
| orcidUri | Yes | Full ORCID URI. |
| peerReviews | Yes | Peer review records for this ORCID iD. |
| reviewCount | Yes | Total number of peer review records returned. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover readOnlyHint and idempotentHint, so the safety profile is clear. The description adds valuable context about data provenance: 'Peer review records are self-reported or imported by participating publishers — coverage varies by researcher,' which helps interpret results and sets expectations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, front-loaded with the main action, and every sentence adds value. The first sentence defines the tool, the second gives use cases, and the third provides a caveat. No fluff or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present and only one parameter, the description is complete for this simple read-only tool. It covers purpose, usage, and data caveats without needing to explain return format, which is already in the output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully documents the single parameter orcid_id with pattern and description (schema coverage 100%). The description does not add further parameter-level detail, so the baseline score of 3 is appropriate; no missing semantics to compensate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the tool fetches peer review activity for an ORCID researcher, listing specific fields like convening organizations, reviewer role, review type, and completion dates. It clearly distinguishes from sibling tools such as orcid_get_works or orcid_get_affiliations by focusing on peer reviews.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear usage context: 'Use to assess editorial activity, journal affiliations, and the scope of a researcher's peer review contributions.' It does not explicitly mention alternatives or when not to use, but the context is specific enough to guide tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
orcid_get_profileGet ORCID Researcher ProfileARead-onlyIdempotentInspect
Fetch a researcher's public profile from ORCID: name, biography, keywords, researcher URLs, and external identifiers such as Scopus Author ID, ResearcherID, and Loop profile. This is the entry point for building a researcher dossier. Pass a bare ORCID iD (0000-0001-2345-6789) or a full URI (https://orcid.org/0000-0001-2345-6789). The profile contains only publicly visible data — researchers control visibility per field.
| Name | Required | Description | Default |
|---|---|---|---|
| orcid_id | Yes | ORCID iD — bare format (0000-0001-2345-6789) or full URI (https://orcid.org/0000-0001-2345-6789). |
Output Schema
| Name | Required | Description |
|---|---|---|
| emails | Yes | Publicly visible email addresses. |
| orcidId | Yes | Normalized ORCID iD (bare format without URI prefix). |
| keywords | Yes | Research keywords set by the researcher. |
| orcidUri | Yes | Full ORCID URI (https://orcid.org/{id}). |
| biography | No | Researcher biography, if publicly visible. |
| countries | Yes | Countries listed in the researcher's address section. |
| creditName | No | Published credit name, if set. |
| familyName | No | Family (last) name, if publicly visible. |
| givenNames | No | Given (first) name, if publicly visible. |
| researcherUrls | Yes | Researcher-provided URLs (personal site, lab page, blog, etc.). |
| externalIdentifiers | Yes | External identifiers from scholarly systems (Scopus, Web of Science, Loop, etc.). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, so the agent knows it's a safe read. The description adds a meaningful behavioral trait: the profile contains only publicly visible data because researchers control visibility per field. This goes beyond the annotations and helps the agent set expectations about data completeness.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, each earning its place: the first lists what the profile contains, the second provides usage context as the entry point, and the third covers input formats and public-visibility behavior. No wasted words, and the most important information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has a single parameter, a rich output schema, and annotations indicating a safe read operation, the description fully covers what an agent needs: the resource being fetched, contents, usage context, input format, and visibility constraints. Nothing essential is missing for correct selection and invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the schema's description for orcid_id already explains the bare format and full URI. The description essentially repeats this information without adding new semantic value, such as examples of invalid inputs or behavior for non-existent IDs. Baseline 3 is appropriate since the schema carries the parameter documentation burden.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool fetches a researcher's public profile from ORCID and lists specific contents (name, biography, keywords, URLs, external identifiers). This distinguishes it from sibling tools that fetch specific sections like affiliations or works, and it is explicitly positioned as the entry point for building a researcher dossier.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description says 'This is the entry point for building a researcher dossier,' which implies when to use it (first, to get the general profile) versus siblings that retrieve specific sections. It does not explicitly name alternatives or provide when-not-to-use guidance, but the context is clear enough for an agent to select it appropriately.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
orcid_get_research_resourcesGet ORCID Research ResourcesARead-onlyIdempotentInspect
List research resources associated with an ORCID researcher — compute allocations, equipment access, lab facilities, data resources, and clinical study registrations. This is a newer ORCID section; most researchers have no entries. Returns the resource title, hosting organization, external identifiers (often a URI to the allocation portal), and access period. Most entries are deposited by resource-allocation systems (e.g. ACCESS, XSEDE) rather than researchers themselves.
| Name | Required | Description | Default |
|---|---|---|---|
| orcid_id | Yes | ORCID iD — bare format (0000-0001-2345-6789) or full URI (https://orcid.org/0000-0001-2345-6789). |
Output Schema
| Name | Required | Description |
|---|---|---|
| notice | No | Note when no research resources are found — this section is sparsely populated across ORCID profiles. |
| orcidId | Yes | Normalized ORCID iD (bare format). |
| orcidUri | Yes | Full ORCID URI. |
| resources | Yes | Research resources associated with this ORCID iD. |
| resourceCount | Yes | Total number of research resources returned. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint, so the description's disclosure of the return fields (title, hosting organization, external identifiers, access period) and the typical deposition source adds value beyond structured metadata. It also does not contradict annotations; the description's 'List' aligns with read-only behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, each earning its place: the first states the core purpose and scope, the second sets expectations about data scarcity, and the third clarifies provenance and return fields. No filler or repetition of schema/annotation information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has a single parameter, a full output schema, and clear annotations, the description goes beyond the minimum by explaining the return contents, the typical source of entries, and the likelihood of empty results. This covers what an agent needs to select and interpret the tool correctly among many ORCID siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema for orcid_id already provides a descriptive comment and a detailed pattern, resulting in 100% schema description coverage. The tool description does not add parameter-specific guidance beyond restating that resources are associated with the ORCID researcher, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb ('List') and resource ('research resources associated with an ORCID researcher'), immediately distinguishing it from sibling tools like affiliations, funding, or works. It enumerates concrete subtypes (compute allocations, equipment access, lab facilities, data resources, clinical study registrations) which makes the scope unmistakable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The context about ORCID research resources being a newer, sparsely populated section and that most entries come from allocation systems (ACCESS, XSEDE) gives useful expectations for when to invoke this tool. It does not explicitly name alternatives or exclusion criteria, but the resource-specific scope and sibling tool names make the intended use clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
orcid_get_work_detailGet ORCID Work Details (Bulk)ARead-onlyIdempotentInspect
Fetch full detail records for 1–100 works by their put-codes in a single request. Put-codes are returned by orcid_get_works in the putCode field of each work entry. Returns the abstract (short-description), all contributors with CRediT roles, the complete external ID list (DOI, PMID, arXiv, ISBN, etc.), citation metadata (BibTeX or other formats when provided), journal title, and URL for each work. Per-record errors (not-found or inaccessible put-codes) are surfaced as error entries rather than failing the whole call.
| Name | Required | Description | Default |
|---|---|---|---|
| orcid_id | Yes | ORCID iD — bare format (0000-0001-2345-6789) or full URI (https://orcid.org/0000-0001-2345-6789). | |
| put_codes | Yes | Array of 1–100 work put-codes to fetch. Put-codes are available in the putCode field returned by orcid_get_works. |
Output Schema
| Name | Required | Description |
|---|---|---|
| works | Yes | Successfully resolved work detail records. |
| errors | Yes | Per-record errors for put-codes that could not be resolved (not found or inaccessible). Empty when all put-codes resolved successfully. |
| orcidId | Yes | Normalized ORCID iD (bare format). |
| orcidUri | Yes | Full ORCID URI. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnlyHint and idempotentHint annotations, the description discloses important error-handling behavior: per-record failures are surfaced as error entries instead of failing the whole call. It also lists what fields are returned, adding practical context beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four sentences, with the main action front-loaded. Each sentence carries information, though the third sentence lists many return fields and is somewhat long. Still, it is efficient and avoids unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the request scope (1–100), the source of identifiers, the return content, and error behavior. Given that an output schema exists and annotations declare the tool read-only/idempotent, this is nearly complete. It does not mention authentication, but the annotations imply a safe read operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers both parameters with full descriptions (pattern for orcid_id, array constraints for put_codes). The description adds the workflow hint about get_works, but this duplicates what the schema already says for put_codes, so it does not materially enhance parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific action ('Fetch full detail records for 1–100 works') and identifies the resource precisely (works by put-codes). It clearly differentiates from siblings like orcid_get_works, which lists works, because the tool fetches full detail records for specific put-codes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It connects to orcid_get_works by explaining that put-codes come from that tool, implying a workflow. However, it does not explicitly state when to avoid using this tool (e.g., for a single work) or name alternatives, though the singular/bulk distinction is implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
orcid_get_worksGet ORCID Researcher WorksARead-onlyIdempotentInspect
Retrieve works associated with an ORCID iD — publications, datasets, software, preprints, and more. Returns work summaries with put-codes, titles, types, publication dates, journal names, and all external identifiers (DOIs, PMIDs, arXiv IDs, ISBNs). The first 50 works are returned by default; workCount reports the total available, and prolific records are paged with offset and the returned nextOffset (or raise limit). Set include_external_ids to false to omit identifier lists for a lighter payload. Pass the putCode from each work to orcid_get_work_detail to retrieve the full record including abstract and contributors. External IDs are ready for chaining to Crossref, PubMed, or arXiv servers. Works are self-reported; a researcher may not have linked all their publications.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum works to return in this response (default 50, max 1000). The full list is sliced locally — page prolific records with offset and the returned nextOffset. | |
| offset | No | Zero-based index of the first work to return (default 0). Combine with limit to page through the full works list. | |
| orcid_id | Yes | ORCID iD — bare format (0000-0001-2345-6789) or full URI (https://orcid.org/0000-0001-2345-6789). | |
| include_external_ids | No | When true (default), each work carries its external identifiers (DOIs, PMIDs, arXiv IDs, ISBNs). Set false to omit them for a lighter payload when only titles, types, and dates are needed. |
Output Schema
| Name | Required | Description |
|---|---|---|
| works | Yes | Works for this ORCID iD, sliced to the requested offset and limit. |
| notice | No | Note when the works list is empty — may indicate no self-reported works or private visibility settings. |
| offset | Yes | Zero-based offset applied to the full works list for this response. |
| orcidId | Yes | Normalized ORCID iD (bare format). |
| orcidUri | Yes | Full ORCID URI. |
| truncated | Yes | True when more works are available beyond this response — fetch them with nextOffset. |
| workCount | Yes | Total works available for this ORCID iD, before offset and limit are applied. |
| nextOffset | No | Offset to pass on the next call to continue paging. Omitted when this response includes the final work. |
| returnedCount | Yes | Number of works returned in this response, after applying offset and limit. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnlyHint and idempotentHint annotations, the description adds valuable behavioral nuance: the 50-default with paging via workCount and nextOffset, the self-reported nature of works (researcher may not have linked everything), and the chaining potential of external IDs. This is independently useful context that complements the annotations without contradicting them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is efficiently compact: six sentences that each carry operational or decision-relevant information. It is front-loaded with the main purpose, then covers defaults, paging, payload customization, and related tools without redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that an output schema exists, the description needn't itemize return fields. It covers the key behavioral aspects (default limit, paging, payload option), caveats about data completeness, and integration paths (chaining identifiers, getting details). This is complete for a list tool of this complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already describes all four parameters at 100% coverage, including semantic details like 'full list is sliced locally' and how offset works. The description echoes these details (e.g., 'the returned nextOffset') but doesn't add a new layer of parameter meaning beyond what the schema provides. Per the rubric, baseline 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb ('Retrieve') and a clear resource ('works associated with an ORCID iD'), immediately distinguishing it from sibling tools. It further disambiguates by enumerating content types (publications, datasets, software, preprints) and explicitly noting it returns summaries rather than full records.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides strong context for when to use this tool: listing works, with default pagination behavior and an option to lighten the payload. It names a specific alternative (orcid_get_work_detail) for full records, but it does not explicitly contrast with all siblings like affiliations or funding tools. This is clear context, but not a comprehensive when/not-when guide.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
orcid_resolve_researcherResolve ORCID ResearcherARead-onlyIdempotentInspect
Disambiguate an author name to a verified ORCID iD. Returns ranked candidates (5 by default, up to 20 via the rows parameter) with transparent disambiguation signals: name match type (exact/partial/other-name/none), institution overlap flag, and whether a DOI or PMID anchor was used in the query. A DOI or PMID anchor is near-deterministic — it filters to researchers who have linked that specific work to their ORCID record. Use this tool (not orcid_search_researchers) when the input is an ambiguous name that needs ranked disambiguation. No synthetic scores are used — raw signals only.
| Name | Required | Description | Default |
|---|---|---|---|
| doi | No | DOI of a work authored by this researcher. Acts as a near-deterministic anchor — filters to researchers who linked this DOI to their ORCID record. | |
| name | Yes | Author name to disambiguate (full name preferred, e.g. "Jennifer Doudna" or "J. Doudna"). | |
| pmid | No | PubMed ID of a work authored by this researcher. Acts as a near-deterministic anchor — filters to researchers who linked this PMID to their ORCID record. | |
| rows | No | Maximum candidate count to return (1–20). Defaults to 5. | |
| affiliation | No | Researcher's institution or organization name. Used for institution overlap scoring and optionally as a search constraint. |
Output Schema
| Name | Required | Description |
|---|---|---|
| notice | No | Recovery hint when no candidates are found or when the anchor query failed to match. |
| queryUsed | Yes | The Solr query that produced the returned candidates — the primary query, or the final relaxed query when a fallback ran. Paired with totalFound. |
| candidates | Yes | Ranked candidates, ordered by name match quality then institution overlap. |
| totalFound | Yes | Total ORCID records matching queryUsed (the query that produced the returned candidates). |
| primaryQuery | Yes | The primary, most-constrained Solr query attempted first (name + optional anchor + optional affiliation). Always populated; equals queryUsed when no relaxed fallback ran. |
| relaxedQuery | No | Solr query used in a secondary relaxed search, if the primary returned no results. |
| primaryTotalFound | Yes | Total ORCID records matching primaryQuery. Zero when the primary query found nothing and a relaxed fallback produced the returned candidates. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint, openWorldHint, idempotentHint), the description discloses specific behavioral traits: returns ranked candidates with a default and maximum count, provides transparent disambiguation signals (name match type, institution overlap, anchor usage), and explicitly states that no synthetic scores are used — only raw signals. This adds meaningful operational transparency not captured by the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is four sentences, tightly packed with useful information. It front-loads the core action, then explains return characteristics, signals, usage guidance, and a note on methodology, with zero filler. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, the description need not detail return types, but it still explains what signals the output will contain. It covers purpose, usage context, parameter interplay (anchor near-determinism), and even warns about synthetic scores. For a moderately complex tool with 5 parameters, this description is exceptionally complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds nuance to the DOI/PMID parameters by explaining they are 'near-deterministic' anchors that filter to researchers who linked the work to their ORCID record. It also clarifies the rows parameter's default and range, which is partially redundant but reinforces the schema. The extra semantic context about anchor behavior justifies a 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb+resource combo: 'Disambiguate an author name to a verified ORCID iD.' It clearly distinguishes this tool from its sibling orcid_search_researchers by stating it provides ranked disambiguation for ambiguous names. The purpose is unambiguous and directly tied to the tool's name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'Use this tool (not orcid_search_researchers) when the input is an ambiguous name that needs ranked disambiguation.' This directly answers when to use vs. alternatives, adding a clear exclusion and naming the alternative. It also provides guidance on the DOI/PMID anchor as a near-deterministic filter, further informing usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
orcid_search_researchersSearch ORCID ResearchersARead-onlyIdempotentInspect
Search the ORCID registry using structured field parameters or raw Solr syntax. All provided structured params are ANDed together. The query field appends raw Solr syntax to the generated clause. Returns ORCID iDs with inline name and institution data — no follow-up profile fetches needed for basic disambiguation. For ranked disambiguation of an ambiguous author name, use orcid_resolve_researcher instead. The ORCID Public API caps results at 10,000 — use pagination for large result sets.
| Name | Required | Description | Default |
|---|---|---|---|
| doi | No | DOI to anchor the search. Returns researchers who have linked this DOI to their ORCID record. | |
| pmid | No | PubMed ID to anchor the search. Returns researchers who have linked this PMID to their ORCID record. | |
| rows | No | Maximum results to return (1–1000). | |
| query | No | Raw Solr query string appended to the generated clause with AND. Supports all ORCID Solr fields and boolean operators. | |
| start | No | Pagination offset (0-based), 0–10,000. The ORCID Public API rejects start > 10,000 for unauthenticated requests. | |
| ror_id | No | ROR organization ID to filter by (full URL, e.g. https://ror.org/00f54p054). Returns researchers affiliated with this organization. | |
| keyword | No | Keyword to search in the researcher's keyword fields. Phrase match. | |
| given_name | No | Researcher's given (first) name. | |
| affiliation | No | Organization name to filter by. Phrase match. | |
| family_name | No | Researcher's family (last) name. |
Output Schema
| Name | Required | Description |
|---|---|---|
| rows | Yes | Number of results returned in this response. |
| start | Yes | Pagination offset used for this response. |
| notice | No | Recovery hint when results are empty, pagination overshoots the total, or matches exceed the 10,000-offset ceiling. Absent on fully retrievable pages. |
| results | Yes | Matching researchers with inline name and institution data. |
| numFound | Yes | Total number of matching records in ORCID (before pagination). |
| nextStart | No | Offset to pass as start on the next call to continue paging. Present only when more matches remain below the ORCID Public API 10,000-offset ceiling; omitted at the final reachable page and when this response already includes the last match. |
| truncated | Yes | True when numFound exceeds the ORCID Public API's 10,000-offset retrieval ceiling, so some matches cannot be paged to with the current query. Narrow or partition the query to reach them. |
| effectiveQuery | Yes | Solr query sent to the ORCID API. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint, but the description adds crucial behavior: 'All provided structured params are ANDed together,' 'The `query` field appends raw Solr syntax,' 'Returns ORCID iDs with inline name and institution data,' and the Public API caps results at 10,000. This goes far beyond the annotation safety hints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is four sentences, front-loaded with purpose, then composition semantics, response value, alternative, and API limit. Every sentence delivers necessary information with zero redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present and strong annotations, the description covers the essential search semantics, pagination constraint, and when to use an alternative. The mention of inline data retrieval and the ANDing rule fills gaps that the schema alone cannot express, making it complete for a search tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 100% per-parameter descriptions, but the tool description adds interaction meaning not in the schema: structured params are ANDed, and the `query` field appends to the generated clause. This clarifies how parameters combine, raising it above the baseline 3 for high coverage, though individual param formats remain schema-driven.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with 'Search the ORCID registry using structured field parameters or raw Solr syntax,' clearly stating the verb, resource, and two search modes. It distinguishes itself from sibling orcid_resolve_researcher by positioning search as for broad queries and resolve as for ranked disambiguation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit guidance: 'For ranked disambiguation of an ambiguous author name, use orcid_resolve_researcher instead,' naming the alternative and when to choose it. It also advises pagination for the 10,000-result cap and explains when no follow-up profile fetches are needed, providing clear context for when this tool suffices.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Servers
- Alicense-qualityCmaintenanceEnables querying ORCID public records, including profiles, publications, employment, education, and search, through natural language or direct tool calls.6MIT
- Alicense-qualityCmaintenanceEnables searching and retrieving organization records from the Research Organization Registry, with fuzzy affiliation matching.10MIT
- AlicenseAqualityFmaintenanceFor AI agents and humans: Discover researchers, publications, datasets, and code repositories across a federated network of researcher digital twins. Compute S-Index impact metrics combining citation data from Semantic Scholar and Google Scholar with code and dataset quality scores from GitHub and Figshare.81MIT
- Flicense-qualityDmaintenanceEnables analysis of academic author networks and research collaborations by retrieving co-authors and research keywords from sources like Semantic Scholar, OpenAlex, Crossref, and Google Scholar.2
Your Connectors
Sign in to create a connector for this server.