Skip to main content
Glama
kongyo2

EVE University Wiki MCP Server

get_eve_wiki_sections

Retrieve sections of an EVE University Wiki article by specifying its title, enabling structured access to EVE Online knowledge for AI assistants and users.

Instructions

Get the sections of an EVE University Wiki article

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
titleYesTitle of the EVE University Wiki article

Implementation Reference

  • src/server.ts:120-146 (registration)
    Registers the get_eve_wiki_sections tool with FastMCP server.addTool, including annotations, description, input schema (Zod), and inline execute handler that delegates to eveWikiClient.getSections and formats JSON response.
    server.addTool({ annotations: { openWorldHint: true, readOnlyHint: true, title: "Get EVE University Wiki Sections", }, description: "Get the sections of an EVE University Wiki article", execute: async (args) => { try { const sections = await eveWikiClient.getSections(args.title); return JSON.stringify( { sections: sections, title: args.title, }, null, 2, ); } catch (error) { return `Error getting sections: ${error}`; } }, name: "get_eve_wiki_sections", parameters: z.object({ title: z.string().describe("Title of the EVE University Wiki article"), }), });
  • Implements the core tool logic in EveWikiClient.getSections(): performs API request to MediaWiki parse endpoint to retrieve article sections, maps response to Section objects, with retryableRequest wrapper for reliability.
    async getSections(title: string): Promise<Section[]> { return this.retryableRequest(async () => { try { const response = await this.client.get("", { params: { action: "parse", format: "json", page: title, prop: "sections", }, }); if (response.data?.parse?.sections) { return response.data.parse.sections.map( (section: { index: string; level: string; line: string }) => ({ index: parseInt(section.index) || 0, level: parseInt(section.level) || 1, title: section.line, }), ); } return []; } catch (error) { console.error("Error getting sections:", error); throw new Error(`Failed to get sections for "${title}": ${error}`); } }); }
  • TypeScript interface defining the structure of a wiki Section object used in the tool's output.
    export interface Section { content?: string; index: number; level: number; title: string; }
  • The tool's execute handler function: calls the helper getSections, formats results as JSON with title, handles errors.
    execute: async (args) => { try { const sections = await eveWikiClient.getSections(args.title); return JSON.stringify( { sections: sections, title: args.title, }, null, 2, ); } catch (error) { return `Error getting sections: ${error}`; } },

Other Tools

Related Tools

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