Skip to main content
Glama
kongyo2

EVE University Wiki MCP Server

by kongyo2

EVE University Wiki MCP Server

A Model Context Protocol (MCP) server that provides access to EVE University Wiki content with automatic Wayback Machine fallback for enhanced reliability.

This server enables AI assistants to search, retrieve, and explore EVE Online knowledge from the comprehensive EVE University Wiki, making it an invaluable resource for EVE Online players, developers, and enthusiasts.

Features

  • Comprehensive Search: Search across all EVE University Wiki articles with intelligent result ranking

  • Full Article Access: Retrieve complete article content with proper formatting

  • Article Summaries: Get concise summaries for quick information overview

  • Section Navigation: Browse article sections and structure

  • Link Discovery: Find related articles through internal wiki links

  • Related Topics: Discover related content based on article categories

  • Wayback Machine Fallback: Automatic fallback to Internet Archive when primary wiki is unavailable

  • Robust Error Handling: Graceful degradation with retry mechanisms

  • Rate Limiting: Built-in request throttling to respect server resources

Related MCP server: WebSearch-MCP

Tools Available

1. search_eve_wiki

Search for articles on EVE University Wiki

  • Parameters:

    • query (string): Search query

    • limit (number, 1-50, default: 10): Maximum results to return

  • Returns: Array of search results with titles, snippets, and metadata

2. get_eve_wiki_article

Retrieve full content of a specific wiki article

  • Parameters:

    • title (string): Article title

  • Returns: Complete article content

3. get_eve_wiki_summary

Get a concise summary of an article

  • Parameters:

    • title (string): Article title

  • Returns: Article summary/extract

4. get_eve_wiki_sections

List all sections within an article

  • Parameters:

    • title (string): Article title

  • Returns: Array of sections with titles, levels, and indices

5. get_eve_wiki_links

Get all internal links from an article

  • Parameters:

    • title (string): Article title

  • Returns: Array of linked article titles

6. get_eve_wiki_related_topics

Find related articles based on categories

  • Parameters:

    • title (string): Article title

    • limit (number, 1-20, default: 10): Maximum related topics to return

  • Returns: Array of related article titles

Resources

  • EVE University Wiki Info: Basic information about the EVE University Wiki

Prompts

  • eve-wiki-search-helper: Generates optimized search queries for EVE University Wiki based on user questions

Installation & Setup

Installing via Smithery

To install eve-university-wiki-mcp-server for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @kongyo2/eve-university-wiki-mcp-server --client claude

Prerequisites

  • Node.js 18+

  • npm or yarn

Install Dependencies

npm install

Development

Start the server in development mode with interactive CLI:

npm run dev

Production

Build and start the server:

npm run build
npm run start

Usage with MCP Clients

Claude Desktop

Add to your Claude Desktop configuration:

{
  "mcpServers": {
    "eve-university-wiki": {
      "command": "npx",
      "args": ["tsx", "/path/to/eve-university-mcp/src/server.ts"],
      "env": {}
    }
  }
}

Other MCP Clients

The server uses stdio transport and follows the MCP specification, making it compatible with any MCP client.

Example Usage

// Search for EVE Online ships
await callTool("search_eve_wiki", { 
  query: "Rifter frigate", 
  limit: 5 
});

// Get detailed information about a specific ship
await callTool("get_eve_wiki_article", { 
  title: "Rifter" 
});

// Get a quick summary
await callTool("get_eve_wiki_summary", { 
  title: "Rifter" 
});

// Find related topics
await callTool("get_eve_wiki_related_topics", { 
  title: "Rifter", 
  limit: 10 
});

Wayback Machine Fallback

When the primary EVE University Wiki is unavailable, the server automatically attempts to retrieve content from the Internet Archive's Wayback Machine. This ensures continued access to EVE Online knowledge even during wiki downtime.

Archived content is clearly marked in responses with:

  • source: "wayback_machine" field

  • pageid: -1 to indicate archived content

  • Descriptive notes about the content source

Development

Testing

Run the comprehensive test suite:

npm run test

The test suite covers:

  • All tool functionality

  • Error handling scenarios

  • Parameter validation

  • Response formatting

  • Wayback Machine fallback

Linting & Formatting

npm run lint    # Check code style
npm run format  # Fix formatting issues

Code Quality

