MCPサーバー
OperatorNest tools
com.operatornest/tools
公開・接続可能
MCP 2025-11-25
このMCPでできること
Calculate API and subscription costs, meeting time zones, recurring schedules and cron matches.
機能
ツール
5
ツール
ai_api_cost
AI API cost
Estimate USD per request, day and month from token counts, caching and published batch discounts. Use for an API workload budget, not chat subscriptions. Model IDs use providerId/id from https://operatornest.com/api/models?subset=pricing; some catalog records are unavailable through MCP. Rates are from the dated catalog snapshot returned with the result.
読み取り専用
冪等
入力スキーマ
{'type': 'object', 'required': ['inputTokens', 'cachedInputTokens', 'outputTokens', 'requestsPerDay', 'requestsPerMonth', 'modelIds'], 'properties': {'modelIds': {'type': 'array', 'items': {'type': 'string', 'pattern': '\\S', 'maxLength': 200, 'minLength': 1}, 'maxItems': 20, 'minItems': 1, 'uniqueItems': True}, 'inputTokens': {'type': 'integer', 'maximum': 100000000, 'minimum': 0}, 'outputTokens': {'type': 'integer', 'maximum': 100000000, 'minimum': 0}, 'batchModelIds': {'type': 'array', 'items': {'type': 'string', 'pattern': '\\S', 'maxLength': 200, 'minLength': 1}, 'maxItems': 20, 'minItems': 0, 'description': 'Optional model IDs using a published batch discount.', 'uniqueItems': True}, 'requestsPerDay': {'type': 'integer', 'maximum': 10000000, 'minimum': 0}, 'requestsPerMonth': {'type': 'integer', 'maximum': 100000000, 'minimum': 0}, 'cachedInputTokens': {'type': 'integer', 'maximum': 100000000, 'minimum': 0}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['tool', 'input', 'units', 'method', 'assumptions', 'provenance', 'estimates'], 'properties': {'tool': {'const': 'ai-api-cost-calculator'}, 'input': {'type': 'object', 'required': ['inputTokens', 'cachedInputTokens', 'outputTokens', 'requestsPerDay', 'requestsPerMonth', 'modelIds'], 'properties': {'modelIds': {'type': 'array', 'items': {'type': 'string', 'pattern': '\\S', 'maxLength': 200, 'minLength': 1}, 'maxItems': 20, 'minItems': 1, 'uniqueItems': True}, 'inputTokens': {'type': 'integer', 'maximum': 100000000, 'minimum': 0}, 'outputTokens': {'type': 'integer', 'maximum': 100000000, 'minimum': 0}, 'batchModelIds': {'type': 'array', 'items': {'type': 'string', 'pattern': '\\S', 'maxLength': 200, 'minLength': 1}, 'maxItems': 20, 'minItems': 0, 'description': 'Optional model IDs using a published batch discount.', 'uniqueItems': True}, 'requestsPerDay': {'type': 'integer', 'maximum': 10000000, 'minimum': 0}, 'requestsPerMonth': {'type': 'integer', 'maximum': 100000000, 'minimum': 0}, 'cachedInputTokens': {'type': 'integer', 'maximum': 100000000, 'minimum': 0}}, 'additionalProperties': False}, 'units': {'type': 'object', 'additionalProperties': {'type': 'string'}}, 'method': {'type': 'string'}, 'estimates': {'type': 'array', 'items': {'type': 'object', 'required': ['modelId', 'name', 'perRequest', 'perDay', 'perMonth', 'longContext', 'batch', 'ratesPerMillion', 'sourceUrl', 'note'], 'properties': {'name': {'type': 'string'}, 'note': {'type': 'string'}, 'batch': {'type': 'boolean'}, 'perDay': {'type': ['number', 'null']}, 'modelId': {'type': 'string'}, 'perMonth': {'type': ['number', 'null']}, 'sourceUrl': {'type': 'string', 'format': 'uri'}, 'perRequest': {'type': ['number', 'null']}, 'longContext': {'type': 'boolean'}, 'ratesPerMillion': {'type': 'object', 'required': ['input', 'cachedInput', 'output'], 'properties': {'input': {'type': ['number', 'null']}, 'output': {'type': ['number', 'null']}, 'cachedInput': {'type': ['number', 'null']}}, 'additionalProperties': False}}, 'additionalProperties': False}}, 'provenance': {'type': 'object', 'additionalProperties': {'type': 'string'}}, 'assumptions': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}
ai_subscription_stack_cost
AI subscription stack cost
Total selected AI chat and coding subscriptions in USD and identify overlapping capabilities. Returns monthly charges, annual billing or twelve-charge estimates, plans and dated official sources. Use for reviewing a subscription stack, not API token costs.
読み取り専用
冪等
入力スキーマ
{'type': 'object', 'required': ['planIds'], 'properties': {'planIds': {'type': 'array', 'items': {'enum': ['chatgpt-go', 'chatgpt-plus', 'chatgpt-pro', 'claude-pro', 'claude-max-5x', 'claude-max-20x', 'google-ai-pro', 'google-ai-ultra-5x', 'google-ai-ultra-20x', 'supergrok', 'supergrok-plus', 'perplexity-pro', 'perplexity-max', 'microsoft-365-premium', 'mistral-pro', 'manus-pro', 'genspark-plus', 'cursor-pro'], 'type': 'string'}, 'maxItems': 18, 'minItems': 0, 'uniqueItems': True}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['tool', 'input', 'method', 'assumptions', 'units', 'plans', 'monthlyTotal', 'annualTotal', 'overlap', 'provenance'], 'properties': {'tool': {'const': 'ai-subscription-cost-calculator'}, 'input': {'type': 'object', 'required': ['planIds'], 'properties': {'planIds': {'type': 'array', 'items': {'enum': ['chatgpt-go', 'chatgpt-plus', 'chatgpt-pro', 'claude-pro', 'claude-max-5x', 'claude-max-20x', 'google-ai-pro', 'google-ai-ultra-5x', 'google-ai-ultra-20x', 'supergrok', 'supergrok-plus', 'perplexity-pro', 'perplexity-max', 'microsoft-365-premium', 'mistral-pro', 'manus-pro', 'genspark-plus', 'cursor-pro'], 'type': 'string'}, 'maxItems': 18, 'minItems': 0, 'uniqueItems': True}}, 'additionalProperties': False}, 'plans': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'provider', 'name', 'monthly', 'annual', 'capabilities', 'modelFamilies', 'source', 'modelSource', 'checked'], 'properties': {'id': {'type': 'string'}, 'name': {'type': 'string'}, 'annual': {'type': ['number', 'null']}, 'source': {'type': 'string'}, 'checked': {'type': 'string'}, 'monthly': {'type': 'number'}, 'provider': {'type': 'string'}, 'annualNote': {'type': 'string'}, 'sourceNote': {'type': 'string'}, 'modelSource': {'type': 'string'}, 'capabilities': {'type': 'object', 'additionalProperties': {'type': 'boolean'}}, 'modelFamilies': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}}, 'units': {'type': 'object', 'required': ['totals'], 'properties': {'totals': {'const': 'USD'}}, 'additionalProperties': False}, 'method': {'type': 'string'}, 'overlap': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'label', 'planIds'], 'properties': {'id': {'type': 'string'}, 'label': {'type': 'string'}, 'planIds': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}}, 'provenance': {'type': 'object', 'required': ['checked', 'sources'], 'properties': {'checked': {'type': 'string'}, 'sources': {'type': 'array', 'items': {'type': 'object', 'required': ['planId', 'url', 'checked'], 'properties': {'url': {'type': 'string'}, 'planId': {'type': 'string'}, 'checked': {'type': 'string'}}, 'additionalProperties': False}}}, 'additionalProperties': False}, 'annualTotal': {'type': 'number'}, 'assumptions': {'type': 'array', 'items': {'type': 'string'}}, 'monthlyTotal': {'type': 'number'}}, 'additionalProperties': False}
cron_next_runs
Cron next runs
Preview 1–10 cron matches strictly after a supplied UTC instant within 366 days, in an IANA time zone. Supports numeric stars, lists, ranges, steps and weekday names for GitHub, Cloudflare, Quartz and AWS dialects. L, W, # and named months are rejected. This does not install or run a schedule.
読み取り専用
冪等
入力スキーマ
{'type': 'object', 'required': ['expression', 'dialect', 'zone', 'after', 'count'], 'properties': {'zone': {'type': 'string', 'pattern': '\\S', 'maxLength': 100, 'minLength': 1}, 'after': {'type': 'string', 'format': 'date-time', 'maxLength': 30, 'description': 'UTC ISO instant from 2000 through 2100; matches are strictly after this instant.'}, 'count': {'type': 'integer', 'maximum': 10, 'minimum': 1}, 'dialect': {'enum': ['github', 'cloudflare', 'quartz', 'aws'], 'type': 'string'}, 'expression': {'type': 'string', 'pattern': '\\S', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['tool', 'input', 'method', 'assumptions', 'runs', 'searchDays', 'provenance'], 'properties': {'runs': {'type': 'array', 'items': {'type': 'object', 'required': ['startUtc', 'label'], 'properties': {'label': {'type': 'string'}, 'startUtc': {'type': 'string', 'format': 'date-time'}}, 'additionalProperties': False}, 'maxItems': 10}, 'tool': {'const': 'cron-expression-generator'}, 'input': {'type': 'object', 'required': ['expression', 'dialect', 'zone', 'after', 'count'], 'properties': {'zone': {'type': 'string', 'pattern': '\\S', 'maxLength': 100, 'minLength': 1}, 'after': {'type': 'string', 'format': 'date-time', 'maxLength': 30, 'description': 'UTC ISO instant from 2000 through 2100; matches are strictly after this instant.'}, 'count': {'type': 'integer', 'maximum': 10, 'minimum': 1}, 'dialect': {'enum': ['github', 'cloudflare', 'quartz', 'aws'], 'type': 'string'}, 'expression': {'type': 'string', 'pattern': '\\S', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, 'method': {'type': 'string'}, 'provenance': {'type': 'object', 'required': ['sourceUrl', 'checked'], 'properties': {'checked': {'type': 'string'}, 'sourceUrl': {'type': 'string'}}, 'additionalProperties': False}, 'searchDays': {'const': 366}, 'assumptions': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}
meeting_time_zones
Meeting time zones
Find 30-minute meeting times inside 09:00–17:00 for 2–8 people in IANA time zones. The date is local to the first person. Applies daylight saving changes; does not read calendars or send invitations.
読み取り専用
冪等
入力スキーマ
{'type': 'object', 'required': ['date', 'people'], 'properties': {'date': {'type': 'string', 'format': 'date', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'Real date from 2000-01-01 to 2100-12-31.'}, 'people': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'zone'], 'properties': {'name': {'type': 'string', 'pattern': '\\S', 'maxLength': 80, 'minLength': 1}, 'zone': {'type': 'string', 'pattern': '\\S', 'maxLength': 100, 'minLength': 1, 'description': 'An IANA time zone supported by Intl.DateTimeFormat, such as America/New_York.'}}, 'additionalProperties': False}, 'maxItems': 8, 'minItems': 2}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['tool', 'input', 'units', 'method', 'assumptions', 'provenance', 'rows', 'overlapCount', 'bestSlots'], 'properties': {'rows': {'type': 'array', 'items': {'type': 'object', 'required': ['start', 'startUtc', 'inside', 'labels', 'score'], 'properties': {'score': {'type': 'number'}, 'start': {'type': 'integer', 'description': 'Unix epoch milliseconds.'}, 'inside': {'type': 'array', 'items': {'type': 'boolean'}}, 'labels': {'type': 'array', 'items': {'type': 'string'}}, 'startUtc': {'type': 'string', 'format': 'date-time'}}, 'additionalProperties': False}}, 'tool': {'const': 'meeting-time-zone-planner'}, 'input': {'type': 'object', 'required': ['date', 'people'], 'properties': {'date': {'type': 'string', 'format': 'date', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'Real date from 2000-01-01 to 2100-12-31.'}, 'people': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'zone'], 'properties': {'name': {'type': 'string', 'pattern': '\\S', 'maxLength': 80, 'minLength': 1}, 'zone': {'type': 'string', 'pattern': '\\S', 'maxLength': 100, 'minLength': 1, 'description': 'An IANA time zone supported by Intl.DateTimeFormat, such as America/New_York.'}}, 'additionalProperties': False}, 'maxItems': 8, 'minItems': 2}}, 'additionalProperties': False}, 'units': {'type': 'object', 'additionalProperties': {'type': 'string'}}, 'method': {'type': 'string'}, 'bestSlots': {'type': 'array', 'items': {'type': 'object', 'required': ['start', 'startUtc', 'inside', 'labels', 'score'], 'properties': {'score': {'type': 'number'}, 'start': {'type': 'integer', 'description': 'Unix epoch milliseconds.'}, 'inside': {'type': 'array', 'items': {'type': 'boolean'}}, 'labels': {'type': 'array', 'items': {'type': 'string'}}, 'startUtc': {'type': 'string', 'format': 'date-time'}}, 'additionalProperties': False}, 'maxItems': 3}, 'provenance': {'type': 'object', 'additionalProperties': {'type': 'string'}}, 'assumptions': {'type': 'array', 'items': {'type': 'string'}}, 'overlapCount': {'type': 'integer', 'minimum': 0}}, 'additionalProperties': False}
recurring_schedule
Recurring schedule
Estimate monthly hours for weekly, biweekly and monthly tasks and return recurrence rules plus a complete RFC 5545 calendar. Use to prepare a schedule; no task is executed or calendar updated. Times float in the importing calendar’s local time zone.
読み取り専用
冪等
入力スキーマ
{'type': 'object', 'required': ['startDate', 'tasks'], 'properties': {'tasks': {'type': 'array', 'items': {'type': 'object', 'required': ['title', 'frequency', 'day', 'monthday', 'minutes', 'time', 'owner'], 'properties': {'day': {'enum': ['MO', 'TU', 'WE', 'TH', 'FR', 'SA', 'SU'], 'type': 'string'}, 'time': {'type': 'string', 'pattern': '^([01][0-9]|2[0-3]):[0-5][0-9]$'}, 'owner': {'enum': ['delegate', 'keep', 'decide'], 'type': 'string'}, 'title': {'type': 'string', 'pattern': '\\S', 'maxLength': 80, 'minLength': 1}, 'minutes': {'type': 'integer', 'maximum': 1440, 'minimum': 1}, 'monthday': {'type': 'integer', 'maximum': 28, 'minimum': 1}, 'frequency': {'enum': ['weekly', 'biweekly', 'monthly'], 'type': 'string'}}, 'additionalProperties': False}, 'maxItems': 20, 'minItems': 0}, 'startDate': {'type': 'string', 'format': 'date', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'Real date from 2000-01-01 to 2100-12-31.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['tool', 'input', 'units', 'method', 'assumptions', 'provenance', 'monthlyHours', 'schedules', 'ics'], 'properties': {'ics': {'type': 'string', 'description': 'RFC 5545 calendar with CRLF folding and floating local times.'}, 'tool': {'const': 'recurring-task-planner'}, 'input': {'type': 'object', 'required': ['startDate', 'tasks'], 'properties': {'tasks': {'type': 'array', 'items': {'type': 'object', 'required': ['title', 'frequency', 'day', 'monthday', 'minutes', 'time', 'owner'], 'properties': {'day': {'enum': ['MO', 'TU', 'WE', 'TH', 'FR', 'SA', 'SU'], 'type': 'string'}, 'time': {'type': 'string', 'pattern': '^([01][0-9]|2[0-3]):[0-5][0-9]$'}, 'owner': {'enum': ['delegate', 'keep', 'decide'], 'type': 'string'}, 'title': {'type': 'string', 'pattern': '\\S', 'maxLength': 80, 'minLength': 1}, 'minutes': {'type': 'integer', 'maximum': 1440, 'minimum': 1}, 'monthday': {'type': 'integer', 'maximum': 28, 'minimum': 1}, 'frequency': {'enum': ['weekly', 'biweekly', 'monthly'], 'type': 'string'}}, 'additionalProperties': False}, 'maxItems': 20, 'minItems': 0}, 'startDate': {'type': 'string', 'format': 'date', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'Real date from 2000-01-01 to 2100-12-31.'}}, 'additionalProperties': False}, 'units': {'type': 'object', 'additionalProperties': {'type': 'string'}}, 'method': {'type': 'string'}, 'schedules': {'type': 'array', 'items': {'type': 'object', 'required': ['title', 'frequency', 'day', 'monthday', 'minutes', 'time', 'owner', 'firstDate', 'recurrenceRule'], 'properties': {'day': {'enum': ['MO', 'TU', 'WE', 'TH', 'FR', 'SA', 'SU'], 'type': 'string'}, 'time': {'type': 'string', 'pattern': '^([01][0-9]|2[0-3]):[0-5][0-9]$'}, 'owner': {'enum': ['delegate', 'keep', 'decide'], 'type': 'string'}, 'title': {'type': 'string', 'pattern': '\\S', 'maxLength': 80, 'minLength': 1}, 'minutes': {'type': 'integer', 'maximum': 1440, 'minimum': 1}, 'monthday': {'type': 'integer', 'maximum': 28, 'minimum': 1}, 'firstDate': {'type': 'string', 'format': 'date'}, 'frequency': {'enum': ['weekly', 'biweekly', 'monthly'], 'type': 'string'}, 'recurrenceRule': {'type': 'string'}}, 'additionalProperties': False}}, 'provenance': {'type': 'object', 'additionalProperties': {'type': 'string'}}, 'assumptions': {'type': 'array', 'items': {'type': 'string'}}, 'monthlyHours': {'type': 'number'}}, 'additionalProperties': False}
履歴
最近のツール変更
追加
cron_next_runs
2026年10月3日2:40
追加
ai_subscription_stack_cost
2026年10月3日2:40
追加
recurring_schedule
2026年10月3日2:40
追加
meeting_time_zones
2026年10月3日2:40
追加
ai_api_cost
2026年10月3日2:40