@siva-sub/mcp-public-transport
Version:
A Model Context Protocol server for Singapore transport data with real-time information and routing
43 lines (42 loc) • 1.42 kB
TypeScript
import { BaseTool, ToolDefinition } from '../base.js';
import { WeatherService, WeatherConditions, WeatherAdvisory } from '../../services/weather.js';
export interface WeatherResponse {
location: {
latitude: number;
longitude: number;
name?: string;
nearestStation?: string;
};
current: {
conditions: WeatherConditions;
summary: string;
comfort: {
level: 'comfortable' | 'warm' | 'hot' | 'humid' | 'uncomfortable';
description: string;
};
};
advisories: WeatherAdvisory[];
travelImpact: {
walkingConditions: 'excellent' | 'good' | 'fair' | 'poor' | 'avoid';
recommendedActions: string[];
timeAdjustments: {
walkingTimeMultiplier: number;
waitingTimeRecommendation: string;
};
};
timestamp: string;
}
export declare class WeatherConditionsTool extends BaseTool {
private weatherService;
constructor(weatherService: WeatherService);
getDefinitions(): ToolDefinition[];
canHandle(toolName: string): boolean;
execute(toolName: string, args: unknown): Promise<any>;
private getWeatherConditions;
private getWeatherAdvisory;
private analyzeComfortLevel;
private assessTravelImpact;
private generateWeatherSummary;
private generateWaitingTimeRecommendation;
private generateActivityRecommendations;
}