dxpert.ai — industrial AI-readiness & UNS agents

ai.dxpert由 dxpert.ai 發布v0.2.1更新於 Nov 1, 2026

AI-readiness diagnostic, dxpert Advisor and the industrial agents of dxpert Pro, for MCP clients.

概覽

AI 產生的概覽

本機 stdio MCP 伺服器,讓助理透過 dxpert.ai 提供工業 AI 就緒度諮詢、診斷,以及根據你提供資料運作的 UNS/OEE 代理。

可以做什麼
  • 就 AI 就緒度、UNS 與命名空間設計、OT/IT 架構及工業資料標準向 dxpert.ai 提問
  • 執行工業代理(班別報告、OEE 解讀、告警分流、維護副駕、根因分析),僅依傳入的資料包回傳 Markdown 報告
  • 依 16 項自填資料執行初步 AI 就緒度診斷,給出各軸向分數、acatech 階段與報告
  • 將班別紀錄、停機表等原始 CSV 匯出轉換成代理所需的資料包格式
  • 讀取帳戶方案、購買狀態與剩餘 Try Pro 次數,並為 Pro 或 DX Roadmap 建立 Stripe 結帳連結
  • 查詢公開的執行環境更新清單,取得版本、產物雜湊與變更紀錄
適用情境
適合讓助理回答工業數位轉型問題,或根據既有試算表產出初步就緒度評估與工廠報告,且不需連接工廠系統。也方便在對話中查看方案狀態或發起購買。
執行需求
透過 npx 以 Node.js stdio 程序在本機執行。需在 DXPERT_API_KEY 提供 dxpert.ai API 金鑰(可在 dxpert.ai 網站免費建立);DXPERT_API_BASE 為選用,預設使用正式環境。需要能連線至 dxpert API 的網路。
安裝前請注意
API 金鑰會傳送給 dxpert.ai,並與你的帳戶及方案綁定,請避免寫入 shell 歷史或設定檔。傳給代理、診斷問卷與 CSV 轉換器的資料都會送到 dxpert 的 API,請先將工廠資料去識別化。start_purchase 會建立真實的 Stripe 結帳連結,用於付費訂閱或一次性產品;必須由人工開啟並付款,付款後權限會自動綁定帳戶。代理執行會消耗付費或試用額度。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 dxpert.ai — industrial AI-readiness & UNS agents,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

@dxpert/mcp

[M8ven Score]

Stdio MCP server for using a dxpert.ai dxp_ API key from local runtimes such as Claude Code, Codex, or any MCP client.

One key, one server; the account's plan decides what the key unlocks:

  • Free account (no card): dxpert Advisor with 10 questions a month, the Spreadsheet-to-agent converter, the starter kit, the diagnostic, and Try Pro — 5 agent runs in total, usable on any agent included in dxpert Pro.
  • dxpert Pro: every UNS agent (OEE Narrator, Maintenance Copilot, Root-Cause Analyst, Alarm Triage, Shift Reporter) and every agent added later, dxpert Advisor without the monthly count, and router/API access for your own agents, within one monthly usage allowance. Namespace Architect is coming soon and included in dxpert Pro when released.

Plans and live prices: GET {api_base}/api/catalog or dxpert.ai/store. Create a free key at dxpert.ai/store/account.

The server has no runtime dependencies. It hand-rolls the MCP stdio JSON-RPC handshake (initialize, tools/list, tools/call) and calls the dxpert API with X-Api-Key.

Environment

sh
export DXPERT_API_KEY=dxp_your_key_hereexport DXPERT_API_BASE=https://opwhcervi3.execute-api.ca-central-1.amazonaws.com

DXPERT_API_BASE is optional and defaults to production.

