Sync My Cycle

Your likely menstrual cycle phase today and this week, with food and workout ideas.

我该使用它吗

质量与安全性

A
描述质量
100%
模式完整度
77%
命名质量
100%
投毒风险
100%
权限匹配度
100%
协议合规性
100%

基于对工具定义和协议合规性的自动分析。

上下文开销

~1,180token 数(工具定义)
~2.8 KB典型响应大小
对注意力有中等影响(占 128k 上下文窗口的 0.92%)

这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。

安装

一键安装

将以下内容添加到你的 `claude_desktop_config.json` 文件中:

{
  "mcpServers": {
    "syncmycycle": {
      "url": "https://goodturn-mcp.pages.dev/syncmycycle/mcp"
    }
  }
}

远程端点

https://goodturn-mcp.pages.dev/syncmycycle/mcpstreamable-http

它能做什么

工具清单

工具(3)

🟢 只读🟡 写入🔴 删除⚪ 未知
🟢get_todays_phase(last_period, cycle_length, period_length, date, diet, ...)

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.

输入模式

{
  "type": "object",
  "properties": {
    "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",
      "minimum": 20,
      "maximum": 45,
      "description": "Usual days from one period start to the next, 20 to 45. Default 28."
    },
    "period_length": {
      "type": "integer",
      "minimum": 2,
      "maximum": 10,
      "description": "Usual days of bleeding, 2 to 10. Default 5."
    },
    "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."
    },
    "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."
    },
    "last_period_start": {
      "type": "string",
      "format": "date",
      "description": "Older name for last_period, kept for existing callers; last_period is the current name."
    }
  },
  "required": [
    "last_period"
  ],
  "additionalProperties": false
}
🟢get_week_ahead(last_period, cycle_length, period_length, date, days, ...)

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.

输入模式

{
  "type": "object",
  "properties": {
    "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",
      "minimum": 20,
      "maximum": 45,
      "description": "Usual cycle length, 20 to 45. Default 28."
    },
    "period_length": {
      "type": "integer",
      "minimum": 2,
      "maximum": 10,
      "description": "Usual days of bleeding, 2 to 10. Default 5."
    },
    "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",
      "minimum": 1,
      "maximum": 35,
      "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."
    },
    "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."
    },
    "last_period_start": {
      "type": "string",
      "format": "date",
      "description": "Older name for last_period, kept for existing callers; last_period is the current name."
    }
  },
  "required": [
    "last_period"
  ],
  "additionalProperties": false
}
🟢list_phases

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.

输入模式

{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}

社区

评价此服务器

证据

最近观测

已验证未记录版本3 个工具