AcuiQ

com.acuiqPublished by acuiq.comOfficial publisherv2.1.0Updated Oct 24, 2026

Evidence-based acupuncture protocol matcher – search symptoms, match protocols, browse acupoints.

Overview

AI-generated overview

AcuiQ is a remote MCP server for acupuncture reference: it matches described symptoms to protocols, looks up acupoints and meridians, and reads the AcuiQ wiki.

What you can do
Resolve plain symptom descriptions into AcuiQ symptom names, then find ranked acupuncture protocols with point codes, modality, course and provenance, and list meridians with acupoint counts and five-element associations where recorded. Look up single acupoints by code, English name, Chinese name or pinyin, returning location, cautions, meridian and commonly co-selected points. Search, browse and batch-read the AcuiQ reference wiki by keyword or tag path, with category tree, recent changes and page revision history. Pull the whole wiki as one document for bulk ingestion, with a size preflight and per-branch options. Create a Stripe Checkout session for an AcuiQ product and later check the 订单
When to use it
Useful when an assistant needs to answer acupuncture questions from a structured reference: mapping a person's complaint to protocols, checking a point's location or cautions, or reading and citing wiki pages. Also suited to bulk ingestion of the wiki into a knowledge base.
Requirements
Remote streamable HTTP endpoint; no packages, environment variables or headers declared. Payment-related tools rely on Stripe Checkout sessions created by the server.
Before you install
create_checkout opens a live Stripe payment session and should only be called when the person has said they want to buy; the agent hands the URL to the human and never handles payment data. get_order requires the session_id returned by create_checkout. Some symptoms point to paid mini-guides. Content is reference material, not medical advice.

Installation

In SourceWeft

  1. Open AcuiQ in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/com.acuiq%2Facuiq/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "acuiq": {
      "type": "http",
      "url": "https://acuiq.com/api/mcp"
    }
  }
}

Tools

15

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.

Parameterslimitquerypopular

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, 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.

Parametersagesexlimitsymptomsrequired

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. 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.

Takes no parameters.

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.

Parametersnamerequired

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.

Parameterspointrequired

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.

Parameterssourceproductrequiredquantity

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.

Parameterssession_idrequired

search_wiki

Search the wiki

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.

ParameterspagequeryrequiredtagPathpageSize

get_page

Read a page

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.

ParameterspathslugblockstagPath

get_pages

Read up to 20 pages

Batch read: 1 to 20 pages of the AcuiQ reference wiki in full in one call, which is how to read search or listing results. Pass `paths` as the listings return them. Paths that do not exist come back in `missing` rather than failing the call, anything past 20 in `remaining`, and pages past `maxChars` (default 250000) in `omitted` with their sizes.

ParameterspathsrequiredmaxChars

list_pages

List pages

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).

ParameterspagesorttagPathpageSize

get_categories

List categories

The category tree of the AcuiQ reference wiki, the cheapest way to orient before searching. Each node carries its `path` (a tagPath list_pages and search_wiki take), name, description, `pageCount` (pages filed at that path) and `pageCountDeep` (with every descendant). `tagPaths` lists every tag path that holds pages, including any the tree does not name.

Takes no parameters.

get_recent_changes

Recent changes

Pages of the AcuiQ reference wiki edited within the last N days, newest first: what to poll when you are watching the wiki rather than reading it. Same rows as list_pages. Defaults: days 7 (max 30), limit 20 (max 50). `truncated: true` means the limit cut the list; raise it, or page through list_pages.

Parametersdayslimit

get_full_corpus

Whole corpus

The whole of the AcuiQ reference wiki as one text document, for bulk ingestion. Preflight first: sizeOnly=true returns the character count, a token estimate, the per-branch breakdown and the largest pages. Then pull it with `maxChars` (default 200000, max 1000000), or one branch at a time with `tagPath`. Truncation is page-aligned: `truncated`, `omittedPages` and `nextSkip` say where to resume (pass skip=nextSkip). For a handful of pages get_pages is cheaper.

ParametersskiptagPathmaxCharssizeOnly

get_page_history

Page history

A page's revisions in the AcuiQ reference wiki, newest first: each one's `id`, version, change type, message, date and the blocks it changed. Address the page as get_page does. A revision `id` is what a restore takes, where this server has one. Defaults: limit 20 (max 100).

ParameterspathsluglimittagPath

Version history

5
  1. v2.1.0LatestOct 21, 2026
  2. v2.0.0Oct 19, 2026
  3. v1.3.0Oct 16, 2026
  4. v1.2.0Oct 13, 2026
  5. v1.1.0Sep 16, 2026

Score

72% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts

    Publish an icon in the registry entry.

  • Documentation15 pts

    Declare a GitHub repository with a README, or serve resource_documentation in the OAuth protected-resource metadata.

  • LicenseNot applicable

    A hosted service is used under its provider's terms, so no license is expected here. This check is left out of the percentage.