Data source: ORCID Public API
https://context.gnist.ai/mcp/orcid/
AuthenticationAll requests require a Gnist-API-Key header (or api_key query parameter).
Free tier: 100 calls/day. Get your API key.
Tools (5)
search_researchersSearch ORCID for researchers by name, keyword, or affiliation.
ORCID is the universal researcher identifier with 20M+ profiles. Use this
to find researchers and get their canonical ORCID IDs for cross-referencing
with CrossRef, OpenAlex, and PubMed.
Args:
query: Search query — researcher name, keyword, or ORCID ID fragment.
Supports Solr syntax (e.g. "given-names:Albert AND family-name:Einstein").
affiliation: Filter by affiliated organization name (e.g. "MIT", "CERN").
rows: Number of results to return (1-50, default 10).
Returns:
Dict with 'count' (returned), 'total_results' (total matches), and 'researchers' list.
Each researcher includes orcid_id, given_name, family_name, and credit_name.
| Parameter | Type | Required | Description |
|---|---|---|---|
query | string | required | Search query — researcher name, keyword, or ORCID ID fragment. Supports Solr syntax (e.g. "given-names:Albert AND family-name:Einstein"). |
affiliation | any | optional | Filter by affiliated organization name (e.g. "MIT", "CERN"). |
rows | integer | optional | Number of results to return (1-50, default 10). (default: 10) |
{
"jsonrpc": "2.0",
"method": "tools/call",
"id": 1,
"params": {
"name": "search_researchers",
"arguments": {
"query": "example"
}
}
}get_researcher_profileFetch a researcher's full profile by ORCID ID.
Returns biographical details, keywords, employment history, and education.
Use this to understand a researcher's career trajectory and current affiliations.
Args:
orcid_id: The ORCID identifier. Accepts bare ID (e.g. "0000-0002-1825-0097")
or full URL (e.g. "https://orcid.org/0000-0002-1825-0097").
Returns:
Dict with orcid_id, given_name, family_name, credit_name, biography,
keywords, employments (organization/role/dates), and educations.
| Parameter | Type | Required | Description |
|---|---|---|---|
orcid_id | string | required | The ORCID identifier. Accepts bare ID (e.g. "0000-0002-1825-0097") or full URL (e.g. "https://orcid.org/0000-0002-1825-0097"). |
{
"jsonrpc": "2.0",
"method": "tools/call",
"id": 1,
"params": {
"name": "get_researcher_profile",
"arguments": {
"orcid_id": "123456789"
}
}
}get_researcher_worksFetch a researcher's published works by ORCID ID.
Returns publications with DOIs that can be cross-referenced with CrossRef
(resolve_doi) and OpenAlex for citation data and full metadata.
Args:
orcid_id: The ORCID identifier (bare or URL form).
max_results: Maximum number of works to return (1-100, default 25).
Returns:
Dict with 'count' and 'works' list. Each work includes title, doi,
work_type, publication_date, journal, url, and external_ids.
| Parameter | Type | Required | Description |
|---|---|---|---|
orcid_id | string | required | The ORCID identifier (bare or URL form). |
max_results | integer | optional | Maximum number of works to return (1-100, default 25). (default: 25) |
{
"jsonrpc": "2.0",
"method": "tools/call",
"id": 1,
"params": {
"name": "get_researcher_works",
"arguments": {
"orcid_id": "example"
}
}
}get_researcher_fundingFetch a researcher's grants and funding records by ORCID ID.
Returns funding sources, amounts, and dates. Useful for understanding
a researcher's funding landscape and institutional backing.
Args:
orcid_id: The ORCID identifier (bare or URL form).
Returns:
Dict with 'count' and 'fundings' list. Each funding includes title,
funder, funding_type, amount, currency, start/end dates, and url.
| Parameter | Type | Required | Description |
|---|---|---|---|
orcid_id | string | required | The ORCID identifier (bare or URL form). |
{
"jsonrpc": "2.0",
"method": "tools/call",
"id": 1,
"params": {
"name": "get_researcher_funding",
"arguments": {
"orcid_id": "example"
}
}
}report_feedbackReport a bug, feature request, or general feedback for this data source.
Use this when something doesn't work as expected, when you'd like
a new feature, or when you have suggestions for improvement.
Args:
feedback: Describe the issue or suggestion.
feedback_type: One of 'bug', 'feature_request', or 'general'.
| Parameter | Type | Required | Description |
|---|---|---|---|
feedback | string | required | |
feedback_type | string | optional | (default: "general") |
{
"jsonrpc": "2.0",
"method": "tools/call",
"id": 1,
"params": {
"name": "report_feedback",
"arguments": {
"feedback": "example"
}
}
}Quick Start
curl -X POST "https://context.gnist.ai/mcp/orcid/" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-H "Gnist-API-Key: YOUR_API_KEY" \
-d '{"jsonrpc": "2.0", "method": "tools/call", "id": 1, "params": {"name": "search_researchers", "arguments": {"query": "example"}}}'
import httpx
resp = httpx.post(
"https://context.gnist.ai/mcp/orcid/",
headers={"Gnist-API-Key": "YOUR_API_KEY", "Content-Type": "application/json"},
json={
"jsonrpc": "2.0",
"method": "tools/call",
"id": 1,
"params": {
"name": "search_researchers",
"arguments": {
"query": "example"
}
}
},
)
print(resp.json())