Skip to main content
Glama

OperatorNest tools

Hosted MCP endpoint: https://operatornest.com/mcp (Streamable HTTP, no API key).

Five deterministic cost, time-zone and scheduling calculations use bundled data and the same tool definitions over HTTP and stdio, returning normalized inputs, units, method, assumptions, dated sources and a link to open each result on OperatorNest. No network calls. The TypeScript source is included; calculations do not create events, install schedules or execute tasks.

Tool

Result

ai_api_cost

USD per request, day and month from token counts and selected model rates

meeting_time_zones

Shared 30-minute slots within 09:00–17:00 for 2–8 people

recurring_schedule

Monthly hours, recurrence rules and an RFC 5545 calendar

ai_subscription_stack_cost

Monthly and annual totals with overlapping capabilities

cron_next_runs

1–10 matches after a UTC instant, within 366 days

The justfile installs frozen dependencies, checks prerequisites and runs the build and tests:

just setup
just doctor
just check

Self-hosting

For checkout development, run just setup to install Node 26 and pnpm 12. The published package supports Node.js 22.19 or newer.

git clone https://github.com/OperatorNest/mcp-tools.git
cd mcp-tools
pnpm install --frozen-lockfile
pnpm test:local
pnpm build
node dist/stdio.js

For a client with stdio support, use node with the absolute path to dist/stdio.js as its argument to serve newline-delimited MCP messages on stdin/stdout, keeping protocol traffic separate from the logs written to stderr.

The package is prepared as @operatornest/mcp-tools version 1.1.0. To run a local package through npx before registry publication:

pnpm pack --out /tmp/operatornest-mcp-tools-1.1.0.tgz
npx --yes --package /tmp/operatornest-mcp-tools-1.1.0.tgz operatornest-mcp-tools

After npm publication, the equivalent command is npx --yes @operatornest/mcp-tools@1.1.0. Publication is a separate maintainer action.

HTTP Worker

src/worker.ts exports a standalone Worker with an /mcp endpoint. Use your own Worker configuration; wrangler.jsonc is a local starting point. Run it locally with:

pnpm dev:worker --port 8787

Connect a client to http://localhost:8787/mcp. For remote hosting, follow the Worker setup documentation in your own account.

The HTTP handler uses stateless JSON responses without sessions or subscription streams, caps request bodies at 32 KiB, rejects JSON-RPC batches and returns generic errors, with CORS for HTTPS origins and local-origin access to local endpoints.

Rate limiting is optional. To enable it, configure an MCP_LIMITER rate-limit binding. When present, it uses a SHA-256 hash of CF-Connecting-IP; rejection returns HTTP 429 with Retry-After: 60. Missing client IP or a binding error returns HTTP 503. No binding means no rate limiting.

Related MCP server: mcp-agent-cost-optimizer

Client setup

These snippets connect to the hosted endpoint. Substitute your own HTTPS /mcp URL to use your HTTP instance. Setup documentation checked on 2 October 2026; account and workspace controls may affect tool access.

ChatGPT

Enable Developer mode in Settings → Security and login. In Plugins, use the plus button to create a developer-mode app with this URL and No Authentication:

https://operatornest.com/mcp

Select the app from Developer mode in the conversation's plus menu. Official instructions.

Claude

In Claude, open Customize → Connectors, select Add custom connector, and enter https://operatornest.com/mcp. Choose No sign in and add the connector. Enable it for your conversation from the plus menu's Connectors list. Organization owners may need to add it first. Official connector instructions.

For Claude Code:

claude mcp add --transport http operatornest https://operatornest.com/mcp

Check the connection with /mcp. Official instructions.

Codex

codex mcp add operatornest --url https://operatornest.com/mcp

Alternatively, in ~/.codex/config.toml:

[mcp_servers.operatornest]
url = "https://operatornest.com/mcp"

Official instructions.

Cursor

Add to .cursor/mcp.json in your project, or ~/.cursor/mcp.json for all projects:

{
  "mcpServers": {
    "operatornest": { "url": "https://operatornest.com/mcp" }
  }
}

Official instructions.

Gemini CLI

Add to ~/.gemini/settings.json:

{
  "mcpServers": {
    "operatornest": { "httpUrl": "https://operatornest.com/mcp" }
  }
}

Official instructions.

VS Code

Add .vscode/mcp.json to your project:

{
  "servers": {
    "operatornest": { "type": "http", "url": "https://operatornest.com/mcp" }
  }
}

Start the server from the configuration file and enable its tools in Agent mode. Official instructions.

Data and limits

API rates are frozen at 2026-09-28T17:08:16.340Z in src/data/pricing-snapshot.json, containing 194 models from models.dev. This is the hosted MCP's filtered snapshot. Use the bundled modelId values; the broader website catalog can include records this server does not accept. Null rates stay unlisted. Caching falls back to the input rate when absent; batch discounts require published data. Non-token charges are excluded.

Subscription plans are in src/data/ai-plans.ts, checked on 27 September 2026 with official source links. Annual totals use published annual charges, or twelve monthly charges when no annual charge is listed. Taxes, regional differences and promotions are excluded.

Meeting and cron results use the runtime's IANA time-zone database. Recurring calendars use floating local times in the importing calendar. Cron supports numeric stars, lists, ranges, steps and weekday names across GitHub, Cloudflare, Quartz and AWS dialects; L, W, # and named months are rejected. Results describe estimates and schedule previews.

Development

pnpm check
pnpm test:local
pnpm build
pnpm dlx @modelcontextprotocol/inspector --cli node dist/stdio.js \
  --method tools/call --tool-name cron_next_runs \
  --tool-arg 'expression=0 9 * * 1-5' --tool-arg dialect=github \
  --tool-arg zone=UTC --tool-arg after=2026-10-02T00:00:00Z --tool-arg count=1

