Skip to main content
Glama
kongyo2

EVE Tycoon MCP Server

get_market_stats

Retrieve price and volume statistics for EVE Online items in specific regions to analyze market trends and make informed trading decisions.

Instructions

Returns price and volume stats for an item type in a specific region

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
regionIdYesRegion ID
typeIdYesItem type ID
systemIdNoSystem ID to filter on
locationIdNoLocation ID (station, structure) to filter on

Implementation Reference

  • The async execute function that implements the core logic of the get_market_stats tool by constructing an API endpoint based on input parameters and fetching data from the EVE Tycoon API using the makeApiRequest helper.
    execute: async (args) => { let endpoint = `/v1/market/stats/${args.regionId}/${args.typeId}`; const params = new URLSearchParams(); if (args.systemId) { params.append('systemId', args.systemId.toString()); } if (args.locationId) { params.append('locationId', args.locationId.toString()); } if (params.toString()) { endpoint += `?${params.toString()}`; } const data = await makeApiRequest(endpoint); return JSON.stringify(data, null, 2); },
  • Zod schema defining the input parameters for the get_market_stats tool, including required regionId and typeId, and optional systemId and locationId.
    parameters: z.object({ regionId: z.number().describe("Region ID"), typeId: z.number().describe("Item type ID"), systemId: z.number().optional().describe("System ID to filter on"), locationId: z.number().optional().describe("Location ID (station, structure) to filter on"), }),
  • src/server.ts:24-56 (registration)
    The server.addTool call that registers the get_market_stats tool with FastMCP, including annotations, description, name, parameters schema, and execute handler.
    server.addTool({ annotations: { openWorldHint: true, readOnlyHint: true, title: "Get Market Stats", }, description: "Returns price and volume stats for an item type in a specific region", execute: async (args) => { let endpoint = `/v1/market/stats/${args.regionId}/${args.typeId}`; const params = new URLSearchParams(); if (args.systemId) { params.append('systemId', args.systemId.toString()); } if (args.locationId) { params.append('locationId', args.locationId.toString()); } if (params.toString()) { endpoint += `?${params.toString()}`; } const data = await makeApiRequest(endpoint); return JSON.stringify(data, null, 2); }, name: "get_market_stats", parameters: z.object({ regionId: z.number().describe("Region ID"), typeId: z.number().describe("Item type ID"), systemId: z.number().optional().describe("System ID to filter on"), locationId: z.number().optional().describe("Location ID (station, structure) to filter on"), }), });
  • Reusable helper function used by get_market_stats (and other tools) to perform fetch requests to the EVE Tycoon API endpoints.
    async function makeApiRequest(endpoint: string): Promise<any> { const url = `${BASE_URL}${endpoint}`; const response = await fetch(url); if (!response.ok) { throw new Error(`API request failed: ${response.status} ${response.statusText}`); } return response.json(); }

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/evetycoon-mcp-server'

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