Skip to main content
Glama
get-events.ts2.39 kB
import { TAKTool, ToolContext } from '../registry'; export const getCotEventsTool: TAKTool = { name: 'tak_get_cot_events', description: 'Retrieve Cursor on Target (CoT) events from TAK Server with optional filtering', category: 'cot', requiresAuth: true, requiresWrite: false, inputSchema: { type: 'object', properties: { start: { type: 'string', format: 'date-time', description: 'Start time for event query (ISO 8601)' }, end: { type: 'string', format: 'date-time', description: 'End time for event query (ISO 8601)' }, types: { type: 'array', items: { type: 'string' }, description: 'Filter by CoT types (e.g., ["a-f-G", "a-h-A"])' }, uids: { type: 'array', items: { type: 'string' }, description: 'Filter by specific UIDs' }, bbox: { type: 'array', items: { type: 'number' }, minItems: 4, maxItems: 4, description: 'Bounding box [minLon, minLat, maxLon, maxLat]' }, limit: { type: 'number', minimum: 1, maximum: 1000, default: 100, description: 'Maximum number of events to return' } } }, async handler(context: ToolContext) { const { takClient, params, logger } = context; logger.info('Retrieving CoT events', { params }); try { const events = await takClient.getCotEvents({ start: params.start ? new Date(params.start) : undefined, end: params.end ? new Date(params.end) : undefined, types: params.types, uids: params.uids, bbox: params.bbox, limit: params.limit }); logger.info(`Retrieved ${events.length} CoT events`); return { success: true, count: events.length, events: events.map(event => ({ uid: event.uid, type: event.type, callsign: event.detail?.contact?.callsign, time: event.time, stale: event.stale, location: { lat: event.point.lat, lon: event.point.lon, alt: event.point.hae }, how: event.how, detail: event.detail })) }; } catch (error) { logger.error('Failed to retrieve CoT events', error); throw error; } } };

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

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