Search / io.github.virwave/virwave-breathe
VirWave Breathe
R0· no sign-inCalm, animated breathing sessions paced to your breath. Runs locally and collects nothing.
v1.2.0 · active · repository · website · descriptor JSON · versions
Search / io.github.virwave/virwave-breathe
R0· no sign-inCalm, animated breathing sessions paced to your breath. Runs locally and collects nothing.
v1.2.0 · active · repository · website · descriptor JSON · versions
{
"mcpServers": {
"virwave-breathe": {
"type": "http",
"url": "https://xswebtvkueusdaeboizp.supabase.co/functions/v1/breathe"
}
}
}claude mcp add --transport http virwave-breathe https://xswebtvkueusdaeboizp.supabase.co/functions/v1/breathe[mcp_servers.virwave-breathe]
url = "https://xswebtvkueusdaeboizp.supabase.co/functions/v1/breathe"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"virwave-breathe": {
"type": "remote",
"url": "https://xswebtvkueusdaeboizp.supabase.co/functions/v1/breathe",
"enabled": true
}
}
}{
"mcpServers": {
"virwave-breathe": {
"type": "http",
"url": "https://xswebtvkueusdaeboizp.supabase.co/functions/v1/breathe"
}
},
"deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=virwave-breathe&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8veHN3ZWJ0dmt1ZXVzZGFlYm9penAuc3VwYWJhc2UuY28vZnVuY3Rpb25zL3YxL2JyZWF0aGUifQ%3D%3D"
}{
"servers": {
"virwave-breathe": {
"type": "http",
"url": "https://xswebtvkueusdaeboizp.supabase.co/functions/v1/breathe"
}
}
}{
"mcpServers": {
"virwave-breathe": {
"httpUrl": "https://xswebtvkueusdaeboizp.supabase.co/functions/v1/breathe"
}
}
}extensions:
"virwave-breathe":
enabled: true
name: "virwave-breathe"
type: streamable_http
uri: "https://xswebtvkueusdaeboizp.supabase.co/functions/v1/breathe"
timeout: 300
protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28protocol.statelessonly applies to 2026-07-28 serversprotocol.transportstreamable HTTPprotocol.list_ttlonly applies to 2026-07-28 serversauth.prm, auth.as_metadata, auth.cimdno remote uses OAuthauth.secret_in_urlno templated URLtools.descriptionsevery tool has a descriptiontools.description_lengthdescriptions are concisetools.schemasevery tool has an object input schematools.annotations3 of 3 tools declare readOnlyHint or destructiveHinttools.directory_hints2 of 3 tools declare all four hints; missing: list_patterns (destructiveHint, idempotentHint)tools.token_costabout 1,186 tokens to load every tooltools.api_dumptools are not a one-to-one API dumpstability.changesno tool changes in 30 daysstability.rug_pullno tool changed its meaning under the same namedeps.known_vulnsno known advisory in 1 resolved packagesdeps.mcp_sdk_versionthe official MCP SDK is not in the dependency graphdeps.resolvable[email protected] resolved: 1 packagesNo tool definition changes recorded. A server's first observation is its baseline; later probes record what changes.
Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.
+repository +namespace-matches-repo +website +reachable +uptime-100% +updated-26d-ago
Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.
[email protected] npm0 dependencies, resolved · advisories checked 2026-10-19
No known advisory affects this dependency graph.
Dependency graphs from deps.dev; advisories from OSV.dev, including the GitHub Advisory Database and the PyPI Advisory Database; all CC BY 4.0. The graph is what a clean install of this version resolves today; nothing was installed or run. How it is checked.
| remote | auth | reachable | uptime 30d | p50 | protocol | last ok |
|---|---|---|---|---|---|---|
https://xswebtvkueusdaeboizp.supabase.co/functions/v1/breathe streamable-http | none | yes | 100% | 378 ms | 2025-11-25 | 2026-10-20 |
| package | registry | version | runtime | secrets |
|---|---|---|---|---|
virwave-breathe | npm | 1.2.0 | npx |
breathe | 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. |
list_patternsread-only | 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. |
start_session | 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. |
Schemas: list_tools.
{
"name": "io.github.virwave/virwave-breathe",
"title": "VirWave Breathe",
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"remotes": [
{
"url": "https://xswebtvkueusdaeboizp.supabase.co/functions/v1/breathe",
"type": "streamable-http"
}
],
"version": "1.2.0",
"packages": [
{
"version": "1.2.0",
"transport": {
"type": "stdio"
},
"identifier": "virwave-breathe",
"runtimeHint": "npx",
"registryType": "npm",
"environmentVariables": [
{
"name": "VIRWAVE_INLINE",
"default": "auto",
"description": "auto (default) shows the session in the chat when the client supports MCP Apps, and opens the browser otherwise. on always answers for the chat view. off never does."
},
{
"name": "VIRWAVE_SAVE_COPY",
"default": "false",
"description": "Set to true to also save the session page when the session is shown in the chat."
},
{
"name": "VIRWAVE_OPEN_BROWSER",
"default": "true",
"description": "Used when the session is not shown in the chat. Set to false to stop new sessions opening in the default browser. The file path is returned either way."
},
{
"name": "VIRWAVE_SAVE_DIR",
"description": "Folder for session pages. Defaults to a VirWave Breathe folder in the system temp directory."
}
]
}
],
"repository": {
"url": "https://github.com/virwave/virwave-breathe",
"source": "github"
},
"websiteUrl": "https://virwave.com",
"description": "Calm, animated breathing sessions paced to your breath. Runs locally and collects nothing."
}