CareClinic Health Tracker
Review schedules, symptoms, mood, and explicitly confirmed CareClinic check-ins.
사용해야 할까요
품질 및 안전성
도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.
컨텍스트 비용
이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.
설치
원클릭 설치
`claude_desktop_config.json` 파일에 다음을 추가하세요:
{
"mcpServers": {
"health-tracker": {
"url": "https://mcp.careclinic.io/mcp"
}
}
}원격 엔드포인트
https://mcp.careclinic.io/mcpstreamable-http할 수 있는 일
도구 목록
도구 (8)
🟢careclinic_capabilities
Shows the CareClinic data and actions available in this release.
입력 스키마
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}출력 스키마
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "capabilities"
},
"domains": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"description": {
"type": "string"
}
},
"required": [
"id",
"name",
"description"
],
"additionalProperties": false
}
}
},
"required": [
"kind",
"domains"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢careclinic_account
Returns the connected CareClinic account’s plan and basic-versus-full insight entitlement.
입력 스키마
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}출력 스키마
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "account"
},
"account": {
"type": "object",
"properties": {
"isPremium": {
"type": "boolean"
},
"insightLevel": {
"type": "string",
"enum": [
"basic",
"full"
]
},
"planLabel": {
"type": "string",
"maxLength": 80
}
},
"required": [
"isPremium",
"insightLevel"
],
"additionalProperties": false
},
"premiumInfoUrl": {
"type": "string",
"format": "uri"
}
},
"required": [
"kind",
"account",
"premiumInfoUrl"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢careclinic_today_schedule
Returns today’s owned medication and supplement occurrences with time, dose, reminder identity, and status.
입력 스키마
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}출력 스키마
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "today_schedule"
},
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"occurrenceId": {
"type": "string"
},
"medicationId": {
"type": "string"
},
"medicationName": {
"type": "string"
},
"scheduledAt": {
"type": "string"
},
"status": {
"type": "string",
"enum": [
"upcoming",
"taken",
"skipped",
"snoozed"
]
},
"dose": {
"type": "string"
},
"unit": {
"type": "string"
},
"doseForm": {
"type": "string"
},
"reminderId": {
"type": "string"
},
"reminderIndex": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
}
},
"required": [
"occurrenceId",
"medicationId",
"medicationName",
"scheduledAt",
"status"
],
"additionalProperties": false
}
}
},
"required": [
"kind",
"items"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢careclinic_search_catalog(domain, query)
Finds an owned medication or symptom before preparing a log. Never invent an item ID.
입력 스키마
{
"type": "object",
"properties": {
"domain": {
"type": "string",
"enum": [
"symptom",
"medication"
]
},
"query": {
"type": "string",
"minLength": 1,
"maxLength": 80
}
},
"required": [
"domain",
"query"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}출력 스키마
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "catalog_results"
},
"domain": {
"type": "string",
"enum": [
"symptom",
"medication"
]
},
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"domain": {
"type": "string",
"enum": [
"symptom",
"medication"
]
},
"secondaryLabel": {
"type": "string"
}
},
"required": [
"id",
"name",
"domain"
],
"additionalProperties": false
}
}
},
"required": [
"kind",
"domain",
"items"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢careclinic_recent_wellness(days, include)
Returns minimized symptom, mood, and medication activity. Notes and internal record IDs are excluded.
입력 스키마
{
"type": "object",
"properties": {
"days": {
"default": 30,
"type": "integer",
"minimum": 1,
"maximum": 90
},
"include": {
"default": [
"symptom",
"mood",
"medication"
],
"minItems": 1,
"maxItems": 3,
"type": "array",
"items": {
"type": "string",
"enum": [
"symptom",
"mood",
"medication"
]
}
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}출력 스키마
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "wellness_snapshot"
},
"snapshot": {
"type": "object",
"properties": {
"from": {
"type": "string"
},
"to": {
"type": "string"
},
"symptoms": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"severity": {
"type": "number"
},
"occurredAt": {
"type": "string"
},
"durationMinutes": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
}
},
"required": [
"name",
"severity",
"occurredAt"
],
"additionalProperties": false
}
},
"moods": {
"type": "array",
"items": {
"type": "object",
"properties": {
"label": {
"type": "string"
},
"valence": {
"type": "number"
},
"energy": {
"type": "number"
},
"occurredAt": {
"type": "string"
}
},
"required": [
"valence",
"occurredAt"
],
"additionalProperties": false
}
},
"medications": {
"type": "array",
"items": {
"type": "object",
"properties": {
"medicationName": {
"type": "string"
},
"action": {
"type": "string",
"enum": [
"taken",
"skipped"
]
},
"occurredAt": {
"type": "string"
},
"dose": {
"type": "string"
}
},
"required": [
"medicationName",
"action",
"occurredAt"
],
"additionalProperties": false
}
}
},
"required": [
"from",
"to",
"symptoms",
"moods",
"medications"
],
"additionalProperties": false
}
},
"required": [
"kind",
"snapshot"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢careclinic_get_insights(days, include)
Creates deterministic observational summaries. Free accounts receive basic counts; detailed reports and chart values are returned only for Premium accounts.
입력 스키마
{
"type": "object",
"properties": {
"days": {
"default": 30,
"type": "integer",
"minimum": 3,
"maximum": 90
},
"include": {
"default": [
"symptom",
"mood",
"medication"
],
"minItems": 1,
"maxItems": 3,
"type": "array",
"items": {
"type": "string",
"enum": [
"symptom",
"mood",
"medication"
]
}
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}출력 스키마
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "insight_access"
},
"access": {
"oneOf": [
{
"type": "object",
"properties": {
"level": {
"type": "string",
"const": "basic"
},
"isPremium": {
"type": "boolean",
"const": false
},
"premiumInfoUrl": {
"type": "string",
"format": "uri"
},
"dataCoverage": {
"type": "object",
"properties": {
"symptomEntries": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"moodEntries": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"medicationEntries": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"symptomEntries",
"moodEntries",
"medicationEntries"
],
"additionalProperties": false
},
"basicSummary": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"level",
"isPremium",
"premiumInfoUrl",
"dataCoverage",
"basicSummary"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"level": {
"type": "string",
"const": "full"
},
"isPremium": {
"type": "boolean",
"const": true
},
"dataCoverage": {
"type": "object",
"properties": {
"symptomEntries": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"moodEntries": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"medicationEntries": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"symptomEntries",
"moodEntries",
"medicationEntries"
],
"additionalProperties": false
},
"report": {
"type": "object",
"properties": {
"generatedAt": {
"type": "string"
},
"period": {
"type": "object",
"properties": {
"from": {
"type": "string"
},
"to": {
"type": "string"
}
},
"required": [
"from",
"to"
],
"additionalProperties": false
},
"insights": {
"type": "array",
"items": {
"type": "object",
"properties": {
"title": {
"type": "string"
},
"observation": {
"type": "string"
},
"evidence": {
"type": "string"
}
},
"required": [
"title",
"observation",
"evidence"
],
"additionalProperties": false
}
},
"chart": {
"type": "array",
"items": {
"type": "object",
"properties": {
"date": {
"type": "string"
},
"label": {
"type": "string"
},
"average": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
}
},
"required": [
"date",
"label",
"average"
],
"additionalProperties": false
}
},
"safety": {
"type": "string"
}
},
"required": [
"generatedAt",
"period",
"insights",
"chart",
"safety"
],
"additionalProperties": false
}
},
"required": [
"level",
"isPremium",
"dataCoverage",
"report"
],
"additionalProperties": false
}
]
}
},
"required": [
"kind",
"access"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢careclinic_preview_log(entry)
Validates an exact symptom or mood entry and creates a short-lived confirmation preview. It never writes data. Medication writes are disabled for this launch.
입력 스키마
{
"type": "object",
"properties": {
"entry": {
"oneOf": [
{
"type": "object",
"properties": {
"domain": {
"type": "string",
"const": "symptom"
},
"symptomId": {
"type": "string",
"minLength": 32,
"maxLength": 1024,
"pattern": "^cc1\\.[A-Za-z0-9_-]+\\.[A-Za-z0-9_-]+$"
},
"name": {
"type": "string",
"maxLength": 120
},
"severity": {
"type": "integer",
"minimum": 1,
"maximum": 10
},
"occurredAt": {
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
},
"durationMinutes": {
"type": "integer",
"minimum": 0,
"maximum": 43200
},
"note": {
"type": "string",
"maxLength": 300
}
},
"required": [
"domain",
"symptomId",
"name",
"severity",
"occurredAt"
]
},
{
"type": "object",
"properties": {
"domain": {
"type": "string",
"const": "mood"
},
"label": {
"type": "string",
"maxLength": 120
},
"valence": {
"type": "integer",
"minimum": -5,
"maximum": 5
},
"energy": {
"type": "integer",
"minimum": 0,
"maximum": 10
},
"occurredAt": {
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
},
"note": {
"type": "string",
"maxLength": 300
}
},
"required": [
"domain",
"valence",
"occurredAt"
]
},
{
"type": "object",
"properties": {
"domain": {
"type": "string",
"const": "medication"
},
"medicationId": {
"type": "string",
"minLength": 32,
"maxLength": 1024,
"pattern": "^cc1\\.[A-Za-z0-9_-]+\\.[A-Za-z0-9_-]+$"
},
"medicationName": {
"type": "string",
"maxLength": 120
},
"action": {
"type": "string",
"enum": [
"taken",
"skipped"
]
},
"occurredAt": {
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
},
"reminderId": {
"type": "string",
"minLength": 32,
"maxLength": 1024,
"pattern": "^cc1\\.[A-Za-z0-9_-]+\\.[A-Za-z0-9_-]+$"
},
"reminderIndex": {
"type": "integer",
"minimum": 0,
"maximum": 1000
},
"note": {
"type": "string",
"maxLength": 300
}
},
"required": [
"domain",
"medicationId",
"medicationName",
"action",
"occurredAt"
]
}
]
}
},
"required": [
"entry"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}출력 스키마
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "log_preview"
},
"preview": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
},
{
"type": "boolean"
}
]
}
},
"expiresAt": {
"type": "string"
},
"requiresExplicitConfirmation": {
"type": "boolean",
"const": true
}
},
"required": [
"kind",
"preview",
"expiresAt",
"requiresExplicitConfirmation"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🔴careclinic_commit_log(confirmationToken, confirmed)
App-only write used by the CareClinic confirmation card. It writes only the exact entry represented by a valid signed preview after explicit confirmation. Replaying the same preview returns the original receipt instead of creating a duplicate.
입력 스키마
{
"type": "object",
"properties": {
"confirmationToken": {
"type": "string",
"minLength": 80,
"maxLength": 12000
},
"confirmed": {
"type": "boolean",
"const": true
}
},
"required": [
"confirmationToken",
"confirmed"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}출력 스키마
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "write_receipt"
},
"receipt": {
"type": "object",
"properties": {
"saved": {
"type": "boolean",
"const": true
},
"domain": {
"type": "string",
"enum": [
"symptom",
"mood",
"medication"
]
},
"occurredAt": {
"type": "string"
},
"summary": {
"type": "string"
},
"duplicatePrevented": {
"type": "boolean"
}
},
"required": [
"saved",
"domain",
"occurredAt",
"summary",
"duplicatePrevented"
],
"additionalProperties": false
}
},
"required": [
"kind",
"receipt"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}커뮤니티
증거