Koskamo

Good Turn Studio Sync My Cycle MCP

Sync My Cycle MCP provides menstrual cycle phase tracking, offering daily and weekly insights into likely phases (menstrual, follicular, ovulatory, luteal) along with tailored workout and food suggestions. It uses only user-provided dates, stores no data, and requires no sign-in, serving as a privacy-focused helper for cycle syncing and general wellbeing guidance.

Endpoint and access

No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.

Good Turn Studio Sync My Cycle MCP logo, by Good Turn StudioCommunity listingStreamable HTTPNo sign-inEndpoint checked 2026-11-06Published by Good Turn Studio
MCP endpoint (Streamable HTTP)
https://goodturn-mcp.pages.dev/syncmycycle/mcp
Vendor documentation

What its tools do

3 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.

3 of 3 have a description · 3 of 3 declare behavior hints · 2 of 2 with parameters document them all

Checks and signals

Each line is separate evidence, not a trust score.

  • Passed Endpoint answered the live check ·
  • Availability 1 of 1 checks passed in 30 days

What you can do with it

  • Determine today's menstrual cycle phase and get suitable workout and food ideas
  • Plan training or meals for the week based on predicted cycle phases
  • Learn about general feelings and dietary needs for each cycle phase without specific dates

Source and maintenance

Community listingRegistry 1.3.0
Maintenance checked

Protocol and capabilities

Server
goodturn-syncmycycle 1.3.0
MCP protocol negotiated in check
2025-11-25
Tools
3 advertised
Resources
Not advertised
Resource templates
Not advertised
Prompts
Not advertised
Server-advertised capabilities
{
  "tools": {
    "listChanged": false
  }
}

Server-provided instructions

Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.

Tells the user which phase of their menstrual cycle they are probably in today (menstrual, follicular, higher-energy or luteal; the higher-energy phase has the key `ovulatory`), with workout and food ideas that suit it, and a look at the week ahead. Uses only the dates the user gives in the conversation. Nothing is stored or logged, and there is no account. Every answer has a ready-to-read `say` line and a `note` that must be respected: general wellbeing guidance only, not medical advice, and never for planning or avoiding pregnancy. Every tool is read-only and nothing about the user is stored. Where an answer has a "say" field, it is a ready-to-read summary. More at https://syncmycycle.pages.dev

Tools

3 advertised

get_todays_phase — Today's cycle phase, with workout and food ideas
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Today's cycle phase, with workout and food ideas. For when the user asks what phase they are in, what workout or food suits them today, or why their energy is up or down, for example "what phase am I in, my last period started September 12th" or "what should I train today?". Needs the first day of their last period. Not for getting pregnant, fertile days, ovulation timing, contraception or pregnancy: this is general wellbeing only, not for pregnancy planning or contraception, and a doctor or pharmacist is the right person for those. When `period_may_be_late` is true the say line says the period may be late and suggests checking with a doctor.

get_todays_phase input schema
{
  "type": "object",
  "required": [
    "last_period"
  ],
  "properties": {
    "tz": {
      "type": "string",
      "description": "The user's IANA time zone, for example Europe/London or America/Chicago, so today is the user's today. Optional: country is enough in most places."
    },
    "date": {
      "type": "string",
      "format": "date",
      "description": "Day to ask about, YYYY-MM-DD, a real calendar day. Default today where the user is: from tz, else country, else the request, else UTC."
    },
    "diet": {
      "type": "string",
      "description": "Comma separated: vegetarian, vegan, pescatarian, halal. Food ideas are filtered to suit."
    },
    "country": {
      "type": "string",
      "description": "Two-letter country code (UK is read as GB). Sets the kit links (US, GB and IE get local Amazon links) and the time zone for today. Default from the request."
    },
    "last_period": {
      "type": "string",
      "format": "date",
      "description": "First day of the user's most recent period, YYYY-MM-DD. Must be within the last 120 days."
    },
    "cycle_length": {
      "type": "integer",
      "maximum": 45,
      "minimum": 20,
      "description": "Usual days from one period start to the next, 20 to 45. Default 28."
    },
    "period_length": {
      "type": "integer",
      "maximum": 10,
      "minimum": 2,
      "description": "Usual days of bleeding, 2 to 10. Default 5."
    },
    "last_period_start": {
      "type": "string",
      "format": "date",
      "description": "Older name for last_period, kept for existing callers; last_period is the current name."
    }
  },
  "additionalProperties": false
}
get_todays_phase annotations
{
  "title": "Today's cycle phase, with workout and food ideas",
  "readOnlyHint": true,
  "openWorldHint": true,
  "idempotentHint": true,
  "destructiveHint": false
}
get_week_ahead — The days ahead by phase
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

The days ahead by phase. For when the user wants to plan training or meals for the week, for example "plan my training this week around my cycle". Returns each day's likely phase, workout focus, intensity and food focus. Not for getting pregnant, fertile days, ovulation timing, contraception or pregnancy: this is general wellbeing only, not for pregnancy planning or contraception, and it is not a fertility calendar. When `period_may_be_late` is true, `days` is empty and the say line suggests checking with a doctor.

