Use in your browser

Check your .ics calendar feed

Check a public .ics feed against RFC 5545 with the real ical.js parser: required properties, line folding, recurrence expansion, VTIMEZONE, and DST offsets. Compare two feeds under identical checks to see where they differ. Most feeds finish in a second or two, and a large multi-year feed can take up to 60 seconds.

Guest includes 50 lifetime app requests. Create a free account for 100 app requests each calendar month. One allowance across every app, in your browser and your agent.One allowance across every app, in your browser and your agent. Manage usage

Calendar File Check

Connect agent

Guest access is available after setup. Full account linking verified by PowMCP: Claude only.

Feed Check

Check one public .ics feed against RFC 5545 and locate every structural finding by component.

Usually finishes in a second or two; a large multi-year feed can take up to 60 seconds.

Public HTTP(S) or webcal link, detected by content rather than by file extension

49 of 2048

Allowed range: 1–60

Allowed range: 1–20000

Add Calendar File Check to your agent

Connect this app on its own. Add other PowMCP apps whenever your agent needs another job done.

Open the apps workspace A glowing app tile clicking into a slot on a dark agent device, with the PowMCP app box behind it

Connect directly

Choose your agent. Each button opens a new tab with only this app's endpoint ready to add.

Use another agent

Copy one ready-to-send prompt for any agent that supports remote MCP connections.

Manual endpoint, JSON, and terminal commands

For clients that require manual configuration, use this app-only endpoint, its JSON entry, or one terminal command.

ChatGPT: enable Developer mode in Settings → Security and login, then add this MCP endpoint from the Plugins page. Availability depends on your account and workspace policy. PowMCP has not yet verified ChatGPT account linking. OpenAI setup guide

https://powmcp.com/ics-calendar-check/mcp
{
  "mcpServers": {
    "powmcp-ics-calendar-check": {
      "type": "http",
      "url": "https://powmcp.com/ics-calendar-check/mcp"
    }
  }
}

Terminal agents add this app with one command:

Claude Code
claude mcp add --transport http powmcp-ics-calendar-check https://powmcp.com/ics-calendar-check/mcp
Codex CLI
codex mcp add powmcp-ics-calendar-check --url https://powmcp.com/ics-calendar-check/mcp
Gemini CLI
gemini mcp add --transport http powmcp-ics-calendar-check https://powmcp.com/ics-calendar-check/mcp

Manage, disable, or remove this connection in your agent's own MCP settings. PowMCP does not label an external connection as installed without confirmation from that client.

Proof

What it does

Check an .ics calendar feed before you share it

Preflight a public iCalendar (.ics) feed for RFC 5545 structure, required properties, line folding, bounded recurrence expansion, timing-error cleanliness, and VTIMEZONE/DST evidence, or compare two feeds by those same checks. Recurring-occurrence deltas cover RRULE expansion only; comparison does not match corresponding events or detect DTSTART/DTEND drift.

Category
Productivity

Request cost1 completed result

Guests get 50 lifetime app requests. Free accounts get 100 each calendar month.

Tools in this app

01

Calendar Feed Check

ics_check

Preflight one public iCalendar (.ics) calendar feed before you share its subscription link. Give a publicly fetchable HTTP(S) or webcal URL served as an iCalendar feed and it downloads the artifact under an SSRF-guarded, 5 MB-capped fetch, detects the byte encoding and BOM, then parses it with the real RFC 5545 engine (ical.js) and returns deterministic evidence: pass/fail, component and event counts, structural spec errors with their component location, missing required properties (VERSION/PRODID at the calendar level, UID/DTSTAMP/DTSTART per event), line-folding findings, recurrence expanded over a bounded ±12-month window with a hard occurrence cap so an unbounded RRULE cannot blow up, event timing findings, and VTIMEZONE/DST evidence. Absence of evidence is distinguished from a negative finding (no-timing-errors-found versus not-checked, vtimezone-not-declared versus vtimezone-invalid). A pass means only that the bytes satisfy the ical.js RFC 5545 profile at the pinned engine version, not how the feed renders or syncs inside Google Calendar, Outlook, or Apple Calendar; cross-app compatibility notes are best-effort heuristics. An arbitrary XML, HTML, JSON, or text file that is not an iCalendar feed returns an explicit unsupported-format error. Fetching and parsing a full multi-year feed can take up to 60 seconds.

02

Calendar Feed Compare

ics_compare

Compare exactly two public iCalendar (.ics) feeds under identical bounded checks: a known baseline and revision, or two variants. Give two publicly fetchable HTTP(S) or webcal iCalendar URLs and it runs the same SSRF-guarded, 5 MB-capped RFC 5545 preflight as ics_check on each over the identical ±12-month expansion window, then reports side-by-side pass status, encoding and event-count differences, recurring-event coverage, the recurring-occurrence expansion delta, structural-error deltas (errors introduced or resolved), VTIMEZONE-state differences, and whether timing-error cleanliness differs. It does not match corresponding events or detect DTSTART/DTEND drift. It ranks only automated RFC 5545 conformance: it never infers that one feed's events are more correct, more complete, or better synced than the other. Use ics_check for a single feed. Fetching and parsing two live feeds can take up to 60 seconds.

Calendar File Check questions

Scope and boundaries for Calendar File Check.

01What can I check with Calendar File Check?

Check the W3C CSS Working Group calendar feed over a plus-or-minus 12-month recurrence window with a 5,000-occurrence cap, or compare two public feed URLs under the same window and cap.

02How should I read the result?

Read pass, structuralErrors, and occurrence timing first: pass means the feed parsed with no structural error and no checked timing error. Timing is not checked when there are no events, and line-folding warnings do not change pass. Fix the most severe required-property, structure, or timing finding and rerun. Recurrence evidence covers only the stated window and cap, so a cap hit is inconclusive beyond that bound; comparisons do not match events or prove dates stayed fixed.

03What are its limits?

The source must be a public HTTP(S) or webcal iCalendar feed and is fetched under a 5 MB cap. Recurrence evidence is windowed and capped; comparison does not match corresponding events or detect DTSTART or DTEND drift, and a pass does not predict rendering or synchronization in Google Calendar, Outlook, or Apple Calendar.