MCP Server

AcuiQ

com.acuiq/acuiq
Healthcare Knowledge & Documentation Public & reachable MCP 2025-11-25

What this MCP does

Searches acupuncture symptoms, treatment protocols, acupoints, meridians, safety notes, and supporting reference material.

create_checkout
Create checkout session
Create a Stripe Checkout session for an AcuiQ product and return its URL. Give the URL to the human to open and complete – the agent never touches payment data. Creates a live session on Stripe: call it when the person has said they want to buy, not to look up a price.
Open world
Input schema
{'type': 'object', 'required': ['product'], 'properties': {'product': {'enum': ['press-needles', 'treatment-guide', 'practitioner-edition', 'point-reference', 'atlas-charts', 'corpus-licence', 'mini-headache', 'mini-back', 'mini-neck-joints', 'mini-sleep-mood', 'mini-digestion', 'mini-ear-eye', 'mini-skin-nerves', 'mini-womens', 'mini-heart', 'mini-urinary'], 'type': 'string', 'description': 'Product to purchase. press-needles ($19.99/box, ships US); treatment-guide ($12.99 digital download, free updates for life); practitioner-edition ($39 digital download, free updates for life); point-reference ($29 digital download, free updates for life); atlas-charts ($14 digital download, free updates for life); corpus-licence ($999 digital download, free updates for life); mini-headache ($5 digital download, free updates for life); mini-back ($5 digital download, free updates for life); mini-neck-joints ($5 digital download, free updates for life); mini-sleep-mood ($5 digital download, free updates for life); mini-digestion ($5 digital download, free updates for life); mini-ear-eye ($5 digital download, free updates for life); mini-skin-nerves ($5 digital download, free updates for life); mini-womens ($5 digital download, free updates for life); mini-heart ($5 digital download, free updates for life); mini-urinary ($5 digital download, free updates for life)'}, 'quantity': {'type': 'number', 'description': 'Number of boxes (physical products only, default 1)'}}}
get_meridians
List meridians
List every channel group in the AcuiQ point catalogue with its acupoint count and page URL – the 14 classical meridians plus the extra-point and auricular groups the catalogue files points under. Descriptions and five-element associations are returned where recorded, which is currently for almost none of them.
Read only Idempotent
Input schema
{'type': 'object', 'properties': {}}
get_order
Check order status
Check a checkout created by create_checkout and, once it is paid, return the delivery link for a digital product. Call it after handing the person the checkout URL – leave a few seconds between calls, it is not a busy-wait. Requires the session_id create_checkout returned: orders cannot be listed, searched, or looked up by email, and no personal data (email, name, address) is ever returned.
Read only Open world Idempotent
Input schema
{'type': 'object', 'required': ['session_id'], 'properties': {'session_id': {'type': 'string', 'description': 'The session_id create_checkout returned (starts "cs_")'}}}
get_point
Look up an acupoint
Resolve one acupoint by code ("LI4", "li04"), English name ("Junction Valley"), Chinese name ("合谷") or pinyin ("Hegu", "hé gǔ") and return its location, cautions, meridian, the points most often selected alongside it in the corpus, its page URL and markdown twin. For the full protocol table, fetch the markdown twin. Where the best-evidenced indication for this point is covered by a $5 mini-guide, the result carries a `guide` pointer – offer it only if the person asks for something to follow at home.
Read only Idempotent
Input schema
{'type': 'object', 'required': ['point'], 'properties': {'point': {'type': 'string', 'description': 'Code, English name, Chinese name or pinyin (e.g. "LI4", "Hegu", "合谷")'}}}
get_symptom_detail
Get symptom detail
Get details for a specific symptom: canonical name, protocol count, page URL and its markdown twin. The markdown twin is the cheapest way to read every protocol for one symptom in a single fetch. When the symptom is covered by a $5 mini-guide, the result carries a `guide` pointer – mention it only if the person wants something to follow away from a screen, then call create_checkout with that `product` id.
Read only Idempotent
Input schema
{'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'description': 'Symptom name (e.g. "headache")'}}}
get_wiki_page
Read a wiki page
Read one AcuiQ wiki page, or list what the wiki holds. Reference notes on acupuncture nomenclature, point safety and the theory the prescriptions were written in – the context the protocol tools cannot supply. Call with no arguments to list every page with its section and summary; pass "path" ("nomenclature/point-codes") to get one page's summary, sources and markdown-twin URL. Each page states what it rests on and when those claims were last checked.
Read only Idempotent
Input schema
{'type': 'object', 'properties': {'path': {'type': 'string', 'description': 'Section and slug, e.g. "safety/reading-a-point-warning". Omit to list every page.'}}}
search_protocols
Find treatment protocols
Find acupuncture protocols for given symptom names – the same ranked pipeline behind GET /api/protocols. Returns `matches` (each with point codes, cred, dosage and provenance: sourceKind, source, caveat) plus a `points` dictionary giving each referenced code its name, meridian, location and warnings ONCE. Ten matches by default; raise `limit` (max 50) if you need more. `directMatches` lists indicated points when no protocol covers the query – index entries, not prescriptions. Pass symptom names from search_symptoms, not a description. When the symptom is covered by a $5 mini-guide, the result carries a `guide` pointer – mention it only if the person wants something to follow away from a screen, then call create_checkout with that `product` id.
Read only Idempotent
Input schema
{'type': 'object', 'required': ['symptoms'], 'properties': {'age': {'type': 'number', 'description': 'Patient age. Drops protocols whose recorded cohort age is more than 20 years away; rows that recorded no age are kept.'}, 'sex': {'enum': ['male', 'female'], 'type': 'string', 'description': 'Patient sex. Drops protocols recorded in the opposite sex; rows that recorded no sex are kept.'}, 'limit': {'type': 'number', 'description': 'Max protocols to return (default 10, max 50)'}, 'symptoms': {'type': 'string', 'description': 'Comma-separated symptom names, max 10 (e.g. "headache,neck pain")'}}}
search_symptoms
Search symptom names
Resolve what a person describes into AcuiQ symptom names – the first step before search_protocols. Plain description works ("trouble sleeping", "my lower back hurts"): filler words are stripped and the search retries on the clinical words, reporting which term matched. Set popular=true for trending symptoms instead. Always returns an object with a `symptoms` array, empty when nothing matched. When the symptom is covered by a $5 mini-guide, the result carries a `guide` pointer – mention it only if the person wants something to follow away from a screen, then call create_checkout with that `product` id.
Read only Idempotent
Input schema
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Max results (default 12, max 50)'}, 'query': {'type': 'string', 'description': 'What the person is describing – a symptom name or a plain description (e.g. "knee pain", "I cannot sleep at night")'}, 'popular': {'type': 'boolean', 'description': 'Set to true to get trending symptoms instead of searching'}}, 'requireOneOf': ['query', 'popular']}
Added
get_wiki_page
Sept. 17, 2026, 12:33 p.m.
Added
get_order
Sept. 17, 2026, 12:33 p.m.
Added
create_checkout
Sept. 17, 2026, 12:33 p.m.
Added
get_point
Sept. 17, 2026, 12:33 p.m.
Added
get_symptom_detail
Sept. 17, 2026, 12:33 p.m.
Added
get_meridians
Sept. 17, 2026, 12:33 p.m.
Added
search_protocols
Sept. 17, 2026, 12:33 p.m.
Added
search_symptoms
Sept. 17, 2026, 12:33 p.m.