Consistency Calendar

Turn any goal with a deadline into a private, gamified, evidence-based execution calendar.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
85%
Naming quality
96%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,846Tokens (tool definitions)
~1.4 KBTypical response size
Moderate attention impact (1.44% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "consistency-calendar": {
      "url": "https://consistencycalendar.com/mcp"
    }
  }
}

Remote endpoints

https://consistencycalendar.com/mcpstreamable-http

What it can do

Tool inventory

Tools (9)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢list_templates

Consistency Calendar (consistencycalendar.com) turns a goal with a deadline (race, exam, savings target, life event, project) into a private, gamified, evidence-based execution calendar the user ticks off daily. Call this first to see the available sprint templates. It is a general planning tool, not a medical, financial, or treatment service.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Output Schema

{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "propertyNames": {
    "type": "string"
  },
  "additionalProperties": {},
  "description": "JSON object returned by the tool."
}
🟢get_template_guide(template_id, goal)

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 skeleton to adapt, and hard decline criteria. Pass the user's goal in `goal` to also receive a goal-specific playbook (marathon, HYROX, Ironman, weight loss, exam season, certifications, language exams…).

Input Schema

{
  "type": "object",
  "properties": {
    "template_id": {
      "type": "string",
      "description": "One of the ids from list_templates"
    },
    "goal": {
      "description": "The user's goal in their words, e.g. \"first marathon in April\" — matches an expert playbook when available",
      "type": "string"
    }
  },
  "required": [
    "template_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Output Schema

{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "propertyNames": {
    "type": "string"
  },
  "additionalProperties": {},
  "description": "JSON object returned by the tool."
}
🟢validate_spec(spec)

Validate a draft SprintSpec without creating anything. Returns machine-readable errors (fix and retry) and warnings (evidence-based advice — take them seriously).

Input Schema

{
  "type": "object",
  "properties": {
    "spec": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {},
      "description": "The SprintSpec v1 JSON object"
    }
  },
  "required": [
    "spec"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Output Schema

{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "propertyNames": {
    "type": "string"
  },
  "additionalProperties": {},
  "description": "JSON object returned by the tool."
}
🟡create_calendar(spec)

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 calendar includes 2 free AI revisions.

Input Schema

{
  "type": "object",
  "properties": {
    "spec": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {},
      "description": "A SprintSpec v1 that passed validate_spec"
    }
  },
  "required": [
    "spec"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Output Schema

{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "propertyNames": {
    "type": "string"
  },
  "additionalProperties": {},
  "description": "JSON object returned by the tool."
}
🟢get_status(calendar_id, admin_token, today)

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 calendar_id and admin_token from create_calendar.

Input Schema

{
  "type": "object",
  "properties": {
    "calendar_id": {
      "type": "string"
    },
    "admin_token": {
      "type": "string"
    },
    "today": {
      "description": "User-local date YYYY-MM-DD; defaults to server UTC date",
      "type": "string"
    }
  },
  "required": [
    "calendar_id",
    "admin_token"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Output Schema

{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "propertyNames": {
    "type": "string"
  },
  "additionalProperties": {},
  "description": "JSON object returned by the tool."
}
🔴revise_calendar(calendar_id, admin_token, spec, reason)

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; only the template layer changes. First 2 revisions per calendar are free.

Input Schema

{
  "type": "object",
  "properties": {
    "calendar_id": {
      "type": "string"
    },
    "admin_token": {
      "type": "string"
    },
    "spec": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {},
      "description": "The full revised SprintSpec v1"
    },
    "reason": {
      "description": "One line on why, for the version history",
      "type": "string"
    }
  },
  "required": [
    "calendar_id",
    "admin_token",
    "spec"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Output Schema

{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "propertyNames": {
    "type": "string"
  },
  "additionalProperties": {},
  "description": "JSON object returned by the tool."
}
🟢attach_document(calendar_id, admin_token, name, content)

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 can read it when revising the plan. Text only (paste text out of PDFs), max 5 docs × 200KB.

Input Schema

{
  "type": "object",
  "properties": {
    "calendar_id": {
      "type": "string"
    },
    "admin_token": {
      "type": "string"
    },
    "name": {
      "type": "string",
      "description": "Short document name, e.g. \"AQA Biology GCSE spec\""
    },
    "content": {
      "type": "string",
      "description": "The full text content"
    }
  },
  "required": [
    "calendar_id",
    "admin_token",
    "name",
    "content"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Output Schema

{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "propertyNames": {
    "type": "string"
  },
  "additionalProperties": {},
  "description": "JSON object returned by the tool."
}
🟢read_document(calendar_id, admin_token, doc_id)

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 syllabus/history the user provided.

Input Schema

{
  "type": "object",
  "properties": {
    "calendar_id": {
      "type": "string"
    },
    "admin_token": {
      "type": "string"
    },
    "doc_id": {
      "type": "string"
    }
  },
  "required": [
    "calendar_id",
    "admin_token",
    "doc_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Output Schema

{
  "type": "object",
  "properties": {
    "content": {
      "description": "The attached document text.",
      "type": "string"
    },
    "error": {
      "description": "A user-safe error message when the document cannot be read.",
      "type": "string"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟡create_share_link(calendar_id, admin_token, disable)

Create (or disable) a public read-only progress page for accountability: completion %, streak and countdown only — no session names, habit names or metric values. Free during early access.

Input Schema

{
  "type": "object",
  "properties": {
    "calendar_id": {
      "type": "string"
    },
    "admin_token": {
      "type": "string"
    },
    "disable": {
      "description": "true to turn an existing share page off",
      "type": "boolean"
    }
  },
  "required": [
    "calendar_id",
    "admin_token"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Output Schema

{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "propertyNames": {
    "type": "string"
  },
  "additionalProperties": {},
  "description": "JSON object returned by the tool."
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded9 tools
verifiedversion not recorded9 tools
verifiedversion not recorded9 tools