Skip to main content
Glama
danieltyukov

IEEE Xplore MCP Server

by danieltyukov

IEEE Xplore MCP Server

MCP server that wraps the IEEE Xplore API, letting you search and retrieve academic papers from Claude Code.

Setup

  1. Get a free API key at https://developer.ieee.org

  2. Install and build:

npm install
npm run build
  1. Add to ~/.claude.json:

{
  "mcpServers": {
    "ieee-xplore": {
      "command": "node",
      "args": ["/home/danieltyukov/workspace/personal/ieee-mcp/dist/index.js"],
      "env": {
        "IEEE_API_KEY": "your-api-key-here"
      }
    }
  }
}

Related MCP server: Scholar MCP

Environment Variables

Variable

Required

Description

IEEE_API_KEY

Yes

API key from developer.ieee.org

IEEE_AUTH_TOKEN

No

Auth token for paywalled full-text access

Tools

Tool

Description

search_papers

Full-text search with Boolean operators and filters (author, year, content type, etc.)

get_paper_details

Get verbose metadata for a paper by article number or DOI

get_paper_citations

Get citation counts (papers + patents) for a paper

get_full_text

Retrieve full text (Open Access or with auth token)

search_by_author

Search papers by author name

search_by_publication

Search papers within a journal or conference

Rate Limits

The free IEEE API tier allows ~200 calls/day with up to 200 results per call.

Available Tools

6 tools
get_full_textA

Retrieve the full text of an IEEE paper by article number. Works for Open Access articles. For paywalled articles, set IEEE_AUTH_TOKEN env var. Output is truncated at ~50K characters.

ParametersJSON Schema
NameRequiredDescriptionDefault
article_numberYesIEEE article number

TDQS

A4.4/5.0
Behavior4/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It effectively describes key traits: authentication requirements for paywalled content and output truncation at ~50K characters, which are critical for agent decision-making. It doesn't cover all possible behaviors (e.g., error handling), but adds substantial value beyond basic purpose.

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?

The description is front-loaded with the core purpose, followed by essential constraints and behavioral notes in three concise sentences. Every sentence earns its place by adding critical information without redundancy or fluff, making it highly efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (single parameter, no output schema, no annotations), the description is largely complete: it covers purpose, usage guidelines, key behaviors, and output constraints. Minor gaps exist (e.g., no explicit mention of error cases), but it provides sufficient context for effective agent use.

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 description coverage is 100%, so the schema already documents the 'article_number' parameter. The description implies the parameter's role but doesn't add syntax or format details beyond what the schema provides. 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.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific action ('Retrieve the full text'), resource ('IEEE paper'), and key constraint ('by article number'), distinguishing it from sibling tools that handle citations, details, or searches. It provides precise differentiation without being vague or tautological.

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?

It explicitly states when to use this tool ('Works for Open Access articles') and when-not/alternatives ('For paywalled articles, set IEEE_AUTH_TOKEN env var'), providing clear context and prerequisites. This directly addresses usage scenarios without leaving room for ambiguity.

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

get_paper_citationsC

Get citation counts (papers and patents) for an IEEE paper.

ParametersJSON Schema
NameRequiredDescriptionDefault
article_numberNoIEEE article number
doiNoDOI of the paper

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It states what the tool does but doesn't describe how it behaves—no information about response format, error handling, rate limits, authentication requirements, or whether it's a read-only operation. For a tool with zero annotation coverage, this leaves significant gaps.

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?

The description is a single, efficient sentence that states the core purpose without unnecessary words. It's appropriately sized and front-loaded with the essential information, 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.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and output schema, the description is incomplete. It doesn't explain what the return value looks like (e.g., citation counts format, potential fields), error conditions, or behavioral traits. For a tool with 2 parameters and no structured output documentation, the description should provide more context about the operation's results and limitations.

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 description coverage is 100%, so the schema already fully documents both parameters (article_number and doi). The description doesn't add any parameter-specific information beyond what's in the schema, such as format examples or usage constraints. Baseline 3 is appropriate when the schema does all the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('Get') and resource ('citation counts for an IEEE paper'), specifying it includes both papers and patents. However, it doesn't differentiate from sibling tools like 'get_paper_details' which might also provide citation information, so it lacks explicit sibling distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'get_paper_details' or 'search_papers'. It doesn't mention prerequisites, exclusions, or contextual factors that would help an agent choose between similar tools.

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

get_paper_detailsA

Get detailed metadata for a single IEEE paper by article number or DOI. Returns full author affiliations, abstract, keywords, citation counts, and URLs.

ParametersJSON Schema
NameRequiredDescriptionDefault
article_numberNoIEEE article number
doiNoDOI of the paper

