Chronary MCP Server

https://api.chronary.ai/mcp Remote v1.0.0

Published by api.chronary.ai — no publish provenance and no public repository, so the publisher could not be verified and the source cannot be independently located.

Calendar API for AI agents — events, availability, scheduling, webhooks, and iCal feeds.

Trust grade
A
97/100
Last scanned get badge →
Trust
A · 97/100
Adoption risk for you: the threat score, then adjusted down for blast radius, publisher verification and how much the scan could see. Deterministic; every point is auditable.
Capability
Moderate
Blast radius if it went rogue — what the server’s tools could reach. Independent of trust.
Coverage
Live
How much the scan could actually inspect. Shallow coverage is stated, never hidden.
Share this Trust Score
𝕏 Share LinkedIn Reddit
A Why this grade threat 100 − adoption risk = 97/100

The grade answers one question — how safe is this server for you to adopt — so it is computed in two auditable stages. Nothing below is an opinion or an LLM's guess; every line is a real term the deterministic engine applied, and the same input always yields the same number.

1. Threat score — 100 − 0 = 100. What the published surface and source actually contain:

The deterministic scan raised no scored threat in the surface it inspected — the threat score stayed at 100. Capability observations and advisory notes are recorded but never lower it.

2. Client adoption risk — 100 − 3 = 97. Three small, subtract-only factors that reflect your risk in adopting it — a clean scan proves less on a powerful, unverified or barely-inspectable package, so the grade says so plainly:

PointsAdoption-risk factor
−3 capability blast radius (moderate) — client exposure if the model is manipulated

Capability observations and info notes are shown under Findings but never scored. Open any row's finding below for the file, line and evidence behind a deduction.

Findings 3

medium Untrusted input can drive an external actionMTC-FLOW-005

Untrusted-input tools ([get_agent, get_calendar, get_booking_page]) co-exist with external-action tools ([respond_to_proposal, resolve_proposal, cancel_proposal, create_webhook, update_webhook, delete_webhook, create_booking_page]). A prompt injection could cause unwanted external actions, though no direct sensitive-data leak path was found.

Evidence: untrusted [get_agent, get_calendar, get_booking_page] → sinks [respond_to_proposal, resolve_proposal, cancel_proposal, create_webhook, update_webhook, delete_we

Fix: Require confirmation for state-changing/egress actions triggered after processing untrusted content.

Location: flow get_agent → respond_to_proposal

medium Unconstrained URL/host parameter "url" on "create_webhook"MTC-CAP-007

Tool "create_webhook" takes a URL/host parameter "url" with no allowlist/pattern. An outbound-request tool with an unbounded destination enables SSRF and cloud-metadata access (e.g. 169.254.169.254).

Fix: Allowlist destinations or constrain the parameter; block private/link-local addresses server-side.

Location: tool create_webhook · inputSchema.properties.url

medium Unconstrained URL/host parameter "url" on "update_webhook"MTC-CAP-007

Tool "update_webhook" takes a URL/host parameter "url" with no allowlist/pattern. An outbound-request tool with an unbounded destination enables SSRF and cloud-metadata access (e.g. 169.254.169.254).

Fix: Allowlist destinations or constrain the parameter; block private/link-local addresses server-side.

Location: tool update_webhook · inputSchema.properties.url

Tools 54

Each tool and what it can reach — enumerated from the running server.

  • cancel_proposalnetwork egress
  • create_booking_pagenetwork egress
  • create_webhooknetwork egress
  • delete_webhooknetwork egress
  • get_agentingests untrusted input
  • get_booking_pageingests untrusted input
  • get_calendaringests untrusted input
  • resolve_proposalnetwork egress
  • respond_to_proposalnetwork egress
  • update_webhooknetwork egress
Show 44 more tools ↓
  • accept_termsno sensitive capability
  • cancel_connection_linkno sensitive capability
  • cancel_eventno sensitive capability
  • clear_availability_rulesno sensitive capability
  • confirm_eventno sensitive capability
  • create_agentno sensitive capability
  • create_calendarno sensitive capability
  • create_connection_linkno sensitive capability
  • create_eventno sensitive capability
  • create_proposalno sensitive capability
  • create_scoped_keyno sensitive capability
  • delete_agentno sensitive capability
  • delete_booking_pageno sensitive capability
  • delete_calendarno sensitive capability
  • delete_ical_subscriptionno sensitive capability
  • find_meeting_timeno sensitive capability
  • get_audit_logno sensitive capability
  • get_availabilityno sensitive capability
  • get_availability_rulesno sensitive capability
  • get_calendar_contextno sensitive capability
  • get_connection_linkno sensitive capability
  • get_eventno sensitive capability
  • get_ical_subscriptionno sensitive capability
  • get_proposalno sensitive capability
  • get_usageno sensitive capability
  • get_webhookno sensitive capability
  • list_agentsno sensitive capability
  • list_booking_pagesno sensitive capability
  • list_calendarsno sensitive capability
  • list_eventsno sensitive capability
  • list_ical_subscriptionsno sensitive capability
  • list_proposalsno sensitive capability
  • list_scoped_keysno sensitive capability
  • list_webhook_deliveriesno sensitive capability
  • list_webhooksno sensitive capability
  • release_eventno sensitive capability
  • revoke_scoped_keyno sensitive capability
  • set_availability_rulesno sensitive capability
  • subscribe_icalno sensitive capability
  • sync_ical_subscriptionno sensitive capability
  • update_agentno sensitive capability
  • update_calendarno sensitive capability
  • update_eventno sensitive capability
  • update_ical_subscriptionno sensitive capability

Toxic flows 1

Cross-tool combinations that form a data-exfiltration primitive (untrusted input → sensitive source → external sink).

Versions 1

Scan history per published version. The engine is deterministic — the same version always yields the same score, so a changed score means the package itself changed.

VersionScoreFindingsEngineScanned
v1.0.0 latest A 97/100 3 1.12.1 2026-07-27

Embed this score

Show this server's live Trust Score in your README, docs or website. The badge is served straight from the registry and updates automatically after every rescan — no API key needed. It links back to this page, so anyone who sees the grade can also read the findings behind it instead of taking a number on faith.

MCP Trust Score: A · 97/100
Markdown (GitHub README)
[![MCP Trust Score](https://mcptrustchecker.com/registry/api-chronary-ai/badge.svg)](https://mcptrustchecker.com/registry/api-chronary-ai)
HTML
<a href="https://mcptrustchecker.com/registry/api-chronary-ai"><img src="https://mcptrustchecker.com/registry/api-chronary-ai/badge.svg" alt="MCP Trust Score" height="20"></a>
Prefer shields.io styling? Point it at https://mcptrustchecker.com/registry/api-chronary-ai/badge.json via https://img.shields.io/endpoint?url=…

Verify this score yourself

The score above is reproducible: the same package version always yields the same result. Run it locally or over the free API — no account, no LLM, fully deterministic.

npx mcptrustchecker scan https://api.chronary.ai/mcp --online

Use the free API → How scoring works

More in Productivity & Workflow