Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, email [email protected] and we’ll put it right.

Chronary

REMOTE · API.CHRONARY.AI · 2 COMPONENTS · SCANNED AUG 3

Calendar API for AI agents: events, availability, Google/Microsoft setup, scheduling, and iCal.

+7 this week 81 Trust /100
Trust breakdown (6 categories)

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score →

Endpoint Security89
Transport & Reachability100
Schema Quality & AI Usability83
  • 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
  • AI-judged instruction clarity (good).Pass
  • Context-footprint check failed: tool/resource definitions use about 6199 tokens (~112/item across 55 items; 54 tools + 1 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management27
  • Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.

remote · api.chronary.ai

# add to Claude Code
claude mcp add --transport http ai-chronary-mcp https://api.chronary.ai/mcp
# ~/.codex/config.toml
[mcp_servers.ai-chronary-mcp]
url = "https://api.chronary.ai/mcp"
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "ai-chronary-mcp": {
      "type": "remote",
      "url": "https://api.chronary.ai/mcp",
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add ai-chronary-mcp --url https://api.chronary.ai/mcp --transport streamable-http
# ~/.hermes/config.yaml
mcp_servers:
  ai-chronary-mcp:
    url: "https://api.chronary.ai/mcp"
// mcp.json
{
  "mcpServers": {
    "ai-chronary-mcp": {
      "type": "http",
      "url": "https://api.chronary.ai/mcp"
    }
  }
}

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 2 Aug 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 20 to 23. That category is still filling its 30-day observation window: 6 days of observed history at the previous scan, 7 at this one. The score rises as the window fills, whether or not the server changes.

  • 31 Jul 26 +4
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 30 Jul 26 +1
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 29 Jul 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 7 to 10. That category is still filling its 30-day observation window: 2 days of observed history at the previous scan, 3 at this one. The score rises as the window fills, whether or not the server changes.

  • 27 Jul 26 +1
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 26 Jul 26 73

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 3 Aug 2026 · Probed https://api.chronary.ai/mcp

TLS valid

Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .

Subject Issuer Valid from Valid until Key Signature Serial
CN=chronary.ai CN=WE1,O=Google Trust Services,C=US 8 Jun 2026 6 Sept 2026 ECDSA 256 ECDSA-SHA256 922827676e3f3fa3137fd996cb782bd5
SANs: chronary.ai, api.chronary.ai, *.api.chronary.ai
CN=WE1,O=Google Trust Services,C=US (CA) CN=GTS Root R4,O=Google Trust Services LLC,C=US 13 Dec 2023 20 Feb 2029 ECDSA 256 ECDSA-SHA384 7ff31977972c224a76155d13b6d685e3
CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE 15 Nov 2023 28 Jan 2028 ECDSA 384 SHA256-RSA 7fe530bf331343bedd821610493d8a1b
DNSSEC insecure

Validation of api.chronary.ai. Not signed

Zone DS Keys Algorithms Outcome
. trust_anchor 20326, 38696 8, 8 Verified
ai. present 3799 8 Verified
chronary.ai. absent Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation
Authentication Challenged, unverified

The endpoint asked for a token, but we could not retrieve and validate the RFC 9728 metadata that tells a client how to obtain one.

Result Challenged, unverified
Enforced On tool calls
HTTP status 200
Header Value
strict-transport-security max-age=31536000; includeSubDomains
content-security-policy default-src 'none'; frame-ancestors 'none'
x-content-type-options nosniff
x-frame-options DENY
referrer-policy no-referrer

Protected resource metadata

Retrieved No
Problem no_resource_metadata
Transports 2 probes
Transport URL Outcome Status Location
streamable-http https://api.chronary.ai/mcp Verified 200
http (plaintext) http://api.chronary.ai/mcp HTTPS enforced 301 https://api.chronary.ai/mcp
MCP tools — 54 exposed · ~5,974 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.

Tool Tokens
accept_terms ~117

Re-accept the current Chronary terms of service on behalf of the calling org. Use this when responses carry the Chronary-Terms-Upgrade-Required header — a material ToS bump otherwise leaves MCP-only agents stuck without a console session. Pass the current tos_version (read it from GET /v1/auth/terms/current). Requires an org-level API key (chr_sk_*); agent-scoped keys cannot accept org-wide terms.

NameTypeReqDescription
tos_versionstringyesThe terms-of-service version to accept; must match the current version

No output schema declared.

No examples provided.

cancel_connection_link ~48

Cancel a pending human-calendar setup request. This invalidates the setup URL and does not disconnect an already completed Google or Microsoft connection.

NameTypeReqDescription
connection_link_idstringyesConnection setup link ID

No output schema declared.

No examples provided.

cancel_event ~192

Delete or cancel an event from a calendar. Use this to remove, cancel, or delete any scheduled event or appointment. The event is marked cancelled and excluded from future availability calculations. For a recurring series, pass `occurrence_start` to cancel just that one occurrence (the series continues); omit it to cancel the whole series. `calendar_id` is optional — if omitted the calendar is looked up from the event. Provide `calendar_id` to fail fast on cross-calendar typos.

NameTypeReqDescription
calendar_idstringCalendar ID that owns the event. Optional — if omitted the calendar is resolved from the event. Matches the asymmetry with confirm_event / release_event which never required this arg.
event_idstringyesEvent ID to cancel
occurrence_startstringFor recurring events only: ISO 8601 start of the single occurrence to cancel. The rest of the series is unaffected.

No output schema declared.

No examples provided.

cancel_proposal ~50

Cancel an open proposal. Fires a proposal.cancelled webhook with reason="organizer_cancelled". Requires an org-level API key. Pro plan only.

NameTypeReqDescription
proposal_idstringyesProposal to cancel

No output schema declared.

No examples provided.

clear_availability_rules ~58

Remove the availability rules from a calendar, reverting to the default (no buffers, no working-hours mask). Returns the deleted row, or an error if none were set.

NameTypeReqDescription
calendar_idstringyesCalendar whose rules should be cleared

No output schema declared.

No examples provided.

confirm_event ~70

Promote a held event to a confirmed booking. The event must currently have status="hold" and its hold_expires_at must not have passed. After confirmation, event.started and event.ended lifecycle webhooks fire at the scheduled times.

NameTypeReqDescription
event_idstringyesEvent ID of the hold to confirm

No output schema declared.

No examples provided.

create_agent ~66

Register your agent (AI assistant, human participant, or resource) with Chronary so it can own calendars, events, and webhooks.

NameTypeReqDescription
descriptionstringOptional description
namestringyesDisplay name for the agent
typestringyesAgent type

No output schema declared.

No examples provided.

create_booking_page ~270

Create a public booking page (a hosted scheduling link) for a calendar. Returns a booking_url to send to a human; when they pick a slot, a confirmed event is created on the calendar and an event.created webhook fires with a booking_page_id field. Set availability_constraints to restrict to weekly working hours; existing calendar events always block slots.

NameTypeReqDescription
activebooleanWhether the page accepts bookings (default true).
availability_constraintsWeekly working hours, e.g. {"mon":{"start":"09:00","end":"17:00"}}. Omit/null for any time in the window.
buffer_minutesintegerPadding before/after existing events (default 0).
calendar_idstringyesCalendar a booking resolves to (from create_calendar/list_calendars).
descriptionstringOptional description shown to the booker.
duration_minutesintegerSlot length in minutes (default 30).
min_notice_minutesintegerMinimum lead time before a bookable slot (default 0).
timezonestringIANA timezone for display + working hours (default UTC).
titlestringyesMeeting title shown on the page.
window_daysintegerHow far ahead bookings are allowed (default 14).

No output schema declared.

No examples provided.

create_calendar ~160

Create a calendar to hold events and track availability. Calendars are required before creating events — call this first when setting up a new agent. An agent can have multiple calendars (e.g. "Work", "Personal"). Org-level calendars (no agent_id) can be used as shared resources like meeting rooms.

NameTypeReqDescription
agent_idstringAgent ID to own this calendar (omit for org-level)
default_remindersDefault reminder offsets in minutes before start, inherited by events on this calendar that don't set their own. Omit or null to use the system default (10 min); [] for no reminders.
namestringyesCalendar name
timezonestringyesIANA timezone (e.g. America/New_York)

No output schema declared.

No examples provided.

create_connection_link ~132

Request human setup of Google Calendar or Microsoft Outlook for a Chronary calendar. Give setup_url to a human; the agent never receives OAuth credentials, provider calendar names, or event data. The secret URL is returned only on first creation. If reused=true and setup_url is null, retain the original URL or cancel this link and create a replacement.

NameTypeReqDescription
calendar_idstringyesChronary calendar whose owning agent will receive authorized availability
capabilitiesarrayRequest opaque availability, plus optional opt-in event publishing permission
publication_policystringDesired publishing policy; a human still chooses the destination

No output schema declared.

No examples provided.

create_event ~466

Create a booking, appointment, meeting, hold, or any scheduled event on a calendar. The calendar_id comes from create_calendar or list_events. Once created, this event blocks the agent's availability during that time and appears in availability queries. Use status="hold" with hold_expires_at to tentatively reserve a slot that auto-releases on TTL.

NameTypeReqDescription
all_daybooleanWhether this is an all-day event
calendar_idstringyesCalendar ID to add the event to
descriptionstringOptional event description
end_timestringyesEnd time (ISO 8601)
hold_expires_atstringRequired when status="hold". ISO 8601 timestamp 30s-15min in the future. Auto-releases the hold when reached.
hold_priorityintegerOnly valid with status="hold". Higher-priority overlapping holds pre-empt lower-priority ones. Defaults to 0.
recurrence_rulestringMake this a recurring series (RFC 5545 RRULE subset, no "RRULE:" prefix), e.g. "FREQ=WEEKLY;BYDAY=MO,WE;COUNT=12". Supports FREQ=DAILY/WEEKLY/MONTHLY/YEARLY, INTERVAL, COUNT (max 730) or UNTIL, BYDAY…
remindersReminder offsets in minutes before start_time (e.g. [10, 1440]). Each fires an event.reminder webhook and shows as an alarm in the iCal feed. Omit or null to inherit the calendar default (then the sy…
start_timestringyesStart time (ISO 8601)
statusstringEvent status. "hold" creates a tentative reservation that auto-expires at hold_expires_at. Defaults to "confirmed".
titlestringyesEvent title

No output schema declared.

No examples provided.

create_proposal ~180

Create a scheduling proposal — send a set of candidate time slots to one or more participant agents so they can accept, decline, or counter-propose. The organizer agent owns the proposal; once every participant responds, the system auto-resolves to the highest-scoring slot (or cancels if all decline). Requires an org-level API key. Pro plan only.

NameTypeReqDescription
calendar_idstringyesCalendar the resolved event will be created on
descriptionstringLonger context/agenda
expires_atstringAuto-cancel cutoff if unresolved
organizer_agent_idstringyesAgent ID proposing the meeting
participant_agent_idsarrayyesAgent IDs invited to respond
slotsarrayyesCandidate time slots (up to 20)
titlestringyesShort description of what the meeting is about

No output schema declared.

No examples provided.

create_scoped_key ~102

Create an agent-scoped API key (chr_ak_*) that can only act on behalf of a single agent. Use this to self-provision or rotate per-agent credentials. The plaintext key is returned exactly once in the response — store it immediately, it cannot be retrieved later. Requires an org-level API key.

NameTypeReqDescription
agent_idstringyesAgent ID this key is scoped to
labelstringHuman-readable label for the key

No output schema declared.

No examples provided.

create_webhook ~94

Create a webhook subscription so the org receives HTTP POST notifications when events occur (e.g. event.created, proposal.confirmed). The signing secret is returned ONCE in this response — store it to verify the HMAC-SHA256 signature on delivered payloads. Requires an org-level API key.

NameTypeReqDescription
eventsarrayyesEvent types to subscribe to
urlstringyesHTTPS endpoint that will receive event deliveries

No output schema declared.

No examples provided.

delete_agent ~59

Decommission an agent. This marks the agent as decommissioned and revokes all of its scoped API keys. Requires an org-level API key — agent-scoped keys cannot delete agents.

NameTypeReqDescription
agent_idstringyesAgent ID to decommission

No output schema declared.

No examples provided.

delete_booking_page ~49

Delete (deactivate) a booking page. Its hosted URL stops resolving; already-booked events are unaffected.

NameTypeReqDescription
booking_page_idstringyesBooking page ID to delete (bkp_...)

No output schema declared.

No examples provided.

delete_calendar ~53

Delete a calendar (soft delete). Its events are no longer returned and it stops contributing to availability. Agent-scoped keys may only delete calendars owned by their agent.

NameTypeReqDescription
calendar_idstringyesCalendar ID to delete

No output schema declared.

No examples provided.

delete_ical_subscription ~43

Delete an external iCal feed subscription. Events previously synced from the feed are no longer refreshed.

NameTypeReqDescription
subscription_idstringyesiCal subscription ID to delete

No output schema declared.

No examples provided.

delete_webhook ~47

Permanently delete a webhook subscription. This frees its endpoint slot against the per-plan cap. Requires an org-level API key.

NameTypeReqDescription
webhook_idstringyesWebhook subscription to delete

No output schema declared.

No examples provided.

find_meeting_time ~287

Find slots when multiple agents are free across Chronary calendars and any human calendars authorized for each agent. This tool is fail-closed: always inspect `availability_state` and `warnings` before using slots. Accepts `agents`/`start`/`end` or their aliases.

NameTypeReqDescription
agent_idsarrayAlias for `agents` (matches REST/scheduling-proposal naming).
agentsarrayArray of agent IDs to find common free time for. All agents must be free during the returned slots. Alias: agent_ids.
calendarsarrayAdditional shared calendar IDs to treat as busy
durationstringRequested slot length (15m/30m/45m/1h/2h). Preferred over the deprecated slot_duration. Defaults to 30m.
endstringSearch range end (ISO 8601). Alias: end_time.
end_timestringAlias for `end` (matches REST events naming).
include_busybooleanInclude per-agent busy blocks in response
slot_durationstringDeprecated alias for `duration` — minimum slot length. Prefer `duration`.
startstringSearch range start (ISO 8601). Alias: start_time.
start_timestringAlias for `start` (matches REST events naming).

No output schema declared.

No examples provided.

get_agent ~59

Fetch a single agent by ID. An agent represents an AI assistant, human, or shared resource (e.g. a meeting room). Agent-scoped API keys may only read their own agent.

NameTypeReqDescription
agent_idstringyesAgent ID to fetch

No output schema declared.

No examples provided.

get_audit_log ~175

List audit-log entries for the calling org — mutating operations and auth-lifecycle events, newest first. Results are clamped to the plan's retention window. Requires an org-level API key (chr_sk_*); agent-scoped keys cannot read the org-wide audit log.

NameTypeReqDescription
actionstringFilter by action name (e.g. event.created)
actor_key_prefixstringFilter by the API key prefix that performed the action
cursorstringOpaque pagination cursor from a previous response
fromstringStart of the window (ISO 8601). Silently clamped to the plan retention window if older.
limitintegerMax results to return (default 50)
tostringEnd of the window (ISO 8601)

No output schema declared.

No examples provided.

get_availability ~234

Check when a single agent is free across its Chronary calendars and any human calendars authorized for that agent. This tool is fail-closed: always inspect `availability_state` and `warnings` before using slots. Accepts `start`/`end` or the `start_time`/`end_time` aliases.

NameTypeReqDescription
agent_idstringyesAgent ID to check availability for
durationstringRequested slot length (15m/30m/45m/1h/2h). Preferred over the deprecated slot_duration. Defaults to 30m.
endstringRange end (ISO 8601). Alias: end_time.
end_timestringAlias for `end` (matches REST events naming).
include_busybooleanInclude busy blocks in response
slot_durationstringDeprecated alias for `duration` — minimum slot length. Prefer `duration`.
startstringRange start (ISO 8601). Alias: start_time.
start_timestringAlias for `start` (matches REST events naming).

No output schema declared.

No examples provided.

get_availability_rules ~47

Read the buffer times and working-hours rules configured on a calendar. Returns the rules row, or an error if none are set.

NameTypeReqDescription
calendar_idstringyesCalendar to read

No output schema declared.

No examples provided.

get_booking_page ~43

Fetch a single booking page by ID, including its public booking_url and settings.

NameTypeReqDescription
booking_page_idstringyesBooking page ID to fetch (bkp_...)

No output schema declared.

No examples provided.

get_calendar ~53

Fetch a single calendar by ID, including its name, timezone, agent status, and default reminders. Agent-scoped keys may only read calendars owned by their agent.

NameTypeReqDescription
calendar_idstringyesCalendar ID to fetch

No output schema declared.

No examples provided.

get_calendar_context ~89

Get a calendar's temporal context in a single call: the current event (if one is happening now), the next upcoming event, recent past events, a short upcoming window, and the owning agent's status (idle/working/waiting/error). Use this to answer "what is this agent doing right now?" without issuing multiple list_events queries.

NameTypeReqDescription
calendar_idstringyesCalendar ID

No output schema declared.

No examples provided.

get_connection_link ~54

Poll a human-calendar setup request. Returns provider-neutral status and resulting connection ID when complete, but never replays the bearer setup URL or exposes human calendar data.

NameTypeReqDescription
connection_link_idstringyesConnection setup link ID

No output schema declared.

No examples provided.

get_event ~112

Retrieve a single event by ID, including its title, times, status, location, reminders, and metadata. Works for both internally created events and externally synced iCal events. `calendar_id` is optional — if omitted the calendar is resolved from the event. Provide `calendar_id` to fail fast on cross-calendar typos.

NameTypeReqDescription
calendar_idstringCalendar ID that owns the event. Optional — if omitted the calendar is resolved from the event.
event_idstringyesEvent ID to retrieve

No output schema declared.

No examples provided.

get_ical_subscription ~48

Get a single external iCal feed subscription by id, including its sync status, last sync time, and last error.

NameTypeReqDescription
subscription_idstringyesiCal subscription ID to fetch

No output schema declared.

No examples provided.

get_proposal ~43

Get a scheduling proposal by id, including its slots and per-participant responses. Requires an org-level API key.

NameTypeReqDescription
proposal_idstringyesProposal to fetch

No output schema declared.

No examples provided.

get_usage ~71

Get the calling org's current-period usage and plan limits (agents, calendars, events, API calls, webhooks, availability queries, iCal subscriptions, proposals, scoped keys, holds, cross-calendar queries). Requires an org-level API key (chr_sk_*); agent-scoped keys cannot read org-wide usage.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

get_webhook ~53

Get a single webhook subscription by id, including its subscribed event types and active state. The signing secret is never returned. Requires an org-level API key.

NameTypeReqDescription
webhook_idstringyesWebhook subscription to fetch

No output schema declared.

No examples provided.

list_agents ~56

List all agents in your organization

NameTypeReqDescription
limitintegerMax results to return
offsetintegerPagination offset
statusstringFilter by status
typestringFilter by agent type

No output schema declared.

No examples provided.

list_booking_pages ~50

List booking pages in the org. Agent-scoped keys see only pages on their own agent's calendars.

NameTypeReqDescription
limitintegerMax results to return
offsetintegerPagination offset

No output schema declared.

No examples provided.

list_calendars ~128

List calendars in the org. Org-level API keys see every calendar (agent-owned and shared); agent-scoped keys see only their own agent's calendars. Use this to discover calendar IDs before creating or listing events.

NameTypeReqDescription
agent_idstringFilter to calendars owned by this agent. Org keys only — agent-scoped keys are always limited to their own agent and ignore this.
includestringPass "all" to include calendars across all agents (org keys only)
limitintegerMax results to return
offsetintegerPagination offset

No output schema declared.

No examples provided.

list_events ~262

List events on a calendar or across an agent's calendars, including internally created events and externally synced events from iCal subscriptions (e.g. Google Calendar, Outlook). Provide `calendar_id` OR `agent_id`. Narrow with `start_after`/`start_before` (time window), `status`, and `source`.

NameTypeReqDescription
agent_idstringAgent ID to list events for across all of the agent's calendars. Provide this or calendar_id.
calendar_idstringCalendar ID to list events from. Provide this or agent_id.
expandbooleanExpand recurring series into individual occurrence instances within the window. Requires both start_after and start_before (max 366 days apart). Instances carry recurringEventId + originalStartTime.
limitintegerMax results to return
offsetintegerPagination offset
sourcestringFilter by source: "internal" (created via the API) or "external_ical" (synced from an iCal subscription)
start_afterstringOnly events starting after this ISO 8601 time
start_beforestringOnly events starting before this ISO 8601 time
statusstringFilter by event status

No output schema declared.

No examples provided.

list_ical_subscriptions ~87

List an agent's external iCal feed subscriptions (e.g. linked Google Calendar / Outlook feeds), including their sync status and last sync time.

NameTypeReqDescription
agent_idstringyesAgent ID whose iCal subscriptions to list
limitintegerMax results to return
offsetintegerPagination offset
statusstringFilter by subscription status

No output schema declared.

No examples provided.

list_proposals ~91

List scheduling proposals for the org. Filter by status (pending|confirmed|expired|cancelled) or organizer_agent_id. Requires an org-level API key.

NameTypeReqDescription
limitintegerMax results (default 50)
offsetintegerPagination offset (default 0)
organizer_agent_idstringFilter by organizer agent
statusstringFilter by proposal status

No output schema declared.

No examples provided.

list_scoped_keys ~58

List all live (non-revoked) agent-scoped API keys for this org. Returns key metadata only (id, prefix, agent_id, label, created_at) — never the plaintext secret. Requires an org-level API key.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

list_webhook_deliveries ~111

List delivery attempts for a webhook subscription, with per-status counts (pending/delivered/failed). Use this to debug failing deliveries. Requires an org-level API key.

NameTypeReqDescription
include_payloadbooleanInclude the full event payload sent on each delivery
limitintegerMax results to return
offsetintegerPagination offset
statusstringFilter to a single delivery status
webhook_idstringyesWebhook subscription whose deliveries to list

No output schema declared.

No examples provided.

list_webhooks ~57

List the org's webhook subscriptions with their subscribed event types and active state. Signing secrets are never returned. Requires an org-level API key.

NameTypeReqDescription
limitintegerMax results to return
offsetintegerPagination offset

No output schema declared.

No examples provided.

release_event ~55

Manually release a held event before its hold_expires_at. The event must currently have status="hold". Frees the slot for other agents to book.

NameTypeReqDescription
event_idstringyesEvent ID of the hold to release

No output schema declared.

No examples provided.

resolve_proposal ~92

Force-resolve an open proposal using responses collected so far. Picks the highest-scoring slot among those accepted by the most participants and creates a confirmed calendar event. If every response was "decline", the proposal is cancelled instead. Use when you want to close out a proposal without waiting for every participant. Requires an org-level API key. Pro plan only.

NameTypeReqDescription
proposal_idstringyesProposal to resolve

No output schema declared.

No examples provided.

respond_to_proposal ~160

Submit a response (accept / decline / counter) on behalf of one participant agent to an open proposal. An "accept" requires the slot id from the proposal; a "counter" can suggest alternative slots. When all participants have responded the proposal auto-resolves — no separate resolve call needed in the normal flow. Requires an org-level API key. Pro plan only.

NameTypeReqDescription
agent_idstringyesParticipant agent responding
counter_slotsarrayAlternative slots when response is "counter"
messagestringOptional note for the organizer
proposal_idstringyesProposal to respond to
responsestringyesDecision from this agent
selected_slot_idstringRequired when response is "accept"

No output schema declared.

No examples provided.

revoke_scoped_key ~65

Revoke an agent-scoped API key by ID. Revocation is permanent (cannot be un-revoked); the key stops authenticating within about a minute. Requires an org-level API key.

NameTypeReqDescription
key_idstringyesID of the scoped key to revoke

No output schema declared.

No examples provided.

set_availability_rules ~172

Set or replace the availability rules on a calendar — buffer times before/after events and optional per-day working hours. When these rules are set, every availability query on this calendar automatically applies them (busy-block expansion for buffers, masking outside working hours). Upsert: overwrites any existing rules.

NameTypeReqDescription
buffer_after_minutesintegerMinutes of buffer after each event (0–120)
buffer_before_minutesintegerMinutes of buffer before each event (0–120)
calendar_idstringyesCalendar to configure
timezonestringIANA timezone used to interpret working_hours (e.g. America/New_York)
working_hoursPer-day working hours map in the calendar's timezone; omit keys for off-days. Pass null to remove any working-hours constraint.

No output schema declared.

No examples provided.

subscribe_ical ~144

Link an external iCal feed (e.g. a human's Google Calendar) to an agent's calendar so external events appear in availability calculations. The target calendar must be owned by the specified agent — create the calendar with that agent_id first (org-level calendars without an agent_id cannot host external iCal subscriptions; create a dedicated per-agent calendar for sync targets).

NameTypeReqDescription
agent_idstringyesAgent ID that will own this subscription
calendar_idstringyesCalendar ID to sync external events into
labelstringOptional label for this subscription
urlstringyesHTTPS URL of the iCal feed (.ics) to subscribe to

No output schema declared.

No examples provided.

sync_ical_subscription ~52

Trigger an immediate sync of an external iCal feed subscription instead of waiting for the next scheduled poll. Returns once the sync has been queued.

NameTypeReqDescription
subscription_idstringyesiCal subscription ID to sync

No output schema declared.

No examples provided.

update_agent ~97

Update an agent's name, description, metadata, or status (active/paused). Requires an org-level API key — agent-scoped keys cannot mutate agents.

NameTypeReqDescription
agent_idstringyesAgent ID to update
descriptionNew description (null to clear)
metadataobjectArbitrary metadata (max 16KB)
namestringNew display name
statusstringOperational status

No output schema declared.

No examples provided.