Concrete patterns you can copy and adapt. Each one assumes userintuition-mcp is on your PATH and you have either run userintuition-mcp login or set USERINTUITION_API_KEY.
Cost gate in CI
Refuse to merge a PR if its planned panel recruit would exceed a budget. launch_panel with dry_run: true returns the same USD cost and timeline estimate as the public API without provisioning or charging anything:
Panel lifecycle script
Field a panel for an existing Panel study, poll until the target number of interviews lands (or 24 hours elapse), then generate and export the report:
Daily standup digest
A cron job that writes per-study interview counts into a Slack-ready text file every morning. list_interviews with page_size: 1 is the cheap way to count — the envelope’s total_count covers the whole study, not just the page:
Schedule with cron:
Bulk cleanup of test studies
Delete every study whose name starts with test_:
delete_study is destructive. Sanity-check the jq filter against list_studies output before running the loop.
Review low-quality interviews
List interviews classified as Poor, then fetch each full record for review:
delete_interview --interview_id <id> is available after review, but deletion is destructive. The public API does not expose a reversible hide operation.
The CLI ships every tool the MCP server has. To find one for a job:
This is often faster than scrolling the tool reference.
Patterns to avoid
- Don’t hard-code IDs. Always derive them from a fresh
list_* call. IDs from a teammate’s account won’t resolve.
- Don’t omit
--dry_run true when iterating on a panel launch. Real recruiting starts the moment you flip it to false.
- Don’t count by page. Read
list_interviews.total_count instead of counting one page’s interviews array.
- Don’t parse stdout in shell with
grep/sed. Use jq — responses are JSON and may add fields between versions.
- Don’t share your
USERINTUITION_API_KEY in CI logs. Mask it as a secret. Anyone with the key can spend panel budget on your account.