VirWave Breathe

Calm, animated breathing sessions paced to your breath. Runs locally and collects nothing.

사용해야 할까요

품질 및 안전성

A
설명 품질
100%
스키마 완전성
73%
이름 품질
93%
오염 위험
100%
권한 일치
100%
프로토콜 준수
100%

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~1,168토큰 (도구 정의)
~2.6 KB일반적인 응답 크기
중간 정도의 주의 영향 (128k 컨텍스트의 0.91%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "virwave-breathe": {
      "command": "npx",
      "args": [
        "virwave-breathe"
      ]
    }
  }
}

실행 가능한 패키지

npmvirwave-breathe1.2.0stdio

원격 엔드포인트

https://xswebtvkueusdaeboizp.supabase.co/functions/v1/breathestreamable-http

할 수 있는 일

도구 목록

도구 (3)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢list_patterns

Lists the VirWave breathing patterns this server can play: phases and seconds, what each rhythm is good for, which shapes can draw it, whether it is hold-free, and any safety note about breath holds. Hold-free patterns are listed first.

입력 스키마

{
  "type": "object",
  "properties": {}
}
⚪breathe(pattern, shape, minutes, cycles)

Creates an animated VirWave breathing session the person can follow with their eyes. Invoke it when someone asks for a breathing break, a breathing exercise, guided breathing, or a moment to calm down, relax, or reset: the visual session is the breathing break. In a client that supports MCP Apps (Claude on the web and in the desktop app, for example), the session appears in the chat itself. The result also carries a link to the same session as a web page, for any client that cannot draw it there. Either way the session opens at rest and starts when the person presses Begin, so nothing moves without their say-so. With no inputs, it plays the default Circle 4-8 Breathing session, which has no breath holds.

입력 스키마

{
  "type": "object",
  "properties": {
    "pattern": {
      "description": "Pattern id from list_patterns. Defaults to in-out-extended-exhale. list_patterns marks each hold-free pattern with \"holdFree\": true.",
      "type": "string",
      "enum": [
        "in-out-equal-4",
        "in-out-slow-5",
        "in-out-extended-exhale",
        "in-out-quick-2",
        "in-hold-out-equal-4",
        "in-hold-out-extended-exhale",
        "in-hold-out-quick-2",
        "box-equal-4",
        "box-quick-3",
        "4-7-8-signature"
      ]
    },
    "shape": {
      "description": "Shape to draw. Each pattern lists the shapes it can use; defaults to the pattern's first. box: A square whose outline draws itself once per breath cycle. triangle: A triangle whose outline draws itself once per breath cycle. circle: A ring that draws itself once per breath cycle, with no corners to turn. focus-point: A calm point drifting slowly across the field. infinity: A continuous figure-eight with no start or end. ripple: Rings spreading out from a point of contact. color-field: Slow colour folding into itself.",
      "type": "string",
      "enum": [
        "box",
        "triangle",
        "circle",
        "focus-point",
        "infinity",
        "ripple",
        "color-field"
      ]
    },
    "minutes": {
      "description": "Approximate session length; rounded to whole breath cycles.",
      "type": "number",
      "exclusiveMinimum": 0,
      "maximum": 30
    },
    "cycles": {
      "description": "Exact number of breath cycles. Takes precedence over minutes.",
      "type": "integer",
      "minimum": 1,
      "maximum": 60
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪start_session(feeling, goal, minutes)

Matches a VirWave session the way the app's entry flow does: how clearly a feeling is coming through, what they'd like instead, and how long they have. Invoke it when someone says how they are feeling, or what they would like to feel instead, and wants a breathing session that fits. The session moves through stages (arrive, the matched core, close), each with its own shape, at one steady breath pace, and ends at the chosen length. In a client that supports MCP Apps (Claude on the web and in the desktop app, for example), the session appears in the chat itself. The result also carries a link to the same session as a web page, for any client that cannot draw it there. Either way the session waits for Begin, and the result says why it was picked and which stages it has. Every matched session is hold-free: breathe in, a longer breath out.

입력 스키마

{
  "type": "object",
  "properties": {
    "feeling": {
      "type": "string",
      "enum": [
        "flat",
        "faint",
        "nameable",
        "directional",
        "insistent",
        "saturating"
      ],
      "description": "How the feeling is coming through: how clearly, not which feeling it is. The options describe how clear the signal is, and none of them names an emotion. flat (Flat / no signal: Numb, far off, nothing registers.) faint (Faint trace: Something is there but not describable.) nameable (Nameable: A word fits, with hedging.) directional (Directional: It points at something specific.) insistent (Insistent: Hard to set aside, keeps returning.) saturating (Saturating: Too much at once, loud and fast.)"
    },
    "goal": {
      "type": "string",
      "enum": [
        "grounded",
        "calm",
        "clear",
        "unstuck",
        "settled"
      ],
      "description": "What they'd like instead. grounded (Grounded: Back in the body, contact restored.) calm (Calm: Slower, softer, less pressure.) clear (Clear: One thing at a time, in focus.) unstuck (Unstuck: The loop loosens and moves on.) settled (Settled: Steady enough to rest.)"
    },
    "minutes": {
      "type": "number",
      "enum": [
        2,
        5,
        10,
        15
      ],
      "description": "How long they have: 2, 5, 10, or 15 minutes. Longer sessions move through more stages, not just more time."
    }
  },
  "required": [
    "feeling",
    "goal",
    "minutes"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 3개