Search / com.acuiq/acuiq
AcuiQ
R0· no sign-inEvidence-based acupuncture protocol matcher – search symptoms, match protocols, browse acupoints.
v2.0.0 · active · website · descriptor JSON · versions
Search / com.acuiq/acuiq
R0· no sign-inEvidence-based acupuncture protocol matcher – search symptoms, match protocols, browse acupoints.
v2.0.0 · active · website · descriptor JSON · versions
{
"mcpServers": {
"acuiq": {
"type": "http",
"url": "https://acuiq.com/api/mcp"
}
}
}claude mcp add --transport http acuiq https://acuiq.com/api/mcp[mcp_servers.acuiq]
url = "https://acuiq.com/api/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"acuiq": {
"type": "remote",
"url": "https://acuiq.com/api/mcp",
"enabled": true
}
}
}{
"mcpServers": {
"acuiq": {
"type": "http",
"url": "https://acuiq.com/api/mcp"
}
},
"deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=acuiq&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vYWN1aXEuY29tL2FwaS9tY3AifQ%3D%3D"
}{
"servers": {
"acuiq": {
"type": "http",
"url": "https://acuiq.com/api/mcp"
}
}
}{
"mcpServers": {
"acuiq": {
"httpUrl": "https://acuiq.com/api/mcp"
}
}
}extensions:
"acuiq":
enabled: true
name: "acuiq"
type: streamable_http
uri: "https://acuiq.com/api/mcp"
timeout: 300
protocol.modernsupports 2026-07-28 (server/discover)protocol.statelessanswers without a sessionprotocol.transportstreamable HTTPprotocol.list_ttltool list is cacheable (ttlMs 300000)auth.prm, auth.as_metadata, auth.cimdno remote uses OAuthauth.secret_in_urlno templated URLtools.descriptionsevery tool has a descriptiontools.description_lengthdescriptions are concisetools.schemasevery tool has an object input schematools.annotations9 of 9 tools declare readOnlyHint or destructiveHinttools.directory_hints1 of 9 tools declare all four hints; missing: search_protocols (destructiveHint); get_meridians (destructiveHint); get_order (destructiveHint); …tools.token_costabout 2,208 tokens to load every tooltools.api_dumptools are not a one-to-one API dumpstability.changes3 tool changes in 30 daysstability.rug_pullno tool changed its meaning under the same namedeps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI packageget_wiki_pagechangeddescriptionRead 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 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. To find the page for a topic, call search_wiki first.
search_wikiaddedKeyword search across the AcuiQ reference wiki – the call to make when you have a topic or a question ("moxibustion", "what does EX-HN mean", "acupuncture in pregnancy") and no page path. Matches titles and page prose. A whole question works: when no literal match exists it falls back to English full-text matching, which stems words and drops stopwords. It is NOT semantic, so a page that says "moxa" is not found by "heat therapy". Ranked titles starting with the term, then titles containing it, then literal prose hits, then full-text hits by relevance. Each row carries a `snippet` windowed on the match, the `path` get_wiki_page takes, and the `markdown` URL holding the whole page. Use get_wiki_page instead when you already have a path, or to see every page by section. Defaults: page 1, pageSize 10 (max 50); keep paging while `hasMore` is true. The same rows as GET /api/wiki?q=.
search_protocolschangeddescriptionFind 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.
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, 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.
Full history: list_changes · trend: quality JSON.
Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.
+dns-namespace +website +reachable +uptime-100% +updated-1d-ago -no-repository
Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.
| remote | auth | reachable | uptime 30d | p50 | protocol | last ok |
|---|---|---|---|---|---|---|
https://acuiq.com/api/mcp streamable-http | none | yes | 100% | 625 ms | 2026-07-28, 2025-11-25, 2025-06-18, 2025-03-26, 2024-11-05 | 2026-10-20 |
create_checkout | 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. |
get_meridiansread-only | 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. |
get_orderread-only | 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. |
get_pointread-only | 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. |
get_symptom_detailread-only | 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. |
get_wiki_pageread-only | 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. To find the page for a topic, call search_wiki first. |
search_protocolsread-only | 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, 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. |
search_symptomsread-only | 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. |
search_wikiread-only | Keyword search across the AcuiQ reference wiki – the call to make when you have a topic or a question ("moxibustion", "what does EX-HN mean", "acupuncture in pregnancy") and no page path. Matches titles and page prose. A whole question works: when no literal match exists it falls back to English full-text matching, which stems words and drops stopwords. It is NOT semantic, so a page that says "moxa" is not found by "heat therapy". Ranked titles starting with the term, then titles containing it, then literal prose hits, then full-text hits by relevance. Each row carries a `snippet` windowed on the match, the `path` get_wiki_page takes, and the `markdown` URL holding the whole page. Use get_wiki_page instead when you already have a path, or to see every page by section. Defaults: page 1, pageSize 10 (max 50); keep paging while `hasMore` is true. The same rows as GET /api/wiki?q=. |
Schemas: list_tools.
{
"name": "com.acuiq/acuiq",
"title": "AcuiQ",
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"remotes": [
{
"url": "https://acuiq.com/api/mcp",
"type": "streamable-http"
}
],
"version": "2.0.0",
"websiteUrl": "https://acuiq.com",
"description": "Evidence-based acupuncture protocol matcher – search symptoms, match protocols, browse acupoints."
}