TDQS

A3.7/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden. It discloses the return content (author affiliations, abstract, etc.) and that it's a read operation ('Get'), but lacks details on error handling, rate limits, authentication needs, or response format. It adds some behavioral context but is incomplete.

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?

The description is front-loaded with the core purpose, followed by specifics on returns. It uses two efficient sentences with zero waste, making it easy to parse and understand quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations, no output schema, and a simple input schema, the description is adequate for a read-only tool but lacks details on error cases, response structure, or limitations. It covers the basics but could be more complete for agent usage.

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 description coverage is 100%, so the schema already documents both parameters. The description adds that these are identifiers for retrieving metadata, but does not provide additional syntax, format, or usage details beyond what the schema provides. 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?

The description clearly states the specific action ('Get detailed metadata'), resource ('a single IEEE paper'), and scope ('by article number or DOI'). It distinguishes from siblings like 'get_full_text' (which likely retrieves content) and 'search_papers' (which searches multiple papers).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for retrieving detailed metadata of a single paper, but does not explicitly state when to use this tool versus alternatives like 'search_by_author' or 'get_paper_citations'. No exclusions or prerequisites are mentioned.

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

search_by_authorA

Search IEEE Xplore for papers by a specific author. Convenience wrapper around search_papers with author as the primary filter.

ParametersJSON Schema
NameRequiredDescriptionDefault
authorYesAuthor name to search for
start_yearNoStart of year range
end_yearNoEnd of year range
content_typeNoFilter by content type: Conferences, Journals, Early Access, Standards, Books, Courses
publication_titleNoFilter by publication / journal / conference name
max_recordsNoNumber of results (default 25, max 200)
start_recordNoStarting record for pagination

TDQS

A3.7/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure but provides minimal information. It mentions this is a 'convenience wrapper' which implies it's a specialized version of search_papers, but doesn't describe what the tool actually returns (paper metadata? full results?), pagination behavior, rate limits, authentication requirements, or error conditions. For a search tool with 7 parameters, this is insufficient behavioral context.

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?

The description is perfectly concise with just two sentences that each earn their place. The first sentence states the core purpose, and the second provides important contextual information about its relationship to sibling tools. There's zero wasted language or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (7 parameters, no output schema, no annotations), the description is adequate but incomplete. It explains the tool's purpose and relationship to siblings well, but lacks information about what the tool returns, error handling, or behavioral characteristics. Without annotations or output schema, the description should provide more complete context for effective tool use.

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?

The schema description coverage is 100%, so all parameters are documented in the schema itself. The description doesn't add any meaningful parameter semantics beyond what's already in the schema - it only mentions 'author as the primary filter' which is already clear from the required parameter. This meets the baseline expectation when schema coverage is complete.

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 tool's purpose with specific verb ('Search') and resource ('IEEE Xplore for papers by a specific author'), and explicitly distinguishes it from sibling tool 'search_papers' by noting it's a 'convenience wrapper' with author as the primary filter. This provides excellent differentiation from alternatives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context by stating this is a 'convenience wrapper around search_papers with author as the primary filter,' which helps understand when to use this versus the more general search_papers. However, it doesn't explicitly state when NOT to use this tool or compare it to other siblings like search_by_publication, which prevents a perfect score.

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

search_by_publicationA

Search IEEE Xplore for papers in a specific publication (journal/conference). Convenience wrapper around search_papers with publication_title as the primary filter.

ParametersJSON Schema
NameRequiredDescriptionDefault
publication_titleYesPublication, journal, or conference name
querytextNoAdditional search query within the publication
start_yearNoStart of year range
end_yearNoEnd of year range
max_recordsNoNumber of results (default 25, max 200)
start_recordNoStarting record for pagination
sort_fieldNoSort by: article_title, publication_year, etc.
sort_orderNoSort order: asc or desc

TDQS

A3.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. While it mentions being a 'convenience wrapper,' it doesn't disclose important behavioral traits like rate limits, authentication requirements, pagination behavior beyond parameters, error conditions, or what format results return. For a search tool with 8 parameters and no annotations, this is insufficient.

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?