This project uses:

Architecture

The server is built with:

  • FastMCP: High-performance MCP server framework

  • Axios: HTTP client with retry logic and timeout handling

  • Cheerio: HTML parsing for Wayback Machine content

  • Zod: Runtime type validation for parameters

Contributing

  1. Fork the repository

  2. Create a feature branch

  3. Make your changes with tests

  4. Run npm run lint and npm run test

  5. Submit a pull request

License

MIT License - see LICENSE file for details.

Available Tools

6 tools
get_eve_wiki_articleA
Read-only

Get the full content of an EVE University Wiki article (with Wayback Machine fallback)

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYesTitle of the EVE University Wiki article

TDQS

A4.2/5.0
Behavior4/5

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

Annotations provide readOnlyHint=true and openWorldHint=true, indicating a safe read operation with potentially unknown outputs. The description adds valuable context beyond this by mentioning the 'Wayback Machine fallback', which implies resilience behavior not covered by annotations. It does not contradict annotations, as 'Get' aligns with read-only.

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 front-loads the core purpose ('Get the full content') and includes essential context ('with Wayback Machine fallback') without unnecessary words. Every part earns its place, making it highly concise and well-structured.

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 low complexity (1 parameter, no output schema) and rich annotations (readOnlyHint, openWorldHint), the description is mostly complete. It covers the purpose and a key behavioral trait (fallback), but lacks details on output format or error handling, which could be useful despite the annotations.

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%, with the parameter 'title' clearly documented in the schema. The description does not add any additional meaning or details about the parameter beyond what the schema provides, such as format examples or constraints, so it meets the baseline for high schema coverage.

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 the full content') and resource ('EVE University Wiki article'), distinguishing it from siblings like get_eve_wiki_summary (which likely provides a summary) and get_eve_wiki_sections (which might list sections). The mention of 'Wayback Machine fallback' adds unique scope, further differentiating it.

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 implies usage context by specifying 'full content' and 'Wayback Machine fallback', suggesting this tool is for retrieving complete articles, possibly when the main source is unavailable. However, it does not explicitly state when to use it versus alternatives like get_eve_wiki_summary or search_eve_wiki, leaving some ambiguity.

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

get_eve_wiki_sectionsB
Read-only

Get the sections of an EVE University Wiki article

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYesTitle of the EVE University Wiki article

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already provide readOnlyHint=true and openWorldHint=true, indicating this is a safe read operation with potentially unknown data. The description adds value by specifying it retrieves 'sections' of articles, which clarifies the scope beyond what annotations cover, but it doesn't detail behavioral traits like rate limits, error handling, or output format.

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, clear sentence that directly states the tool's purpose without any unnecessary words. It is front-loaded and efficiently conveys the essential information, making it highly concise and well-structured.

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 has one parameter with full schema coverage and annotations covering safety and data scope, the description is adequate for a basic read operation. However, without an output schema, it doesn't explain return values or structure, and it lacks usage guidelines, leaving some gaps in context for optimal 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%, with the 'title' parameter fully documented in the schema. The description doesn't add any extra meaning or context about the parameter beyond what the schema provides, such as formatting examples or constraints, so it meets the baseline for high schema coverage.

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 the resource 'sections of an EVE University Wiki article', which is specific and unambiguous. However, it doesn't explicitly differentiate from sibling tools like 'get_eve_wiki_article' or 'get_eve_wiki_summary', which might retrieve different aspects of wiki content, so it doesn't reach the highest score.

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 such as 'get_eve_wiki_article' or 'get_eve_wiki_summary'. It lacks any context about use cases, exclusions, or prerequisites, leaving the agent to infer usage from the tool name alone.

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

get_eve_wiki_summaryA
Read-only

Get a summary of an EVE University Wiki article (with Wayback Machine fallback)

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYesTitle of the EVE University Wiki article

TDQS

A4/5.0
Behavior4/5

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

