Research MCP
25 research tools through Streamable HTTP and a JSON API.
Reuse your existing account API key with Research enabled. Enable Metadata for Scholar calls and Files for CEDOA calls on that same key. Browser cookies and third-party provider keys do not authenticate this service.
Connect an AI client
Use a Streamable HTTP client with configurable authorization headers. There is no OAuth login flow. Configuration syntax varies by client; the URL and Bearer header below are the required connection values.
{
"mcpServers": {
"citedevidence-research": {
"url": "https://scholar.citedevidence.com/api/v1/research/mcp",
"headers": {
"Authorization": "Bearer YOUR_CITEDEVIDENCE_API_KEY"
}
}
}
}The transport is stateless and does not require an Mcp-Session-Id. An MCP client handles initialization and notifications. The older five-tool /mcp endpoint is for legacy integrations.
MCP transport example
- POST
/api/v1/research/mcpInitialize a connection using JSON-RPC. Advertise both JSON and event-stream response types.
curl -sS -H "Authorization: Bearer $CE_API_KEY" \ -H "Content-Type: application/json" \ -H "Accept: application/json, text/event-stream" \ --data '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-11-25","capabilities":{},"clientInfo":{"name":"research-client","version":"1"}}}' \ "https://scholar.citedevidence.com/api/v1/research/mcp"
JSON tool API
Send tool arguments directly as JSON, without a JSON-RPC wrapper. The response contains content, optional structuredContent, and isError. Inspect isError even for HTTP 200; the underlying result is commonly in structuredContent.result. Exact argument schemas are available from the authenticated catalogue and its Playground preset.
- GET
/api/v1/research/toolsLive tool catalogue and input schemas. Requires the Research use case.
- GET
/api/v1/research/sourcesSource catalogue and identifiers. Requires authentication.
- POST
/api/v1/research/tools/search_papersSearch CEDOA using Research and Files on the same key.
curl -sS -H "Authorization: Bearer $CE_API_KEY" \ -H "Content-Type: application/json" \ --data '{"query":"climate","source":"cedoa","num_results":5,"brief":false}' \ "https://scholar.citedevidence.com/api/v1/research/tools/search_papers"
Sources and content
citedevidence is Scholar metadata. cedoa only returns content-backed papers with at least one format: fulltext, xml, pdf (stored), or pdf_url (external). MCP returns links and manifests, not large PDF bytes.
External source IDs are s2, google_scholar, openalex, crossref, pubmed, arxiv, medrxiv, biorxiv, orcid, and unpaywall. Supported operations and availability vary by provider.
smart_search defaults to Scholar, CEDOA, Semantic Scholar, and Crossref with early stopping. An explicit sources list queries each selected source, up to six. Inspect source_status and partial for failures. Provenance and provider-specific citation counts are preserved, not added together.
Abstracts and snippets are not fulltext. Check source licences before reuse; external PDF links can fail or expire.
Discovery and verification
smart_search- Multi-source discovery with deduplication and provenance.
find_paper- Resolve known identifiers and enrich with local content availability.
search_papers- Search a selected source.
search_authors- Find researchers.
get_author- Retrieve a researcher profile.
get_author_works- Retrieve an author's publications.
get_author_funding- Read public ORCID funding information.
get_paper_network- Find Semantic Scholar citations and references.
recommend_papers- Get Semantic Scholar related-paper recommendations.
batch_get_papers- Look up Semantic Scholar papers in a batch.
preprints- Inspect preprint dates, recent records, and publication status.
get_institution- Retrieve OpenAlex institution information.
open_access- Resolve Unpaywall locations and enrich with CEDOA.
validate_citations- Verify identifiers; a failed lookup is not proof of nonexistence.
Literature reviews
create_review- Create a private review.
reviews- List or inspect your reviews.
delete_review- Permanently delete a review.
set_active_review- Set or clear your account's search auto-logging destination.
add_papers_to_review- Resolve and add paper identifiers.
get_review_papers- Browse and filter review papers.
update_paper_status- Update screening status.
snowball_search- Add citations and references to a review.
export_review- Export DOI lists or structured records.
prisma_counts- Compute review workflow counts.
Account cache
cache_manage- Inspect or clear only your account's research cache.
Review workflow
- Create a review with
create_review, then set its returned ID withset_active_review. - Search to log discoveries, add identifiers, or run
snowball_search. - Browse
get_review_papersand screen withupdate_paper_status. - Inspect
prisma_countsandexport_review. - Set
review_id: nullwithset_active_reviewto stop auto-logging.
All keys for one account share reviews, cache, and the active review. Search calls can log results to that active review. Confirm destructive actions such as deleting reviews or clearing caches. Counts assist reporting but do not certify methodological compliance.
Limits and recovery
Research quotas are per key and use case; inspect response headers and Account API keys for effective limits. Calls into Metadata or Files also consume those quotas. Only one tool invocation per account can run at a time, and provider limits still apply.
Tools have a 60-second deadline. A timeout may happen after a review write completes: inspect review state before retrying. Respect Retry-After on 429. Invalid keys return 401, disabled use cases 403, and unavailable authentication 503.