API Reference
API reference for HiBoop's read-only developer interface — query the validated assessment library, clinical glossary, PubMed-cited evidence, and pricing over HTTP or the Model Context Protocol (MCP). Invite-only early access.
HiBoop exposes its clinical content — the validated assessment library, the clinical glossary, PubMed-cited evidence, help articles, and pricing — through a read-only developer interface, available two ways:
- an HTTP API (
api.hiboop.com/v1), and - a Model Context Protocol (MCP) server (
@hiboop/mcp) for AI agents — Claude Code, Cursor, Gemini, or your own backend.
Both are the same read-only content over two transports. This page is the reference for both.
What this is — and what it is not. This is a read-only interface to HiBoop's public clinical reference content. It is not a therapy chatbot, not a triage or diagnostic engine, and not a source of clinical advice. It does not assess, score, or treat patients, it never accepts or returns PHI, and it must not be placed in a patient-facing care pathway. It returns reference data (assessment metadata, glossary definitions, citations, pricing) for developers building tools, documentation, and internal workflows.
Access — invite only
Access is invite only while the interface is in early access. HTTP API keys and MCP early-access builds are issued to invited partners. Request an invite and tell us what you're building.
| Interface | Status | Notes |
|---|---|---|
MCP server (@hiboop/mcp) | Early access | Works today for invited partners; public npm distribution is rolling out. |
HTTP API (api.hiboop.com/v1) | Preview | Spec below; base URL is illustrative and not yet live. |
Design principles
- Read-only. Every endpoint and tool is a
GET/query. There are no writes, no mutations, no scoring, no prediction. - No PHI. Only public clinical reference content is ever returned. No patient data passes through it.
- Live. Responses read HiBoop's content at call time, with no caching, so they reflect the current site.
Authentication
The HTTP API authenticates with a bearer token issued to invited partners. Send it in the Authorization header on every request — never as a query parameter or cookie:
curl https://api.hiboop.com/v1/assessments \
-H "Authorization: Bearer hb_preview_xxxxxxxxxxxxxxxx"
Keys
- Invite-only. There is no self-serve signup while the API is in preview. Request an invite and we'll issue a key.
- Format. Preview keys are prefixed
hb_preview_; production keys will be prefixedhb_live_. A key is a single opaque secret string. - Scope. Every key is read-only — there is no write scope, by design. A key grants access to the content resources only.
- Rotation. Keys can be rotated or revoked on request; rotate immediately if one is exposed. Treat keys as secrets: HTTPS only, never commit them, never ship them in client-side or mobile code (the API is server-to-server).
Errors
| Status | error.code | When |
|---|---|---|
401 | unauthorized | Missing, malformed, or unknown bearer token. |
403 | forbidden | Valid key, but it lacks access to the resource. |
429 | rate_limited | Over the per-key rate limit; see Retry-After. |
MCP authentication. The MCP server forwards the bearer token for you — set HIBOOP_API_KEY in its environment and it adds the Authorization header to every call:
{
"mcpServers": {
"hiboop": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@hiboop/mcp"],
"env": { "HIBOOP_API_KEY": "hb_preview_xxxxxxxxxxxxxxxx" }
}
}
}
The MCP server is authenticated: set HIBOOP_API_KEY to the key issued with your early-access invite, and it adds the Authorization header to every call. Without a key, calls are refused (401). The server talks to the API over HTTPS; nothing is cached locally.
Conventions
- Base URL:
https://api.hiboop.com/v1(preview — not yet live) - Versioning: the major version is in the path (
/v1). Breaking changes ship under a new version. - Format: all responses are JSON (
Content-Type: application/json). - Pagination: list endpoints accept
limit(default20, max100) andoffset. - Rate limits: 60 requests/minute per key in preview. Over the limit returns
429with aRetry-Afterheader.
Errors
Errors return a JSON body with a stable error.code:
{ "error": { "code": "not_found", "message": "No assessment with slug 'foo'." } }
| Status | error.code | Meaning |
|---|---|---|
400 | invalid_request | Missing or malformed parameter. |
401 | unauthorized | Missing or invalid bearer token. |
403 | forbidden | Key is valid but lacks access. |
404 | not_found | No resource matched. |
429 | rate_limited | Too many requests; see Retry-After. |
Resources
Each resource is reachable over HTTP and as an MCP tool — same read-only content, same shape.
Search
Site-wide search across all content (assessments, conditions, guides, help articles, tools, and key pages). Use this for broad lookups; use the scoped search resources below for narrower results.
| HTTP | GET /v1/search?q={query} |
| MCP tool | search |
| Parameters | q (required), limit? (default 10, max 50) |
[
{ "title": "PHQ-9", "url": "/assessments/phq-9", "excerpt": "Nine-item depression severity measure.", "type": "assessments" }
]
List assessments
Every assessment in the library (slug, title, category, summary).
| HTTP | GET /v1/assessments |
| MCP tool | list_assessments |
| Parameters | — (returns the whole library) |
curl https://api.hiboop.com/v1/assessments \
-H "Authorization: Bearer hb_preview_xxxxxxxxxxxxxxxx"
[
{ "slug": "phq-9", "title": "PHQ-9", "category": "Depression", "description": "Nine-item depression severity measure." },
{ "slug": "gad-7", "title": "GAD-7", "category": "Anxiety", "description": "Seven-item generalized anxiety measure." }
]
Get an assessment
Full record for one assessment — FAQs, scoring guidance, scope — by slug.
| HTTP | GET /v1/assessments/{slug} |
| MCP tool | get_assessment |
| Parameters | slug (required, path) |
curl https://api.hiboop.com/v1/assessments/phq-9 \
-H "Authorization: Bearer hb_preview_xxxxxxxxxxxxxxxx"
Search assessments
Free-text search across the assessment library (title, summary, body).
| HTTP | GET /v1/assessments/search?q={query} |
| MCP tool | search_assessments |
| Parameters | q (required), limit? |
Look up a glossary term
Clinical glossary lookup — 145 terms across DSM, ICD-10, CPT, and measurement-based-care concepts.
| HTTP | GET /v1/glossary?term={term} |
| MCP tool | search_glossary |
| Parameters | term (required) |
[
{
"term": "Measurement-Based Care",
"def": "The systematic use of validated data to monitor treatment progress and guide decisions.",
"cat": "Clinical Concepts"
}
]
List help articles
Every help-centre article as structured metadata, optionally one category. No bodies: fetch an article with Get a help article.
| HTTP | GET /v1/help?category={category} |
| MCP tool | list_help_articles |
| Parameters | category? (e.g. patients, clinic, start) |
[
{
"slug": "add-patient",
"title": "How do I add a patient to HiBoop?",
"category": "patients",
"categoryTitle": "Patient Management",
"updatedAt": "2025-06-26T20:27:14Z",
"url": "https://hiboop.com/help/patients/add-patient/"
}
]
Search help articles
Free-text search across help-centre articles. A result matches the exact phrase or every word of the query. Each result is the article's metadata plus a short snippet around the match, not the whole article.
| HTTP | GET /v1/help/search?q={query} |
| MCP tool | search_help |
| Parameters | q (required), limit? (default 8) |
Get a help article
One article by slug: the same metadata plus the full text as plain body. Cite the url when you answer from it. 404 not_found for an unknown slug.
| HTTP | GET /v1/help/{slug} |
| MCP tool | get_help_article |
| MCP resource | help://articles/{slug} |
| Parameters | slug (required) |
Get pricing
Current pricing tiers plus the onboarding protocol.
| HTTP | GET /v1/pricing |
| MCP tool | get_pricing |
| Parameters | — |
{
"care": { "price": "$25/month", "includes": ["1 clinician seat", "Core assessment library, pre-loaded", "..."] },
"team": { "price": "$200/month", "featured": true, "includes": ["Every assessment in the library", "Unlimited clinicians", "..."] },
"network": { "price": "Custom", "includes": ["HIPAA BAA included", "EHR integrations on request", "..."] },
"onboarding": "30 days for IOP / outpatient. 4-6 weeks for residential."
}
List evidence sources
PubMed-cited evidence sources, optionally filtered by condition.
| HTTP | GET /v1/sources?condition={condition} |
| MCP tool | list_sources |
| Parameters | condition? (e.g. depression, mbc, phq-9) |
[
{ "title": "The PHQ-9: validity of a brief depression severity measure", "pmid": "11556941", "year": 2001 }
]
Get brand voice
Voice rules, banned phrases, and fr-CA formatting — for agents drafting HiBoop copy. Call before generating marketing text.
| HTTP | GET /v1/brand-voice |
| MCP tool | brand_voice |
| Parameters | — |
MCP resources and prompts
The MCP server also exposes the help centre as resources, for clients that read resources rather than call tools, and one packaged prompt. Both use the same read-only routes as the tools above.
| Resource | help://articles: every article's metadata (the list above) |
| Resource template | help://articles/{slug}: one article, metadata plus full text |
| Prompt | answer_from_help(question): answer a care team's question from the help centre only, in plain steps, ending with the article's url; say so plainly when the help centre has no answer |
There are no write tools. Help articles are edited through HiBoop's own review process, not through the API.
Connect the MCP server
For AI agents, the MCP server is the native path. Once you have an early-access build:
Claude Code
claude mcp add hiboop -- npx -y @hiboop/mcp
Verify with /mcp — hiboop should show as connected.
Cursor, Gemini, or project-local (.mcp.json)
{
"mcpServers": {
"hiboop": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@hiboop/mcp"]
}
}
}
Restart the client; the server boots over stdio on the first tool call. Server identity: { name: "hiboop", version: "0.1.0" }.
Building something?
If you're building a clinical reference assistant, an intake or documentation workflow, or an evidence-grounded agent on top of HiBoop's content, request an invite — early-access partners get connected first. Remember: this is a read-only reference interface, not a patient-facing therapy or triage tool.