get_week_ahead input schema
{
  "type": "object",
  "required": [
    "last_period"
  ],
  "properties": {
    "tz": {
      "type": "string",
      "description": "The user's IANA time zone, for example Europe/London or America/Chicago, so today is the user's today. Optional: country is enough in most places."
    },
    "date": {
      "type": "string",
      "format": "date",
      "description": "First day of the plan, YYYY-MM-DD, a real calendar day. Default today where the user is: from tz, else country, else the request, else UTC."
    },
    "days": {
      "type": "integer",
      "maximum": 35,
      "minimum": 1,
      "description": "How many days, a whole number from 1 to 35. Default 7."
    },
    "diet": {
      "type": "string",
      "description": "Accepted for symmetry with get_todays_phase; the week view has no food list, so it has no effect here."
    },
    "country": {
      "type": "string",
      "description": "Two-letter country code (UK is read as GB), used for the time zone of today."
    },
    "last_period": {
      "type": "string",
      "format": "date",
      "description": "First day of the user's most recent period, YYYY-MM-DD. Must be within the last 120 days."
    },
    "cycle_length": {
      "type": "integer",
      "maximum": 45,
      "minimum": 20,
      "description": "Usual cycle length, 20 to 45. Default 28."
    },
    "period_length": {
      "type": "integer",
      "maximum": 10,
      "minimum": 2,
      "description": "Usual days of bleeding, 2 to 10. Default 5."
    },
    "last_period_start": {
      "type": "string",
      "format": "date",
      "description": "Older name for last_period, kept for existing callers; last_period is the current name."
    }
  },
  "additionalProperties": false
}
get_week_ahead annotations
{
  "title": "The days ahead by phase",
  "readOnlyHint": true,
  "openWorldHint": true,
  "idempotentHint": true,
  "destructiveHint": false
}
list_phases — What each phase usually feels like, with workout and food ideas
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

What each phase usually feels like, with workout and food ideas. For general questions about cycle syncing that need no dates, for example "what should I eat in my luteal phase?". Not for conception, fertile days, contraception or pregnancy: general wellbeing only, not for pregnancy planning or contraception.

list_phases input schema
{
  "type": "object",
  "required": [],
  "properties": {},
  "additionalProperties": false
}
list_phases annotations
{
  "title": "What each phase usually feels like, with workout and food ideas",
  "readOnlyHint": true,
  "openWorldHint": true,
  "idempotentHint": true,
  "destructiveHint": false
}

Prompts

Not advertised

No prompt definitions available.

Resources

Not advertised

No resource definitions available.

90-day uptime

A lightweight connection check about every six hours, sampled on hosts with many listings. It shows the server answered, not that its tools work.

Too few checks for a percentage yet (1 of 1 answered).

  1. 2026-11-06: 1 of 1 checks answered

30-day availability

Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.

Successful checks
1 of 1 (100%)
Average latency
250 ms
95th percentile latency
250 ms

Maintenance history

Public check and source-refresh events. Editorial and ownership records remain private.

  • · probe · passed · 250 ms · metadata changed · 3 tool(s)

Connect from your client

Each snippet registers the same endpoint; pick the client you use.

This server is operated by the named third party. Listing and endpoint checks are not an endorsement or a security audit. Review the operator's permissions, terms, and data handling before connecting. How listings are checked and corrected.

Claude Code

Run this once in a terminal. It registers the remote server. Use --scope project to write .mcp.json for the repo.
Claude Code configuration
claude mcp add --transport http sync-my-cycle-mcp https://goodturn-mcp.pages.dev/syncmycycle/mcp

Codex

Run this once. Codex stores MCP servers in ~/.codex/config.toml (or .codex/config.toml in a trusted project).
Codex configuration
codex mcp add sync-my-cycle-mcp --url https://goodturn-mcp.pages.dev/syncmycycle/mcp

Cursor

Merge this server into .cursor/mcp.json in your project, then enable sync-my-cycle-mcp in your MCP settings.
Cursor configuration
{
  "mcpServers": {
    "sync-my-cycle-mcp": {
      "url": "https://goodturn-mcp.pages.dev/syncmycycle/mcp"
    }
  }
}

Cline

Merge this into cline_mcp_settings.json (Cline → MCP Servers → Configure).
Cline configuration
{
  "mcpServers": {
    "sync-my-cycle-mcp": {
      "type": "streamableHttp",
      "url": "https://goodturn-mcp.pages.dev/syncmycycle/mcp",
      "disabled": false
    }
  }
}

VS Code

Merge this server into .vscode/mcp.json. Use MCP: List Servers to start sync-my-cycle-mcp and inspect its tools.
VS Code configuration
{
  "servers": {
    "sync-my-cycle-mcp": {
      "type": "http",
      "url": "https://goodturn-mcp.pages.dev/syncmycycle/mcp"
    }
  }
}

Gemini CLI

Run this once. It writes .gemini/settings.json in the current project; pass --scope user for ~/.gemini/settings.json.
Gemini CLI configuration
gemini mcp add --transport http sync-my-cycle-mcp https://goodturn-mcp.pages.dev/syncmycycle/mcp

Claude Desktop

Open Claude Settings > Connectors > Add custom connector, enter this server URL and enable it for the conversation. This is a manual remote-connector handoff, not a desktop JSON configuration.
Claude Desktop configuration
https://goodturn-mcp.pages.dev/syncmycycle/mcp

Windsurf

Merge this into ~/.codeium/windsurf/mcp_config.json, then refresh MCP in Cascade. Windsurf remote servers use serverUrl, not url.
Windsurf configuration
{
  "mcpServers": {
    "sync-my-cycle-mcp": {
      "serverUrl": "https://goodturn-mcp.pages.dev/syncmycycle/mcp"
    }
  }
}

Let your agent find its tools

Find servers like Good Turn Studio Sync My Cycle MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.