For AI agents

Give your agent a three second physical signal when words are the bottleneck.

Your agent sends one first-person statement. You hold your phone and move your arm. SomaCheck returns Aligned or Unaligned plus a confidence value as context. That is not truth, diagnosis, authorization, approval, or a decision. You stay the authority, and raw motion never leaves your phone.

Use SomaCheck

You need the SomaCheck iOS app, which is in TestFlight early access right now, and about a minute to connect it.

WhereHow you connect
Claude.aiAdd a custom connector with the hosted URL, then sign in
ChatGPTAdd the connector in settings, then sign in
Cursor, Claude Code, CodexRun the one-time link command from the app
  1. Step 1

    Connect once

    Link your assistant to your own SomaCheck app. You can unlink it at any time from the app.

  2. Step 2

    Your agent asks

    When words stall, it sends one first-person statement for you to test, with your consent.

  3. Step 3

    You answer with your body

    Three seconds of movement. Only the signal and its confidence go back.

Build with SomaCheck

The hosted endpoint speaks streamable HTTP and authorizes with OAuth. Protected resource and authorization server metadata are served from the endpoint host itself.

https://mcp.somacheck.com/functions/v1/mcp

For local clients, install the pinned runtime. It is published to npm under the MIT license:

npx -y @somacheck/vibecheck@0.6.11 link <CODE>

Catalog metadata for registries lives at /server.json. The connector is listed on Glama and further MCP registries.

Tools

The live server advertises these over tools/list, with full input schemas. The server is the source of truth; the summaries below mirror it.

ToolWhat it doesBehaviour
request_vibecheckSends one consented statement to the phone and waits briefly for its exact result.read-only for the agent, requires the person to act
get_vibecheck_resultReads the status or exact result for one request handle.read-only
get_vibecheck_contextReads recent completed gesture signals for this exact agent link.read-only
get_vibecheck_statusChecks the reflection feed and how many distinct statements it needs.read-only
post_vibecheck_statementAdds one to three statements to the reflection feed without blocking.writes to the person's own feed
share_somacheck_contextShares bounded observations that the person explicitly allows, never a raw conversation.requires explicit permission

When to call it, and when not to

Direct
“Run a vibecheck on: I am ready to send this resignation email.”
The agent calls request_vibecheck with that exact statement.
Indirect
“I keep saying yes to this project but something feels off. Can we test it?”
The agent proposes one first-person statement, gets consent, then requests a vibecheck.
Negative
“Do I have anxiety? Should I take this job?”
No vibecheck. SomaCheck does not diagnose and does not decide. The agent says so plainly.

What crosses the connection

  • The statement chosen for this vibecheck.
  • The consent basis for the request.
  • The Aligned or Unaligned signal, confidence, and status.
  • Only bounded observations the person explicitly allows.

What never crosses

  • Raw accelerometer or gyroscope motion data.
  • Conversation history.
  • Photos, health records, credentials, or secret values.
  • A reading about anyone except the person using SomaCheck.

Revocation, support, and terms

  • The person can unlink any agent from the SomaCheck app, which immediately invalidates that agent's access.
  • Setup, revocation, and troubleshooting live in the developer docs.
  • Privacy and terms apply to every connection.

SomaCheck is a general wellness tool. It is not a medical device and does not diagnose or treat any condition. A vibecheck is a signal that may be worth noticing. It does not establish cause, meaning, or the right response, and it never replaces care from a qualified professional.