{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_yd798hxanpr4","handle":"consistency-calendar","url":"https://wellknown.network/agents/consistency-calendar","links":{"self":"https://wellknown.network/agents/consistency-calendar/record.json","html":"https://wellknown.network/agents/consistency-calendar","markdown":"https://wellknown.network/agents/consistency-calendar/record.md","api":"https://wellknown.network/api/v1/agents/consistency-calendar","status":"https://wellknown.network/api/v1/agents/consistency-calendar/status","claim":"https://wellknown.network/agents/consistency-calendar/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/consistency-calendar/claim.json","badge":"https://wellknown.network/agents/consistency-calendar/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/consistency-calendar/history","tools":"https://wellknown.network/api/v1/agents/consistency-calendar/tools"},"ard":{"identifier":"urn:air:consistencycalendar.com:server:consistency-calendar","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"Consistency Calendar","summary":"Turn any goal with a deadline into a private, gamified, evidence-based execution calendar.","description":"Turn any goal with a deadline into a private, gamified, evidence-based execution calendar.","publisher":{"name":"olliejgooding","url":null},"homepage":null,"repository":"https://github.com/olliejgooding/consistency-calendar-mcp","version":"1.0.0","license":null,"protocols":["mcp"],"tags":[],"pricing":null,"endpoints":[{"url":"https://consistencycalendar.com/mcp","type":"mcp_streamable_http","auth":null,"probeable":true}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-08-12T14:47:29.169083Z","publishedAt":"2026-08-12T14:47:29.169083Z","registryName":"io.github.olliejgooding/consistency-calendar"},"attribution":{"kind":"mcp_registry","name":"mcp_registry","repoUrl":"mcp_registry","summary":"mcp_registry","version":"mcp_registry","description":"mcp_registry","publisherName":"mcp_registry"}},"derived":{"capabilities":[{"slug":"productivity.calendar","name":"Calendar & Scheduling","confidence":1,"provenance":"derived"},{"slug":"ai.prompting","name":"Prompt Management","confidence":0.525,"provenance":"derived"}],"categories":["ai","productivity"],"language":"en"},"observed":{"status":"live","statusReason":"Responded 5h ago.","lastOkAt":"2026-10-10T08:32:59.596Z","lastProbedAt":"2026-10-10T08:32:59.596Z","statusComputedAt":"2026-10-10T08:34:14.511Z","reliability30d":{"probes":109,"successRate":1,"p50Ms":48,"basis":"service","measures":{"availability":"availability","latency":"response time","tools":"tool surface observed","summary":"Checks reached the service itself."},"checks":{"total":107,"ok":107,"authBoundaryOk":0,"serviceOk":107,"note":"Counted from the observation rows for the window, checks of the server only (HTTP, A2A card, MCP initialize). ok = authBoundaryOk + serviceOk. `probes` is the sum of daily rollups and includes registry checks, so it can differ from `total`."}},"latestObservations":[{"at":"2026-10-10T08:32:59.596Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":42,"error":null,"detail":{"tools":[{"name":"list_templates","description":"Consistency Calendar (consistencycalendar.com) turns a goal with a deadline (race, exam, savings target, life event, project) into a private, gamified, evidence"},{"name":"get_template_guide","description":"Get the coaching guide for one sprint template: the interview checklist (what to ask the user), evidence-based constraints the plan must respect, a SprintSpec s"},{"name":"validate_spec","description":"Validate a draft SprintSpec without creating anything. Returns machine-readable errors (fix and retry) and warnings (evidence-based advice — take them seriously"},{"name":"create_calendar","description":"Create a hosted Consistency Calendar from a validated SprintSpec. Returns the user's private calendar URL and an admin token for later revisions. Free; each cal"},{"name":"get_status","description":"Read structured progress for a sprint calendar (execution %, streaks, missed sessions, metric vs guide, at-risk flags) so you can coach the user. Requires the c"},{"name":"revise_calendar","description":"Replace a calendar's plan with a revised SprintSpec (life happened: injury, moved exam, new constraints). The user's ticks, moves and habit history survive; onl"},{"name":"attach_document","description":"Attach a supporting text document to a calendar — a syllabus/curriculum, exam spec, training history, race info. Stored with the calendar so any future session "},{"name":"read_document","description":"Read a document previously attached to a calendar (ids are listed in get_status under `documents`). Use when revising a plan so the new plan respects the syllab"},{"name":"create_share_link","description":"Create (or disable) a public read-only progress page for accountability: completion %, streak and countdown only — no session names, habit names or metric value"}],"toolCount":9,"toolsHash":"470a9b83c3bc7ec0b4e479434f1ef939a0f60ce335d17e830d815bde519a2f79","serverName":"consistency-calendar","capabilities":["tools"],"serverVersion":"0.2.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-10T02:29:47.189Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":37,"error":null,"detail":{"tools":[{"name":"list_templates","description":"Consistency Calendar (consistencycalendar.com) turns a goal with a deadline (race, exam, savings target, life event, project) into a private, gamified, evidence"},{"name":"get_template_guide","description":"Get the coaching guide for one sprint template: the interview checklist (what to ask the user), evidence-based constraints the plan must respect, a SprintSpec s"},{"name":"validate_spec","description":"Validate a draft SprintSpec without creating anything. Returns machine-readable errors (fix and retry) and warnings (evidence-based advice — take them seriously"},{"name":"create_calendar","description":"Create a hosted Consistency Calendar from a validated SprintSpec. Returns the user's private calendar URL and an admin token for later revisions. Free; each cal"},{"name":"get_status","description":"Read structured progress for a sprint calendar (execution %, streaks, missed sessions, metric vs guide, at-risk flags) so you can coach the user. Requires the c"},{"name":"revise_calendar","description":"Replace a calendar's plan with a revised SprintSpec (life happened: injury, moved exam, new constraints). The user's ticks, moves and habit history survive; onl"},{"name":"attach_document","description":"Attach a supporting text document to a calendar — a syllabus/curriculum, exam spec, training history, race info. Stored with the calendar so any future session "},{"name":"read_document","description":"Read a document previously attached to a calendar (ids are listed in get_status under `documents`). Use when revising a plan so the new plan respects the syllab"},{"name":"create_share_link","description":"Create (or disable) a public read-only progress page for accountability: completion %, streak and countdown only — no session names, habit names or metric value"}],"toolCount":9,"toolsHash":"470a9b83c3bc7ec0b4e479434f1ef939a0f60ce335d17e830d815bde519a2f79","serverName":"consistency-calendar","capabilities":["tools"],"serverVersion":"0.2.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T19:27:20.244Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":90,"error":null,"detail":{"tools":[{"name":"list_templates","description":"Consistency Calendar (consistencycalendar.com) turns a goal with a deadline (race, exam, savings target, life event, project) into a private, gamified, evidence"},{"name":"get_template_guide","description":"Get the coaching guide for one sprint template: the interview checklist (what to ask the user), evidence-based constraints the plan must respect, a SprintSpec s"},{"name":"validate_spec","description":"Validate a draft SprintSpec without creating anything. Returns machine-readable errors (fix and retry) and warnings (evidence-based advice — take them seriously"},{"name":"create_calendar","description":"Create a hosted Consistency Calendar from a validated SprintSpec. Returns the user's private calendar URL and an admin token for later revisions. Free; each cal"},{"name":"get_status","description":"Read structured progress for a sprint calendar (execution %, streaks, missed sessions, metric vs guide, at-risk flags) so you can coach the user. Requires the c"},{"name":"revise_calendar","description":"Replace a calendar's plan with a revised SprintSpec (life happened: injury, moved exam, new constraints). The user's ticks, moves and habit history survive; onl"},{"name":"attach_document","description":"Attach a supporting text document to a calendar — a syllabus/curriculum, exam spec, training history, race info. Stored with the calendar so any future session "},{"name":"read_document","description":"Read a document previously attached to a calendar (ids are listed in get_status under `documents`). Use when revising a plan so the new plan respects the syllab"},{"name":"create_share_link","description":"Create (or disable) a public read-only progress page for accountability: completion %, streak and countdown only — no session names, habit names or metric value"}],"toolCount":9,"toolsHash":"470a9b83c3bc7ec0b4e479434f1ef939a0f60ce335d17e830d815bde519a2f79","serverName":"consistency-calendar","capabilities":["tools"],"serverVersion":"0.2.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T12:29:36.236Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":72,"error":null,"detail":{"tools":[{"name":"list_templates","description":"Consistency Calendar (consistencycalendar.com) turns a goal with a deadline (race, exam, savings target, life event, project) into a private, gamified, evidence"},{"name":"get_template_guide","description":"Get the coaching guide for one sprint template: the interview checklist (what to ask the user), evidence-based constraints the plan must respect, a SprintSpec s"},{"name":"validate_spec","description":"Validate a draft SprintSpec without creating anything. Returns machine-readable errors (fix and retry) and warnings (evidence-based advice — take them seriously"},{"name":"create_calendar","description":"Create a hosted Consistency Calendar from a validated SprintSpec. Returns the user's private calendar URL and an admin token for later revisions. Free; each cal"},{"name":"get_status","description":"Read structured progress for a sprint calendar (execution %, streaks, missed sessions, metric vs guide, at-risk flags) so you can coach the user. Requires the c"},{"name":"revise_calendar","description":"Replace a calendar's plan with a revised SprintSpec (life happened: injury, moved exam, new constraints). The user's ticks, moves and habit history survive; onl"},{"name":"attach_document","description":"Attach a supporting text document to a calendar — a syllabus/curriculum, exam spec, training history, race info. Stored with the calendar so any future session "},{"name":"read_document","description":"Read a document previously attached to a calendar (ids are listed in get_status under `documents`). Use when revising a plan so the new plan respects the syllab"},{"name":"create_share_link","description":"Create (or disable) a public read-only progress page for accountability: completion %, streak and countdown only — no session names, habit names or metric value"}],"toolCount":9,"toolsHash":"470a9b83c3bc7ec0b4e479434f1ef939a0f60ce335d17e830d815bde519a2f79","serverName":"consistency-calendar","capabilities":["tools"],"serverVersion":"0.2.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T06:22:33.194Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":42,"error":null,"detail":{"tools":[{"name":"list_templates","description":"Consistency Calendar (consistencycalendar.com) turns a goal with a deadline (race, exam, savings target, life event, project) into a private, gamified, evidence"},{"name":"get_template_guide","description":"Get the coaching guide for one sprint template: the interview checklist (what to ask the user), evidence-based constraints the plan must respect, a SprintSpec s"},{"name":"validate_spec","description":"Validate a draft SprintSpec without creating anything. Returns machine-readable errors (fix and retry) and warnings (evidence-based advice — take them seriously"},{"name":"create_calendar","description":"Create a hosted Consistency Calendar from a validated SprintSpec. Returns the user's private calendar URL and an admin token for later revisions. Free; each cal"},{"name":"get_status","description":"Read structured progress for a sprint calendar (execution %, streaks, missed sessions, metric vs guide, at-risk flags) so you can coach the user. Requires the c"},{"name":"revise_calendar","description":"Replace a calendar's plan with a revised SprintSpec (life happened: injury, moved exam, new constraints). The user's ticks, moves and habit history survive; onl"},{"name":"attach_document","description":"Attach a supporting text document to a calendar — a syllabus/curriculum, exam spec, training history, race info. Stored with the calendar so any future session "},{"name":"read_document","description":"Read a document previously attached to a calendar (ids are listed in get_status under `documents`). Use when revising a plan so the new plan respects the syllab"},{"name":"create_share_link","description":"Create (or disable) a public read-only progress page for accountability: completion %, streak and countdown only — no session names, habit names or metric value"}],"toolCount":9,"toolsHash":"470a9b83c3bc7ec0b4e479434f1ef939a0f60ce335d17e830d815bde519a2f79","serverName":"consistency-calendar","capabilities":["tools"],"serverVersion":"0.2.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T00:26:28.963Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":62,"error":null,"detail":{"tools":[{"name":"list_templates","description":"Consistency Calendar (consistencycalendar.com) turns a goal with a deadline (race, exam, savings target, life event, project) into a private, gamified, evidence"},{"name":"get_template_guide","description":"Get the coaching guide for one sprint template: the interview checklist (what to ask the user), evidence-based constraints the plan must respect, a SprintSpec s"},{"name":"validate_spec","description":"Validate a draft SprintSpec without creating anything. Returns machine-readable errors (fix and retry) and warnings (evidence-based advice — take them seriously"},{"name":"create_calendar","description":"Create a hosted Consistency Calendar from a validated SprintSpec. Returns the user's private calendar URL and an admin token for later revisions. Free; each cal"},{"name":"get_status","description":"Read structured progress for a sprint calendar (execution %, streaks, missed sessions, metric vs guide, at-risk flags) so you can coach the user. Requires the c"},{"name":"revise_calendar","description":"Replace a calendar's plan with a revised SprintSpec (life happened: injury, moved exam, new constraints). The user's ticks, moves and habit history survive; onl"},{"name":"attach_document","description":"Attach a supporting text document to a calendar — a syllabus/curriculum, exam spec, training history, race info. Stored with the calendar so any future session "},{"name":"read_document","description":"Read a document previously attached to a calendar (ids are listed in get_status under `documents`). Use when revising a plan so the new plan respects the syllab"},{"name":"create_share_link","description":"Create (or disable) a public read-only progress page for accountability: completion %, streak and countdown only — no session names, habit names or metric value"}],"toolCount":9,"toolsHash":"470a9b83c3bc7ec0b4e479434f1ef939a0f60ce335d17e830d815bde519a2f79","serverName":"consistency-calendar","capabilities":["tools"],"serverVersion":"0.2.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T18:28:10.752Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":171,"error":null,"detail":{"tools":[{"name":"list_templates","description":"Consistency Calendar (consistencycalendar.com) turns a goal with a deadline (race, exam, savings target, life event, project) into a private, gamified, evidence"},{"name":"get_template_guide","description":"Get the coaching guide for one sprint template: the interview checklist (what to ask the user), evidence-based constraints the plan must respect, a SprintSpec s"},{"name":"validate_spec","description":"Validate a draft SprintSpec without creating anything. Returns machine-readable errors (fix and retry) and warnings (evidence-based advice — take them seriously"},{"name":"create_calendar","description":"Create a hosted Consistency Calendar from a validated SprintSpec. Returns the user's private calendar URL and an admin token for later revisions. Free; each cal"},{"name":"get_status","description":"Read structured progress for a sprint calendar (execution %, streaks, missed sessions, metric vs guide, at-risk flags) so you can coach the user. Requires the c"},{"name":"revise_calendar","description":"Replace a calendar's plan with a revised SprintSpec (life happened: injury, moved exam, new constraints). The user's ticks, moves and habit history survive; onl"},{"name":"attach_document","description":"Attach a supporting text document to a calendar — a syllabus/curriculum, exam spec, training history, race info. Stored with the calendar so any future session "},{"name":"read_document","description":"Read a document previously attached to a calendar (ids are listed in get_status under `documents`). Use when revising a plan so the new plan respects the syllab"},{"name":"create_share_link","description":"Create (or disable) a public read-only progress page for accountability: completion %, streak and countdown only — no session names, habit names or metric value"}],"toolCount":9,"toolsHash":"470a9b83c3bc7ec0b4e479434f1ef939a0f60ce335d17e830d815bde519a2f79","serverName":"consistency-calendar","capabilities":["tools"],"serverVersion":"0.2.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T12:25:20.217Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":80,"error":null,"detail":{"tools":[{"name":"list_templates","description":"Consistency Calendar (consistencycalendar.com) turns a goal with a deadline (race, exam, savings target, life event, project) into a private, gamified, evidence"},{"name":"get_template_guide","description":"Get the coaching guide for one sprint template: the interview checklist (what to ask the user), evidence-based constraints the plan must respect, a SprintSpec s"},{"name":"validate_spec","description":"Validate a draft SprintSpec without creating anything. Returns machine-readable errors (fix and retry) and warnings (evidence-based advice — take them seriously"},{"name":"create_calendar","description":"Create a hosted Consistency Calendar from a validated SprintSpec. Returns the user's private calendar URL and an admin token for later revisions. Free; each cal"},{"name":"get_status","description":"Read structured progress for a sprint calendar (execution %, streaks, missed sessions, metric vs guide, at-risk flags) so you can coach the user. Requires the c"},{"name":"revise_calendar","description":"Replace a calendar's plan with a revised SprintSpec (life happened: injury, moved exam, new constraints). The user's ticks, moves and habit history survive; onl"},{"name":"attach_document","description":"Attach a supporting text document to a calendar — a syllabus/curriculum, exam spec, training history, race info. Stored with the calendar so any future session "},{"name":"read_document","description":"Read a document previously attached to a calendar (ids are listed in get_status under `documents`). Use when revising a plan so the new plan respects the syllab"},{"name":"create_share_link","description":"Create (or disable) a public read-only progress page for accountability: completion %, streak and countdown only — no session names, habit names or metric value"}],"toolCount":9,"toolsHash":"470a9b83c3bc7ec0b4e479434f1ef939a0f60ce335d17e830d815bde519a2f79","serverName":"consistency-calendar","capabilities":["tools"],"serverVersion":"0.2.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T05:21:23.756Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":26,"error":null,"detail":{"tools":[{"name":"list_templates","description":"Consistency Calendar (consistencycalendar.com) turns a goal with a deadline (race, exam, savings target, life event, project) into a private, gamified, evidence"},{"name":"get_template_guide","description":"Get the coaching guide for one sprint template: the interview checklist (what to ask the user), evidence-based constraints the plan must respect, a SprintSpec s"},{"name":"validate_spec","description":"Validate a draft SprintSpec without creating anything. Returns machine-readable errors (fix and retry) and warnings (evidence-based advice — take them seriously"},{"name":"create_calendar","description":"Create a hosted Consistency Calendar from a validated SprintSpec. Returns the user's private calendar URL and an admin token for later revisions. Free; each cal"},{"name":"get_status","description":"Read structured progress for a sprint calendar (execution %, streaks, missed sessions, metric vs guide, at-risk flags) so you can coach the user. Requires the c"},{"name":"revise_calendar","description":"Replace a calendar's plan with a revised SprintSpec (life happened: injury, moved exam, new constraints). The user's ticks, moves and habit history survive; onl"},{"name":"attach_document","description":"Attach a supporting text document to a calendar — a syllabus/curriculum, exam spec, training history, race info. Stored with the calendar so any future session "},{"name":"read_document","description":"Read a document previously attached to a calendar (ids are listed in get_status under `documents`). Use when revising a plan so the new plan respects the syllab"},{"name":"create_share_link","description":"Create (or disable) a public read-only progress page for accountability: completion %, streak and countdown only — no session names, habit names or metric value"}],"toolCount":9,"toolsHash":"470a9b83c3bc7ec0b4e479434f1ef939a0f60ce335d17e830d815bde519a2f79","serverName":"consistency-calendar","capabilities":["tools"],"serverVersion":"0.2.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-07T22:24:26.425Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":32,"error":null,"detail":{"tools":[{"name":"list_templates","description":"Consistency Calendar (consistencycalendar.com) turns a goal with a deadline (race, exam, savings target, life event, project) into a private, gamified, evidence"},{"name":"get_template_guide","description":"Get the coaching guide for one sprint template: the interview checklist (what to ask the user), evidence-based constraints the plan must respect, a SprintSpec s"},{"name":"validate_spec","description":"Validate a draft SprintSpec without creating anything. Returns machine-readable errors (fix and retry) and warnings (evidence-based advice — take them seriously"},{"name":"create_calendar","description":"Create a hosted Consistency Calendar from a validated SprintSpec. Returns the user's private calendar URL and an admin token for later revisions. Free; each cal"},{"name":"get_status","description":"Read structured progress for a sprint calendar (execution %, streaks, missed sessions, metric vs guide, at-risk flags) so you can coach the user. Requires the c"},{"name":"revise_calendar","description":"Replace a calendar's plan with a revised SprintSpec (life happened: injury, moved exam, new constraints). The user's ticks, moves and habit history survive; onl"},{"name":"attach_document","description":"Attach a supporting text document to a calendar — a syllabus/curriculum, exam spec, training history, race info. Stored with the calendar so any future session "},{"name":"read_document","description":"Read a document previously attached to a calendar (ids are listed in get_status under `documents`). Use when revising a plan so the new plan respects the syllab"},{"name":"create_share_link","description":"Create (or disable) a public read-only progress page for accountability: completion %, streak and countdown only — no session names, habit names or metric value"}],"toolCount":9,"toolsHash":"470a9b83c3bc7ec0b4e479434f1ef939a0f60ce335d17e830d815bde519a2f79","serverName":"consistency-calendar","capabilities":["tools"],"serverVersion":"0.2.0","protocolVersion":"2025-06-18"}}],"tools":[{"name":"list_templates","description":"Consistency Calendar (consistencycalendar.com) turns a goal with a deadline (race, exam, savings target, life event, project) into a private, gamified, evidence"},{"name":"get_template_guide","description":"Get the coaching guide for one sprint template: the interview checklist (what to ask the user), evidence-based constraints the plan must respect, a SprintSpec s"},{"name":"validate_spec","description":"Validate a draft SprintSpec without creating anything. Returns machine-readable errors (fix and retry) and warnings (evidence-based advice — take them seriously"},{"name":"create_calendar","description":"Create a hosted Consistency Calendar from a validated SprintSpec. Returns the user's private calendar URL and an admin token for later revisions. Free; each cal"},{"name":"get_status","description":"Read structured progress for a sprint calendar (execution %, streaks, missed sessions, metric vs guide, at-risk flags) so you can coach the user. Requires the c"},{"name":"revise_calendar","description":"Replace a calendar's plan with a revised SprintSpec (life happened: injury, moved exam, new constraints). The user's ticks, moves and habit history survive; onl"},{"name":"attach_document","description":"Attach a supporting text document to a calendar — a syllabus/curriculum, exam spec, training history, race info. Stored with the calendar so any future session "},{"name":"read_document","description":"Read a document previously attached to a calendar (ids are listed in get_status under `documents`). Use when revising a plan so the new plan respects the syllab"},{"name":"create_share_link","description":"Create (or disable) a public read-only progress page for accountability: completion %, streak and countdown only — no session names, habit names or metric value"}],"package":null,"toolSurface":{"id":"ts_8qwnc3vaa5mj","endpointId":"ep_9ndx6abk2y5m","hash":"470a9b83c3bc7ec0b4e479434f1ef939a0f60ce335d17e830d815bde519a2f79","toolCount":9,"serverName":"consistency-calendar","serverVersion":"0.2.0","protocolVersion":"2025-06-18","firstSeenAt":"2026-09-12T16:25:34.951Z","lastSeenAt":"2026-10-10T08:32:59.589Z","observations":101,"toolNames":["list_templates","get_template_guide","validate_spec","create_calendar","get_status","revise_calendar","attach_document","read_document","create_share_link"],"distinctSurfaces":1},"endpointFacts":[{"id":"ep_9ndx6abk2y5m","url":"https://consistencycalendar.com/mcp","type":"mcp_streamable_http","factsCheckedAt":"2026-10-08T12:25:20.229Z","auth":{"observedAt":"2026-10-08T12:25:20.288Z","authRequired":false,"scheme":null,"resourceMetadata":null,"authorizationServer":null,"conformance":{"dpop":false,"rfc8414":false,"rfc9728":false,"pkceS256":false,"clientIdMetadataDocument":false,"dynamicClientRegistration":false}},"tls":{"observedAt":"2026-10-08T12:25:20.310Z","protocol":"TLSv1.3","chainValid":true,"chainError":null,"hostMatches":true,"subject":"consistencycalendar.com","issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validFrom":"2026-09-30T11:15:31.000Z","validTo":"2026-12-29T12:15:14.000Z","daysToExpiry":79,"sanCount":2,"fingerprint256":"34:FA:CB:BF:ED:D1:A3:2C:FD:A4:FC:60:A8:20:37:1A:71:B5:56:E5:3B:DE:A4:BF:99:96:6A:F8:D9:D6:A7:6F"}}]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"io.github.olliejgooding/consistency-calendar","url":"https://registry.modelcontextprotocol.io/v0/servers/io.github.olliejgooding%2Fconsistency-calendar","firstSeenAt":"2026-09-06T22:22:28.672Z","fetchedAt":"2026-10-07T23:21:26.658Z","normalizedAt":"2026-10-07T23:21:26.658Z"}]},"firstSeenAt":"2026-09-06T22:22:28.672Z","updatedAt":"2026-10-10T08:35:15.370Z"}