@somacheck/vibecheck 0.6.9 → 0.6.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +84 -9
- package/claude-marketplace/.claude-plugin/marketplace.json +1 -1
- package/claude-marketplace/plugins/vibecheck/.claude-plugin/plugin.json +4 -4
- package/claude-marketplace/plugins/vibecheck/hooks/hooks.json +1 -1
- package/dist/cli.js +31 -0
- package/dist/client-setup.js +2 -1
- package/dist/constants.js +2 -1
- package/dist/readiness.js +2 -2
- package/dist/recipes.js +191 -0
- package/dist/server.js +58 -15
- package/package.json +4 -4
- package/recipes/chattermill-research-reflection.md +323 -0
- package/recipes/dovetail-research-reflection.md +204 -0
- package/recipes/great-question-research-reflection.md +212 -0
- package/recipes/maze-research-reflection.md +325 -0
- package/recipes/prolific-research-reflection.md +215 -0
- package/recipes/questionpro-research-reflection.md +151 -0
- package/recipes/spotify-listening-reflection.md +459 -0
- package/recipes/sprig-research-reflection.md +222 -0
- package/recipes/studio-somacheck-context.md +202 -0
- package/recipes/typeform-research-reflection.md +211 -0
- package/recipes/user-interviews-research-reflection.md +253 -0
|
@@ -0,0 +1,253 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: User Interviews + SomaCheck Research Reflection
|
|
3
|
+
recipe_id: user-interviews-research-reflection-v1
|
|
4
|
+
status: P1 researcher-side planning only; no platform data or action tool
|
|
5
|
+
audience: Researchers using User Interviews with an MCP-capable agent
|
|
6
|
+
updated: 2026-09-05
|
|
7
|
+
required_mcp_servers:
|
|
8
|
+
- user-interviews
|
|
9
|
+
- vibecheck
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
# User Interviews + SomaCheck Research Reflection
|
|
13
|
+
|
|
14
|
+
This recipe gives a researcher one private SomaCheck check-in while shaping a
|
|
15
|
+
small User Interviews test-project plan. The researcher is the phone holder and
|
|
16
|
+
proposition subject. The agent returns signal-free, copy-ready planning text;
|
|
17
|
+
it calls no platform data or action tool, recruits nobody, and does not message,
|
|
18
|
+
spend, collect participant data, or export a reading.
|
|
19
|
+
|
|
20
|
+
The reading is context for the researcher's reflection—not truth, diagnosis,
|
|
21
|
+
authorization, evidence about another person, or a research decision. The
|
|
22
|
+
researcher remains the authority.
|
|
23
|
+
|
|
24
|
+
## Capability and launch boundary
|
|
25
|
+
|
|
26
|
+
User Interviews documents an official MCP for MCP-capable clients. Its
|
|
27
|
+
documented surface includes project creation and recruitment, with additional
|
|
28
|
+
research-lifecycle capabilities expanding over time. A product or integration
|
|
29
|
+
owner may provide an organization-authorized connection or partner sandbox for
|
|
30
|
+
capability validation. This first recipe may inspect runtime capability names
|
|
31
|
+
and schemas in that preconfigured environment, but it calls no User Interviews
|
|
32
|
+
data or action tool. The planning workflow still works without a connector and
|
|
33
|
+
never asks the researcher to sign up, request access, purchase a plan,
|
|
34
|
+
administer access, or populate User Interviews data. It never assumes
|
|
35
|
+
undocumented tool names or an endpoint.
|
|
36
|
+
|
|
37
|
+
This P1 recipe is researcher-side only. Do not use it to:
|
|
38
|
+
|
|
39
|
+
- ask a respondent, participant, candidate, employee, patient, or student to
|
|
40
|
+
complete a SomaCheck;
|
|
41
|
+
- retrieve submissions, screener answers, participant profiles, identifiers,
|
|
42
|
+
messages, recordings, transcripts, session data, or other participant data;
|
|
43
|
+
- use a reading for recruitment, targeting, screening, eligibility, quality,
|
|
44
|
+
authenticity, payment, incentive, scheduling, attendance, ranking,
|
|
45
|
+
performance, or launch decisions;
|
|
46
|
+
- write a reading, confidence, gesture, confirmation, or hidden score to User
|
|
47
|
+
Interviews or a connected research tool; or
|
|
48
|
+
- recruit, invite, contact, schedule, launch, publish, or spend money.
|
|
49
|
+
|
|
50
|
+
Participant-facing use stays blocked until a `respondent_private` architecture
|
|
51
|
+
prevents researcher or platform access to individual readings, methodology and
|
|
52
|
+
ethics review is complete, and Sensie gives explicit privacy/legal approval.
|
|
53
|
+
User Interviews MCP access or participant consent alone does not satisfy these
|
|
54
|
+
gates.
|
|
55
|
+
|
|
56
|
+
## Experience a researcher can run
|
|
57
|
+
|
|
58
|
+
The researcher gives the agent a participant-free study idea. The agent drafts
|
|
59
|
+
two neutral framings, offers one first-person SomaCheck check-in about the
|
|
60
|
+
researcher's own direction, and asks what they choose in words. The agent
|
|
61
|
+
returns a complete copy-ready payload and stops. User Interviews remains
|
|
62
|
+
unchanged. Any later draft creation is a separate future recipe and review, not
|
|
63
|
+
an optional branch of this one.
|
|
64
|
+
|
|
65
|
+
## Starter prompt
|
|
66
|
+
|
|
67
|
+
```text
|
|
68
|
+
Use User Interviews and SomaCheck to help me prepare one clearly named,
|
|
69
|
+
participant-free test-project plan without changing User Interviews. I am the
|
|
70
|
+
researcher and I am holding the phone. The study idea is: [STUDY IDEA]. Work
|
|
71
|
+
only from what I provide here. Do not retrieve candidates, participants,
|
|
72
|
+
screeners, responses, profiles, identifiers, messages, recordings, transcripts,
|
|
73
|
+
session data, or other workspace data. If a product or integration owner has
|
|
74
|
+
supplied a preconfigured official User Interviews partner sandbox, you may
|
|
75
|
+
inspect its capability names and schemas, but do not call any platform data or
|
|
76
|
+
action tool. The planning workflow does not require me to sign up, request
|
|
77
|
+
access, purchase a plan, or populate User Interviews data.
|
|
78
|
+
Propose two neutral study framings and show the exact
|
|
79
|
+
signal-free project copy. Then offer one short first-person proposition about
|
|
80
|
+
my own preferred direction and ask for one SomaCheck check-in on that exact
|
|
81
|
+
wording. Keep the proposition, reading, confidence, and my confirmation out of
|
|
82
|
+
User Interviews. Afterward ask what I choose in words. Return the complete
|
|
83
|
+
signal-free, copy-ready project payload only. Do not create, edit, recruit,
|
|
84
|
+
invite, message, schedule, screen, launch, publish, attach incentives, spend,
|
|
85
|
+
read participant data, or call a broader or undocumented tool.
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
## Prerequisites and account access
|
|
89
|
+
|
|
90
|
+
1. The researcher has linked the `vibecheck` MCP server to their SomaCheck
|
|
91
|
+
account and can see `request_vibecheck` and `get_vibecheck_result`.
|
|
92
|
+
2. The planning workflow requires no User Interviews account or connector. For
|
|
93
|
+
partner integration validation, the product or integration owner may
|
|
94
|
+
provide a preconfigured organization connection or partner sandbox.
|
|
95
|
+
3. When a sandbox is provided, its MCP client authenticates using the access
|
|
96
|
+
flow User Interviews provides and exposes its current runtime tool schemas.
|
|
97
|
+
Do not guess an endpoint, install an unreviewed server, or paste a credential
|
|
98
|
+
into chat.
|
|
99
|
+
4. The preconfigured client permits capability/schema discovery without
|
|
100
|
+
automatically invoking a data or action tool. Every User Interviews data,
|
|
101
|
+
creation, recruitment, contact, launch, and spend tool remains denied for
|
|
102
|
+
this test. The researcher is not responsible for provisioning the sandbox or
|
|
103
|
+
populating it with data.
|
|
104
|
+
5. Use a conspicuous title such as
|
|
105
|
+
`SomaCheck demo — <topic> — 2026-09-03 — DO NOT RECRUIT`.
|
|
106
|
+
|
|
107
|
+
## User Interviews tool policy
|
|
108
|
+
|
|
109
|
+
User Interviews documents an MCP that can create studies and recruit
|
|
110
|
+
participants, and separately documents Hub and Recruitment APIs. This recipe
|
|
111
|
+
does not invent or rely on names for those surfaces. Discover the connected
|
|
112
|
+
MCP at runtime without invoking a platform data or action capability.
|
|
113
|
+
|
|
114
|
+
| Purpose | Runtime capability | Rule |
|
|
115
|
+
| --- | --- | --- |
|
|
116
|
+
| Inspect capability names and schemas | MCP capability discovery only | Record names and boundaries without calling a platform data or action tool |
|
|
117
|
+
| Create, edit, read, or verify an artifact | Any project create/update/read tool | Prohibited in this recipe; return copy-ready text only |
|
|
118
|
+
| Private reflection | `request_vibecheck`, optional `get_vibecheck_result` | One decision, one request, one stable pending handle |
|
|
119
|
+
| Recruit or contact | Any recruitment, invite, message, screener, audience, scheduling, or participant-management capability | Prohibited |
|
|
120
|
+
| Human research data | Any submission, response, profile, identifier, transcript, recording, session, or analysis capability | Prohibited |
|
|
121
|
+
| Spend or launch | Any incentive, payment, budget, publish, launch, or distribution capability | Prohibited |
|
|
122
|
+
|
|
123
|
+
Do not broaden a connection to a root/all-tools endpoint to make this recipe
|
|
124
|
+
work. If the official MCP exposes only recruitment or participant-bearing
|
|
125
|
+
tools, stop without calling it.
|
|
126
|
+
|
|
127
|
+
## Exact cross-MCP workflow
|
|
128
|
+
|
|
129
|
+
1. **Confirm subject and scope.** State that the researcher is the phone holder
|
|
130
|
+
and proposition subject. Name the new test-project title.
|
|
131
|
+
2. **Use only the researcher's brief.** Do not search User Interviews or read
|
|
132
|
+
any existing project, participant, response, or workspace artifact.
|
|
133
|
+
3. **Draft two options.** Provide two neutral study framings and explain the
|
|
134
|
+
tradeoff. Label the researcher's supplied facts, agent interpretation, and
|
|
135
|
+
suggestions separately.
|
|
136
|
+
4. **Choose one proposition.** It must be short, first-person, and about
|
|
137
|
+
the researcher's own current direction. Do not include participant claims,
|
|
138
|
+
platform IDs, study records, or secrets.
|
|
139
|
+
5. **Establish one-ask consent.** If the researcher explicitly requested a
|
|
140
|
+
check-in in the current message, use
|
|
141
|
+
`consent_basis: "user_requested_vibecheck"`.
|
|
142
|
+
Otherwise show the exact proposition, wait for acceptance, and use
|
|
143
|
+
`consent_basis: "user_approved_statement"`.
|
|
144
|
+
6. **Request once.** Call `request_vibecheck` with the approved statement and a
|
|
145
|
+
fresh UUID `idempotency_key`. Reuse it only to retry the identical request
|
|
146
|
+
after an ambiguous create failure.
|
|
147
|
+
7. **Handle lifecycle accurately.** A terminal `state: "completed"` or later
|
|
148
|
+
`status: "answered"` is the exact result. If pending, retain the
|
|
149
|
+
`live:<uuid>` handle and read it once later. If still pending, expired,
|
|
150
|
+
cancelled, or errored, continue without a result. Never issue a replacement
|
|
151
|
+
ask.
|
|
152
|
+
8. **Return authority.** Separate observation, interpretation (`aligned` or
|
|
153
|
+
`unaligned` plus confidence), confirmation, and choice. `unaligned` may
|
|
154
|
+
indicate possible inner conflict relative to the proposition; it does not
|
|
155
|
+
identify a cause or select a study design. The researcher's typed choice
|
|
156
|
+
controls.
|
|
157
|
+
9. **Prepare the exact payload.** Show title, purpose, study type, questions or
|
|
158
|
+
tasks, and any required non-contact fields. Exclude the proposition, result,
|
|
159
|
+
confidence, confirmation, SomaCheck wording, participant metadata, and
|
|
160
|
+
hidden fields.
|
|
161
|
+
10. **Stop before every platform call.** The SomaCheck reading and the
|
|
162
|
+
researcher's typed choice are not approval to use User Interviews. Do not
|
|
163
|
+
call create, update,
|
|
164
|
+
read-back, recruitment, messaging, scheduling, participant, incentive,
|
|
165
|
+
launch, publish, or data tools.
|
|
166
|
+
11. **End the test.** Return the copy-ready payload and, if capability discovery
|
|
167
|
+
was available, the relevant runtime tool names as uninvoked metadata. State
|
|
168
|
+
explicitly that User Interviews remains unchanged.
|
|
169
|
+
|
|
170
|
+
## Proposition examples
|
|
171
|
+
|
|
172
|
+
Allowed:
|
|
173
|
+
|
|
174
|
+
- “I want this study to focus on initial comprehension.”
|
|
175
|
+
- “I can explain why this research question matters.”
|
|
176
|
+
- “I want to keep discovery separate from evaluation.”
|
|
177
|
+
- “I am ready to save this as a test project for review.”
|
|
178
|
+
|
|
179
|
+
Not allowed:
|
|
180
|
+
|
|
181
|
+
- “This participant is a good fit.”
|
|
182
|
+
- “These candidates will answer honestly.”
|
|
183
|
+
- “This response is high quality.”
|
|
184
|
+
- “This project should recruit automatically.”
|
|
185
|
+
|
|
186
|
+
## Visible success condition
|
|
187
|
+
|
|
188
|
+
The test passes when:
|
|
189
|
+
|
|
190
|
+
- the researcher receives at most one live SomaCheck request on their phone;
|
|
191
|
+
- the agent presents the result as context and asks the researcher for their
|
|
192
|
+
typed choice;
|
|
193
|
+
- the agent returns the exact signal-free, copy-ready project payload;
|
|
194
|
+
- no User Interviews data or action tool is invoked and the workspace remains
|
|
195
|
+
unchanged; and
|
|
196
|
+
- no recruitment, invitation, message, screener, participant-data,
|
|
197
|
+
scheduling, incentive, payment, launch, publication, or spend action occurs.
|
|
198
|
+
|
|
199
|
+
## Failure and degraded paths
|
|
200
|
+
|
|
201
|
+
- **Partner sandbox absent or MCP access missing:** Continue with the copy-ready
|
|
202
|
+
planning workflow and label capability discovery untested. Report the missing
|
|
203
|
+
capability to the product or integration owner; never request a token in chat
|
|
204
|
+
or ask the researcher to sign up, request access, purchase a plan, administer
|
|
205
|
+
access, or populate platform data.
|
|
206
|
+
- **Capability discovery absent or schema changes:** Do not guess a tool name or
|
|
207
|
+
use a broader server. Return the payload and label the connector half
|
|
208
|
+
untested.
|
|
209
|
+
- **Permission denied:** Do not broaden permissions. Preserve the payload and
|
|
210
|
+
stop.
|
|
211
|
+
- **SomaCheck unresolved:** Use the same pending handle once later, then
|
|
212
|
+
proceed without a reading if unresolved.
|
|
213
|
+
- **Unreadable capture:** Offer a retry only if the researcher wants it;
|
|
214
|
+
unreadable is not a third interpretation.
|
|
215
|
+
- **Researcher disagrees with the reading:** Follow the researcher's typed
|
|
216
|
+
choice without reconciliation or repetition.
|
|
217
|
+
|
|
218
|
+
## Privacy boundary
|
|
219
|
+
|
|
220
|
+
- Raw phone motion never reaches User Interviews or the agent.
|
|
221
|
+
- User Interviews receives no payload at all in this recipe, including no
|
|
222
|
+
proposition, reading, confidence, confirmation, or gesture metadata.
|
|
223
|
+
- SomaCheck receives no User Interviews project ID, study copy, participant
|
|
224
|
+
data, transcript, recording, response, or credential.
|
|
225
|
+
- No participant or candidate data is read into the agent conversation.
|
|
226
|
+
- The local copy-ready plan contains only researcher-approved, signal-free
|
|
227
|
+
research copy.
|
|
228
|
+
|
|
229
|
+
## Test checklist
|
|
230
|
+
|
|
231
|
+
- [ ] The researcher is the phone holder and proposition subject.
|
|
232
|
+
- [ ] Any User Interviews capability inspection uses an official,
|
|
233
|
+
owner-provisioned organization connection or partner sandbox; no
|
|
234
|
+
undocumented endpoint or unreviewed server is used.
|
|
235
|
+
- [ ] Runtime inspection, if used, is limited to capability names and schemas;
|
|
236
|
+
no User Interviews data or action tool is invoked.
|
|
237
|
+
- [ ] No participant, candidate, response, screener, transcript, recording,
|
|
238
|
+
session, message, incentive, recruitment, or launch tool is called.
|
|
239
|
+
- [ ] The proposition is first-person and contains no platform or participant
|
|
240
|
+
content.
|
|
241
|
+
- [ ] At most one SomaCheck request is created for the choice.
|
|
242
|
+
- [ ] Observation, interpretation, confirmation, and choice remain separate.
|
|
243
|
+
- [ ] The researcher states a choice and receives the exact copy-ready payload.
|
|
244
|
+
- [ ] User Interviews remains unchanged.
|
|
245
|
+
- [ ] No SomaCheck field or text is present in User Interviews.
|
|
246
|
+
|
|
247
|
+
## Sources
|
|
248
|
+
|
|
249
|
+
- [User Interviews MCP support article](https://www.userinterviews.com/support/user-interviews-mcp)
|
|
250
|
+
- [User Interviews integrations and APIs](https://www.userinterviews.com/integrations)
|
|
251
|
+
- [User Interviews integrations support](https://www.userinterviews.com/support-topic/integrations)
|
|
252
|
+
- [SomaCheck MCP setup and tool behavior](../README.md)
|
|
253
|
+
- [SomaCheck immediate-request contract](../LIVE-ASK-CONTRACT.md)
|