Tools

  • ask_dxpert(question, history?) calls POST /api/chat. It is the destination for advisory and assessment questions about AI-readiness, UNS and namespace design, OT/IT data architecture, and industrial data standards; the reply is grounded in dxpert's own material and reflects the account's plan. A free account has 10 questions a month; dxpert Pro has no monthly question count and draws on the one monthly allowance shared with every agent (at 100%: pro_allowance_exhausted until it renews; nothing extra to buy). Text in, text out — it reads no plant system and returns no scores.
  • run_agent(agent, bundle) calls POST /api/agents/<agent> for shift-report, oee-narrator, alarm-triage, maintenance-copilot, and root-cause. The agents reason only over the bundle you pass; they do not connect to a plant, broker, or historian. Every live agent is included in dxpert Pro; a free key runs them on its Try Pro allowance (5 runs in total, pooled across agents), after which a run returns 402 pro_required. Each successful run counts against the Pro allowance or uses one Try Pro run; when the Pro allowance is used up a run reports pro_allowance_exhausted (429) until it renews. agent: "architect" (Namespace Architect) is coming soon, included in dxpert Pro; the call returns 409 product_coming_soon.
  • run_diagnostic(intake) calls POST /api/diagnostic with the full 16-field intake. Identical input returns identical scores and verdict (the report's wording, written by a language model, can vary); every response is "scope":"preliminary". An invalid intake returns the field-level validation errors.
  • csv_to_bundle(csv_text, kind, site_profile?) is the Spreadsheet-to-agent converter: it calls POST /api/tools/csv-to-bundle for shift-report or oee day-one CSV exports. Free with any account and never counted.
  • get_runtime_manifest(channel?) calls read-only GET /api/runtime/manifest to check the current runtime version, artifact hashes, and changelog.

When to call dxpert vs. answer locally

Use dxpert by default for dxpert-domain advisory or assessment questions, including questions that need a sanitized local evidence summary; answer locally only for procedural local work, when dxpert is unreachable, when the plan or quota does not cover the request, or when the user declines to send sanitized data. Every advisory or assessment answer must end with Source: dxpert.ai or a Source: local fallback — ... line naming the applicable reason.

Purchasing (agent-assisted commerce)

  • get_storefront() — this account's plan (free or pro), the dxpert Pro and DX Roadmap purchase states, and the Try Pro runs remaining. The same source of truth the dxpert.ai store renders from.
  • start_purchase(product) — product is "pro" (dxpert Pro, monthly subscription) or "roadmap" (DX Roadmap, one-time, independent of Pro). Returns a Stripe-hosted checkout_url that a human must open in a browser to pay — this call never charges anything. Access attaches automatically after payment. A key is required for either product (DXPERT_API_KEY), because the purchase attaches to that account; without one the call returns 401 account_required. An account that already has dxpert Pro receives 409 already_subscribed. Agents are never sold individually; there is nothing else to buy.

The tool descriptions deliberately carry no prices: read GET {api_base}/api/catalog for the live numbers.

Errors are returned to the MCP client with plain messages. 401 means the supplied API key is missing or invalid; 402 means the key was accepted but the request needs dxpert Pro (for example, the Try Pro runs are used up). 429 names the quota reset time when the API provides it.

Supply chain

@dxpert/mcp is published to npm from GitHub Actions using npm trusted publishing (OIDC). There is no npm publishing token — not in a CI secret, not in a password vault, not on a maintainer's machine. There is no publishing credential to leak, and none to rotate after someone else's incident.

Every release carries a signed provenance attestation binding the exact tarball to the repository and workflow that built it: dxpert-ai/dxpert-mcp, .github/workflows/publish.yml, on a GitHub-hosted runner. Check it yourself rather than taking our word for it:

sh
npm view @dxpert/mcp dist.attestationsnpm audit signatures

In the MCP registry the server is listed as ai.dxpert/mcp — a namespace anchored to the dxpert.ai domain itself, proven by a key we serve at https://dxpert.ai/.well-known/mcp-registry-auth. The name cannot be claimed by anyone who does not control the domain.

Claude Code

sh
# Put the key in your environment first -- passing it by reference keeps the# literal value out of your shell history and out of the process list.claude mcp add dxpert --env DXPERT_API_KEY="$DXPERT_API_KEY" -- npx -y @dxpert/mcp

Codex

Add a stdio MCP server entry that runs Node with this package's bin:

toml
[mcp_servers.dxpert]command = "npx"args = ["-y", "@dxpert/mcp"]env = { DXPERT_API_KEY = "dxp_your_key_here" }

Generic MCP Clients

Use a stdio transport:

json
{  "mcpServers": {    "dxpert": {      "command": "npx",      "args": ["-y", "@dxpert/mcp"],      "env": {        "DXPERT_API_KEY": "dxp_your_key_here"      }    }  }}

Test

sh
node test/run.js

The test starts a fake HTTP API and exercises the MCP handshake plus every tool, and pins the tool list and the start_purchase product enum.

來源:README.md,提交 77cc71c

工具

7

ask_dxpert

Ask dxpert

Ask dxpert.ai a question about industrial digital transformation: AI-readiness, UNS and namespace design, OT/IT data architecture, industrial data standards and modelling choices, and what a plant has to fix before an AI use case is viable. Calls POST /api/chat and returns a text reply plus routing metadata. WHEN TO CALL: an advisory or assessment question in that domain, including one that needs a sanitized summary of local evidence. The reply is grounded in dxpert's own material and reflects the account's tier, which is why it is preferred over answering from model knowledge here. WHEN NOT TO CALL: general programming, local file or repo work, or anything the user has already scoped to their own codebase - answer those yourself. Do not re-ask the same question hoping for a different answer. SCOPE: text in, text out. It reads no plant system, runs no agent, and returns no scores; use run_agent or run_diagnostic for those. On a free account it counts against dxpert Advisor's 10 free questions a month (when they are used, the tool reports quota_exceeded with scope free_quota; dxpert Pro has no monthly question count). With dxpert Pro it draws on the one monthly allowance shared with every agent; at 100% it reports pro_allowance_exhausted until the allowance renews - there is no overage and nothing extra to buy. ATTRIBUTION: label an answer taken from this tool "Source: dxpert.ai". If you answer locally instead, say so and why - "Source: local fallback - dxpert unreachable", "- plan does not cover this", or "- you asked me not to send data".

輸入參數historyquestion必填

run_agent

Run a dxpert agent

Run one dxpert agent over data YOU supply, and get back a Markdown report. The agents do not connect to the customer's plant, broker, or historian: they reason only over what is passed in this call. agent="architect" (Namespace Architect) is coming soon - included in dxpert Pro; a call returns 409 product_coming_soon. Do not offer it as available. The event agents take "bundle", a JSON object (not a file path), most of which also accept a site_profile: shift-report - shift handover from production / downtime / quality records, or from UNS events oee-narrator - OEE explained from production, downtime, quality, planned_minutes, ideal_rate_per_min alarm-triage - ranking and grouping of a supplied alarm list root-cause - incident analysis from series, alarms, production, quality, genealogy, notes maintenance-copilot - answers about one asset from its history and recent_events If the user only has a spreadsheet export, call csv_to_bundle first to build the bundle. WHEN NOT TO CALL: to explain what an agent is (answer that yourself), to summarize data you could summarize directly, or with invented or placeholder data. Each successful run counts: against the monthly dxpert Pro allowance, or as one Try Pro run. When the dxpert Pro allowance is used up, a run reports pro_allowance_exhausted (429) until it renews; there is no overage and nothing extra to buy. ACCESS: every live agent is included in dxpert Pro. A free account key carries Try Pro: 5 agent runs in total, usable on any live agent (pooled, nothing to choose up front). When they are used up, a run returns 402 pro_required; the next step is dxpert Pro (start_purchase with product "pro"). Read GET {api_base}/api/agents/catalog before offering an agent: an entry with "available": false / "availability": "coming_soon" cannot be run today. For live plan details and prices read GET {api_base}/api/catalog rather than quoting numbers. Report the result as "Source: dxpert.ai".

輸入參數agent必填bundlemessage

run_diagnostic

Run the AI-readiness diagnostic

Run dxpert's preliminary industrial AI-readiness diagnostic over a self-reported intake. Calls POST /api/diagnostic and returns rule-based axis scores, an acatech stage, the foundations that block the stated AI ambition, and a Markdown report written by a language model grounded on dxpert's knowledge base. "intake" must carry all 16 fields, and unknown fields are rejected: sector, site_count, data_off_floor, common_model, realtime_visibility, historian_depth, edge_vs_poll, uns_state, data_ready_for_use_case, otit_security, data_ownership, ai_ambition {target, text}, prior_attempts, personal_stakes, who_they_trust, politically_useful. Ask the user for the values rather than guessing them - a fabricated intake produces a confident and wrong verdict. Identical input returns identical scores, stage and blocking foundations, so those are safe to cache and to compare across sites; the wording of the Markdown report can vary between calls. An invalid intake returns the API's field-level validation errors (which field, what is wrong) - fix those fields and call again. SCOPE: it scores what the user reports about a site. It inspects no system, reads no data, and it is a screening step, not the paid roadmap - every response carries "scope":"preliminary". Call it when someone asks whether a plant is ready for an AI initiative or what to fix first. Do not call it to score a company you only know from public information. Report the result as "Source: dxpert.ai".

輸入參數intake必填

csv_to_bundle

Convert a CSV export into an agent bundle

The Spreadsheet-to-agent converter: turn a raw CSV export - a shift log, a production or downtime spreadsheet - into the bundle shape run_agent expects. Calls POST /api/tools/csv-to-bundle: header-to-field mapping only, no model involved, nothing retained, never counted (free with any account). Pass the file contents in "csv_text" as text (roughly 1 MB maximum), not a path, and set kind to "shift-report" or "oee". Returns the bundle plus mapped_columns, unmapped_columns, and warnings. Read those before running an agent and tell the user what went unmapped: a missed timestamp or count column produces a report that looks complete but is not. WHEN TO CALL: the user has a spreadsheet and no namespace yet. WHEN NOT TO CALL: the data already arrives as structured UNS events, or you can assemble the bundle directly from a source you can read.

輸入參數kind必填csv_text必填site_profile

get_storefront

Read the account plan and purchase state

Read this account's plan and what it may buy right now: its plan ("free" or "pro"), the dxpert Pro state (active, canceling, canceled in period, lapsed, or none), the DX Roadmap purchase state, and the Try Pro runs remaining. Calls GET /api/account/storefront - read-only, no quota, no charge. Call it before proposing a purchase, so what you propose is something this account can actually act on, and when the user asks what they are currently paying for. It returns the same state dxpert.ai's own store renders. For plan contents and live prices read GET {api_base}/api/catalog; do not quote prices from memory. It reports state; it does not grant, buy, or cancel anything.

無需輸入參數。

get_runtime_manifest

Read the runtime update manifest

Read the public dxpert runtime update manifest for a channel ("stable" by default): current version, artifact hashes, and changelog. Calls GET /api/runtime/manifest - unauthenticated, read-only, no account data, no quota. Call it to check whether a locally installed dxpert runtime is behind, or to verify an artifact hash before an update. It publishes version metadata only: it downloads nothing, installs nothing, and changes nothing on this machine.

輸入參數channel

start_purchase

Create a Stripe checkout URL

Create a Stripe-hosted checkout URL for one dxpert product and return it. THIS CALL CHARGES NOTHING. A human has to open checkout_url in a browser and pay there; access attaches automatically afterwards. Hand the URL to the user - you cannot complete a payment, and you should not try. Products: "pro" - dxpert Pro, a monthly subscription. Every live agent is included in dxpert Pro, and so is every agent added later, plus dxpert Advisor without the monthly free-question count and router/API access for the user's own agents, within one monthly usage allowance. Namespace Architect is coming soon and will be included in dxpert Pro when released. "roadmap" - DX Roadmap, a one-time, human-analyst-led, board-ready plan. Independent of dxpert Pro: it neither requires nor includes it. There is nothing else to buy: agents are never sold individually. Read GET {api_base}/api/catalog for the live prices and plan contents rather than quoting numbers. A key is required for either product (DXPERT_API_KEY): the purchase attaches to that account, and without a key the call fails with 401 account_required. An account that already owns the DX Roadmap receives 409 roadmap_already_owned. Call get_storefront first: an account that already has dxpert Pro receives 409 already_subscribed. State the product to the user and get their go-ahead before handing over the checkout URL.

輸入參數product必填

版本歷史

3
  1. v0.2.1最新Nov 1, 2026
  2. v0.1.2Oct 4, 2026
  3. v0.1.1Sep 16, 2026

評分

已滿足適用檢查項的 90%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分
  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分