Annotations provide readOnlyHint=true and openWorldHint=true, indicating safe read operations and potential unknown inputs. The description adds valuable context by mentioning the 'Wayback Machine fallback', which is not covered by annotations and informs about reliability and data retrieval behavior beyond basic hints.

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 front-loads the core purpose and includes the fallback detail without unnecessary words. Every part of the sentence contributes directly to understanding the tool's function.

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 low complexity (one parameter, read-only, open-world) and lack of output schema, the description is reasonably complete. It covers the main action and fallback mechanism, though it could benefit from more detail on output format or error handling to be fully comprehensive.

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 input schema has 100% description coverage, with the 'title' parameter clearly documented. The description does not add any additional meaning or details about the parameter beyond what the schema provides, so it meets the baseline for high schema coverage without extra value.

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 action ('Get a summary') and resource ('EVE University Wiki article'), and distinguishes it from siblings by specifying the fallback mechanism ('with Wayback Machine fallback'). This is specific and differentiates it from tools like 'get_eve_wiki_article' or 'search_eve_wiki'.

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 summaries rather than full articles or other data, but does not explicitly state when to use this tool versus alternatives like 'get_eve_wiki_article' or 'search_eve_wiki'. No exclusions or clear alternatives are named, leaving some ambiguity.

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

search_eve_wikiA
Read-only

Search for articles on EVE University Wiki (with Wayback Machine fallback)

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of results to return
queryYesSearch query for EVE University Wiki

TDQS

A4/5.0
Behavior3/5

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

Annotations already provide readOnlyHint=true and openWorldHint=true, indicating a safe read operation with open-world data. The description adds value by disclosing the 'Wayback Machine fallback' behavior, which is not covered by annotations. However, it lacks details on rate limits, error handling, or response format, leaving some behavioral traits unspecified.

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 front-loads the core purpose ('Search for articles on EVE University Wiki') and adds a critical behavioral detail ('with Wayback Machine fallback') without any wasted words. It is appropriately sized and structured for clarity.

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 (search with fallback), rich annotations (readOnlyHint, openWorldHint), and 100% schema coverage, the description is mostly complete. It covers the purpose and a key behavioral trait. However, without an output schema, it does not explain return values or result structure, which is a minor gap.

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%, with clear descriptions for both parameters (query and limit). The description does not add any additional meaning beyond what the schema provides, such as search syntax or result ordering. Baseline 3 is appropriate since the schema adequately documents the parameters.

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 for articles') and target resource ('EVE University Wiki'), and distinguishes it from sibling tools by mentioning the unique 'Wayback Machine fallback' feature. It uses a precise verb ('Search') rather than 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 Guidelines4/5

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

The description implicitly suggests using this tool for searching articles on the EVE University Wiki, which provides clear context. However, it does not explicitly state when to use this versus the sibling tools (e.g., get_eve_wiki_article for specific articles), nor does it mention exclusions or alternatives beyond the fallback.

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

TDQS

A4/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose targeting different aspects of wiki articles: retrieving full content, links, related topics, sections, summaries, or searching. No overlap exists between these functions, making tool selection straightforward for an agent.

Naming Consistency5/5

All tools follow a consistent 'get_eve_wiki_X' or 'search_eve_wiki' pattern with snake_case, using descriptive nouns (article, links, topics, sections, summary, search) that clearly indicate their function. This uniformity enhances predictability and usability.

Tool Count5/5

With 6 tools, this server is well-scoped for its purpose of interacting with the EVE University Wiki. Each tool serves a specific and necessary function, such as retrieving content, exploring structure, or searching, without being overly sparse or bloated.

Completeness5/5

The tool set provides comprehensive coverage for wiki interaction, including retrieval of full articles, summaries, sections, links, and related topics, plus search functionality. This covers typical agent workflows for information gathering and exploration without obvious gaps.

Maintenance

ActivityInactive
ResponsivenessNo issues

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
    A
    maintenance
    An MCP (Model Context Protocol) server that provides Google search capabilities and webpage content analysis tools. This server enables AI models to perform Google searches and analyze webpage content programmatically.
    27
    256
    ISC
  • A
    license
    B
    quality
    C
    maintenance
    A Model Context Protocol server that enables AI assistants to perform real-time web searches, retrieving up-to-date information from the internet via a Crawler API.
    1
    62
    40
    ISC
  • A
    license
    A
    quality
    C
    maintenance
    A Model Context Protocol server that allows AI assistants and applications to access IQ.wiki data, enabling retrieval of specific wikis, user-created wikis, user-edited wikis, and detailed wiki activities.
    5
    19
    2
    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/kongyo2/EVE-University-Wiki-MCP-Server'

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