{"protocolVersion":"0.3.0","name":"AcuiQ","description":"Acupuncture protocol matcher. Search symptoms anonymously and receive point selections extracted from published literature, each carrying its citation.","url":"https://acuiq.com/api/mcp","preferredTransport":"JSONRPC","supportedInterfaces":[{"url":"https://acuiq.com/api/mcp","protocolBinding":"JSONRPC","protocolVersion":"1.0"},{"url":"https://acuiq.com/api/mcp","protocolBinding":"JSONRPC","protocolVersion":"0.3"}],"version":"2.1.0","capabilities":{"streaming":false,"pushNotifications":false},"skills":[{"id":"search_symptoms","name":"Search Symptoms","description":"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.","tags":["search","symptoms","acupuncture","tcm","acupressure","health"],"examples":["Search for headache","Find symptoms related to back pain","What acupoints help with anxiety?"]},{"id":"search_protocols","name":"Search Protocols","description":"Find acupuncture protocols for given symptom names – the same ranked pipeline behind GET /api/protocols. Returns `matches` (each with point codes, cred, modality and course where the source states them, the `result` once someone has read it, and provenance: sourceKind, source, caveat) plus a `points` dictionary giving each referenced code its name, meridian, location and warnings ONCE, and `studyBacked`, false when no study covers the query. It returns 10 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.","tags":["protocols","treatment","acupoints","meridians","self-treatment"],"examples":["Find protocols for headache and neck pain","Treatment for insomnia in 35-year-old female"]},{"id":"get_meridians","name":"Get Meridians","description":"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. Priced at $0.50, paid with a Stripe shared payment token (SPT), single use over MPP (Machine Payments Protocol): send the credential at params._meta[\"org.paymentauth/credential\"]. It is the whole catalogue in one call – for ONE point use get_point, which is free, and every other tool here is free too.","tags":["meridians","tcm","acupuncture","anatomy"]},{"id":"get_symptom_detail","name":"Get Symptom Detail","description":"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.","tags":["symptoms","detail","acupuncture","tcm"],"examples":["How many protocols does AcuiQ have for insomnia?"]},{"id":"get_point","name":"Get Point","description":"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.","tags":["acupoint","location","acupuncture","tcm","anatomy"],"examples":["Where is LI4?","What is Hegu used for?","Tell me about Zusanli"]},{"id":"create_checkout","name":"Create Checkout","description":"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.","tags":["purchase","buy","commerce","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"],"examples":["Buy a box of press needles","Get the self-treatment guide","Buy the practitioner edition","Licence the corpus as data"]},{"id":"get_order","name":"Get Order","description":"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.","tags":["order","purchase","status","download","commerce"],"examples":["Did my guide purchase go through?","Get me the download link for the order"]},{"id":"search_wiki","name":"Search Wiki","description":"Keyword search across the AcuiQ reference wiki: the first call when you know what you are looking for but not where it lives. Matches titles and body prose, ranked in four tiers: titles starting with the term, titles containing it, literal body hits, then English full-text hits by relevance, which stem words and drop stopwords. Not semantic: one distinctive word beats a sentence. Each row carries a `path`, its size in `chars` and a snippet windowed on the match. Feed the paths to get_pages in one call rather than looping get_page. Narrow with tagPath when a term is common. Defaults: page 1, pageSize 20 (max 50); keep paging while `hasMore` is true.","tags":["search","wiki","reference","evidence","safety","acupuncture"],"examples":["What does the evidence say about acupuncture for migraine?","Find the wiki page on moxibustion","What does EX-HN mean?"]},{"id":"get_page","name":"Get Page","description":"One page of the AcuiQ reference wiki in full: its text, version, update date and metadata. Address it by `path` (\"tag/path/slug\", exactly the `path` or `url` a listing returns), or by `tagPath` + `slug`; a category's own path reads its hub article. Not a title. For 2 to 20 pages call get_pages, one round trip rather than N. A miss names the nearest pages, so a wrong guess is fixed in one retry. A page's URL with `.md` appended is its markdown. With `blocks: true`, `content` is the stored block array, ids and all, beside the page `id` and its whole `metadata`: read a page this way before editing it, and send its `version` back as the edit's baseVersion.","tags":["wiki","reference","nomenclature","safety","tcm","acupuncture"],"examples":["What does EX-HN mean?","Explain acupuncture point codes","Is acupuncture safe in pregnancy?"]},{"id":"list","name":"List Pages","description":"Browse the AcuiQ reference wiki by tag path rather than by keyword: every page under a branch, newest first by default. `tagPath` matches the branch and everything beneath it; omit it to walk the whole wiki. Sort by title for an A–Z pass. Same rows as search_wiki, with `totalPages`, `hasMore` and `nextPage`. Defaults: page 1, pageSize 20 (max 100).","tags":["list","browse","categories"]},{"id":"feedback","name":"Send Feedback","description":"Tell the maintainers of AcuiQ what you needed and did not find, what is wrong, or what broke. One issue per call, in 300 characters at most. Reports are read, not published.","tags":["feedback","report"],"examples":["Report a page that is out of date"]}],"provider":{"organization":"AcuiQ","url":"https://acuiq.com"},"documentationUrl":"https://acuiq.com/llms.txt","mcpEndpoint":"https://acuiq.com/api/mcp","apiSpecUrl":"https://acuiq.com/.well-known/openapi.json","mcpServerCard":"https://acuiq.com/api/mcp/server-card","license":{"name":"Creative Commons Attribution 4.0 International","spdx":"CC-BY-4.0","url":"https://creativecommons.org/licenses/by/4.0/","scope":"AcuiQ-authored prose (symptom and meridian descriptions, the wiki, the auricular crosswalk) is licensed CC-BY-4.0: https://creativecommons.org/licenses/by/4.0/. The assembled protocol compilation is not: build on it with attribution, but do not redistribute it whole as a dataset – https://acuiq.com/terms. The underlying findings are the cited sources' claims – each entry carries its citation; verify against the source before relying on it. Not medical advice: https://acuiq.com/terms"},"securitySchemes":{"checkoutSession":{"type":"apiKey","in":"query","name":"session_id","description":"Stripe Checkout session id, returned by create_checkout and presented to get_order to collect a paid download. Over MCP it travels as a tool argument rather than in this location; over HTTP it is the query parameter on /download. Required by nothing else here: search, symptom, point and wiki reads are anonymous, and creating a checkout is too."},"payment":{"type":"http","scheme":"Payment","description":"MPP (Machine Payments Protocol) (https://mpp.dev), method \"stripe\", paid with a Stripe shared payment token (SPT), single use, for the two bulk exports only: GET /api/meridians and GET /api/corpus. Over MCP the same credential travels in-band at params._meta[\"org.paymentauth/credential\"] rather than in the Authorization header, and the receipt comes back at result._meta[\"org.paymentauth/receipt\"]. Every other tool and endpoint is free."}},"security":[{}],"payment":{"protocol":"MPP (Machine Payments Protocol)","spec":"https://mpp.dev","method":"stripe","intent":"charge","currency":"usd","credential":"Stripe shared payment token (SPT), single use","networkId":"profile_61VcHMvCI7idwYC2zA6VcHMv8oE9roGsBkZRtDHSi0ng","wallet":"https://link.com/agents","prices":{"meridians":"$0.50","corpus":"$1.00"},"free":"Everything except two bulk exports, checkout included."},"defaultInputModes":["text/plain","application/json"],"defaultOutputModes":["text/plain","application/json","text/markdown"]}