Tests validate input and output schemas, valid and invalid calls, HTTP limits, and initialize/list/call on both transports. See Inspector CLI documentation, contribution guidance, security reporting and data attribution.

MIT. Copyright (c) 2026 OperatorNest.

Available Tools

5 tools
ai_api_costAI API costA
Read-onlyIdempotent
Inspect

Estimate API workload costs in USD per request, day and month, with rates and dated snapshot provenance. Use for token budgets; use ai_subscription_stack_cost for chat or coding subscriptions. Model IDs use providerId/id from https://operatornest.com/api/models?subset=pricing, filtered to the MCP catalog; the OSS bundle lists accepted IDs in src/data/pricing-snapshot.json. Rates stay offline until the catalog is updated; missing rates return null. Cached tokens are part of total input; published batch and long-context rates apply only when eligible. Non-token charges are excluded.

Inputs: modelIds (required), inputTokens (required), outputTokens (required), requestsPerDay (required), +3 more. Returns: API token cost estimates with normalized inputs, USD units, rate assumptions an…

ai_subscription_stack_costAI subscription stack costA
Read-onlyIdempotent
Inspect

Total selected AI chat and coding subscriptions in USD and identify overlapping capabilities. Use to review a subscription stack; use ai_api_cost for API token charges. Select unique planIds from the schema enum; [] returns zero totals and no plans. Returns monthly and annual totals, selected plans, capability groups and dated official sources. Annual totals use published annual billing or twelve monthly charges; taxes, regional differences and promotions are excluded. Bundled rates are dated estimates, without live billing lookup or subscription changes.

Inputs: planIds (required). Returns: Subscription totals, capability overlap and dated plan sources with normalized…

cron_next_runsCron next runsA
Read-onlyIdempotent
Inspect

Preview up to 10 cron matches strictly after a supplied UTC instant, within a 366-day search. Use to check existing scheduler syntax; use recurring_schedule to draft task recurrence calendars or meeting_time_zones for participant overlap. Returns UTC starts, local labels, normalized inputs and a dated syntax source; fewer matches or [] means the search window ended. Supports numeric stars, lists, ranges, steps and weekday names in the selected dialect; rejects L, W, # and named months. cloudflare requires UTC; other zones follow runtime daylight saving transitions. No schedule is installed or run.

Inputs: zone (required), after (required), count (required), dialect (required), +1 more. Returns: Bounded cron preview with normalized syntax, UTC starts, local labels and sched…

meeting_time_zonesMeeting time zonesA
Read-onlyIdempotent
Inspect

Find shared 30-minute meeting slots inside 09:00–17:00 for 2–8 participants. Use to compare workday overlap; use recurring_schedule for repeating task calendars or cron_next_runs for scheduler previews. Returns all candidates, overlap count and up to three best slots ranked nearest to each person’s 13:00, with UTC starts and local labels. The date belongs to the first participant’s zone; daylight saving uses runtime IANA data. No calendar availability or holiday lookup, invitations or calendar writes.

Inputs: date (required), people (required). Returns: Meeting candidates and ranked shared slots with normalized participants, local…

recurring_scheduleRecurring scheduleA
Read-onlyIdempotent
Inspect

Prepare weekly, biweekly or monthly task calendars and estimate monthly effort for up to 20 tasks. Use to draft a recurring work plan; use cron_next_runs to preview existing cron syntax or meeting_time_zones for shared workday slots. Returns monthly hours, first dates, recurrence rules and an RFC 5545 calendar. Times float in the importing calendar’s local zone; weekly estimates use 52/12 runs per month and biweekly 26/12. owner is a planning label, with no assignment or execution. No calendar is updated; an empty task list returns zero hours and no events.

Inputs: tasks (required), startDate (required). Returns: Monthly effort estimate, normalized recurrence rules and an importable floating…

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4.7/5.0

    Scored across 5 tools

    Disambiguation5/5

    Each tool has a clearly distinct purpose, and the descriptions explicitly cross-reference siblings (e.g., ai_api_cost vs. ai_subscription_stack_cost, meeting_time_zones vs. recurring_schedule vs. cron_next_runs). There is no meaningful overlap that would cause misselection.

    Naming Consistency5/5

    All names use consistent snake_case noun phrases (ai_api_cost, meeting_time_zones, recurring_schedule, ai_subscription_stack_cost, cron_next_runs). No mixed conventions or vague verbs appear.

    Tool Count5/5

    Five tools is well within the ideal 3–15 range, and each tool earns its place with a distinct capability. The set is neither bloated nor too thin for a utility server.

    Completeness4/5

    The surface covers AI cost estimation (API and subscriptions) and scheduling utilities (meeting overlap, recurring task plans, cron preview). Minor gaps exist, such as no holiday lookup or general time-zone conversion, but core workflows are complete and agents can work around these.

    Maintenance

    ActivityNo data
    ResponsivenessOutdated data

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      C
      maintenance
      Parse, validate, and explain cron expressions with pay-per-call via x402 (USDC on Base L2), returning next run times in any timezone.
      1
      MIT
    • A
      license
      Not graded
      quality
      B
      maintenance
      Provides exact, deterministic tools for math, dates, units, validation, and more to AI agents, returning precise answers with explicit assumptions and warnings instead of model guesses.
      MIT
    • A
      license
      Not graded
      quality
      B
      maintenance
      Enables AI agents to convert schedule text to cron expressions, describe cron in natural language, and compute upcoming run times.
      325 npm
      8
      MIT