Two concise sentences that are front-loaded with the core purpose. Every word earns its place: first sentence states what it does, second sentence clarifies its relationship to sibling tool and primary parameter. No wasted words or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a search tool with 8 parameters, no annotations, and no output schema, the description is adequate but has clear gaps. It explains the purpose and relationship to alternatives well, but doesn't address behavioral aspects like result format, limitations, or error handling that would be important for an agent to use it effectively.

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 description coverage is 100%, so the schema already documents all 8 parameters thoroughly. The description adds minimal value beyond the schema, only mentioning 'publication_title as the primary filter' which is already clear from the required parameter and schema description. Baseline 3 is appropriate when schema does the heavy lifting.

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 tool searches IEEE Xplore for papers in a specific publication, distinguishing it from sibling tools like search_papers (general search) and search_by_author (author-focused). It specifies 'journal/conference' scope and mentions it's a convenience wrapper with publication_title as primary filter.

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 states when to use this tool ('Search IEEE Xplore for papers in a specific publication') and provides clear alternatives ('Convenience wrapper around search_papers with publication_title as the primary filter'), distinguishing it from the more general search_papers tool.

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

search_papersB

Search IEEE Xplore for papers. Supports full-text search with Boolean operators (AND, OR, NOT) and multiple filters. Returns metadata, abstracts, and links.

ParametersJSON Schema
NameRequiredDescriptionDefault
querytextNoFull-text search query. Supports AND, OR, NOT operators.
authorNoFilter by author name
article_titleNoSearch within article titles
abstractNoSearch within abstracts
affiliationNoFilter by author affiliation
index_termsNoSearch by index terms / keywords
doiNoSearch by DOI
publication_titleNoFilter by publication / journal / conference name
publication_yearNoFilter by publication year (e.g. '2023')
start_yearNoStart of year range (e.g. '2020')
end_yearNoEnd of year range (e.g. '2024')
content_typeNoFilter by content type: Conferences, Journals, Early Access, Standards, Books, Courses
open_accessNoFilter for open access articles only
max_recordsNoNumber of results to return (default 25, max 200)
start_recordNoStarting record number for pagination (default 1)
sort_fieldNoSort by: article_title, article_number, author, publication_title, publication_year
sort_orderNoSort order: asc or desc

TDQS

B3.3/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions what the tool does (search with filters) and what it returns (metadata, abstracts, links), but lacks details on permissions, rate limits, pagination behavior, or error handling. For a tool with 17 parameters and no annotation coverage, this is insufficient.

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?

The description is front-loaded and efficient: two sentences that cover purpose, capabilities, and return values without waste. Every sentence earns its place by adding distinct information (search scope and output).

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (17 parameters, no annotations, no output schema), the description is adequate but incomplete. It covers the basic purpose and output but lacks behavioral context (e.g., pagination, limits) and usage guidelines relative to siblings. Without an output schema, it should ideally describe return format more thoroughly.

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 description coverage is 100%, so the schema already documents all parameters thoroughly. The description adds minimal value beyond the schema by mentioning Boolean operators and filters, but doesn't provide additional syntax, examples, or constraints. 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.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific action ('Search IEEE Xplore for papers'), resource ('papers'), and scope ('full-text search with Boolean operators and multiple filters'). It distinguishes from siblings like 'search_by_author' or 'search_by_publication' by emphasizing comprehensive search capabilities.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like 'search_by_author' or 'search_by_publication' is provided. The description mentions filters but doesn't specify scenarios where this tool is preferred over sibling tools, leaving usage context implied rather than explicit.

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

TDQS

A3.8/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose: get_full_text retrieves full text, get_paper_citations gets citation counts, get_paper_details fetches metadata, search_papers performs general searches, and search_by_author and search_by_publication are specialized search wrappers. The descriptions explicitly differentiate them, with no overlap in functionality that could cause misselection.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern using snake_case: get_full_text, get_paper_citations, get_paper_details, search_by_author, search_by_publication, and search_papers. The naming is predictable and readable throughout, with no deviations or mixed conventions.

Tool Count5/5

With 6 tools, the count is well-scoped for an IEEE Xplore server, covering core operations like retrieving papers, getting details, and searching. Each tool earns its place by addressing specific needs without being too thin or overwhelming, fitting typical server scopes of 3-15 tools.

Completeness4/5

The tool set provides strong coverage for searching and retrieving IEEE papers, including metadata, citations, and full text. Minor gaps exist, such as no explicit tools for updating or deleting data (though likely not needed for this read-heavy domain) or advanced features like filtering by date or citation trends, but agents can work around these with the available search capabilities.

Maintenance

ActivitySlowing
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables searching and retrieving academic papers from arXiv and DBLP databases with advanced filtering options. Supports downloading PDFs and provides detailed paper information including titles, authors, abstracts, and publication dates.
    78
    3
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables searching and retrieving academic paper metadata from Semantic Scholar, including paper details, citations, and author information.
    21
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables users to search and analyze academic papers from multiple sources, fetch metadata and full text, and build structured outputs like literature maps and paper comparisons.
    14
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/danieltyukov/ieee-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server