Your AI · MCP and CLI

Bring your own AI.

MPBxChange runs no AI on your drawings, files or contracts. Connect Claude, ChatGPT, Codex, Cursor or any MCP client to your account and let it search Thai fabricators, compare materials, publish your request and read the quotations, as you.

Create a token

Connect

Three steps, two minutes.

Public tools work without a token. Anything that reads or writes your account needs one, and every call is logged against your account.

  1. Create a personal token

    Sign in, open Account · Your AI, name the token after the client that will use it. It is shown once; revoke it there at any time. Open Your AI

  2. Add the server to your client

    Endpoint: https://www.mpbxchange.com/api/mcp · transport HTTP, JSON-RPC 2.0, header Authorization: Bearer <token>. Discovery document: /.well-known/mcp.json.

  3. Ask your AI for a board

    "Find Thai fabricators for a 6-layer FR-4 board and publish a request for 500 pieces to Munich." It calls pcb_suppliers_search, pcb_materials_search and pcb_request_create; quotations arrive through pcb_request_get.

Tools

The PCB journey, as tools.

Input schemas come from tools/list. Public tools are marked; the rest act as the token owner.

pcb_suppliers_search
public
Search verified PCB fabricators operating in Thailand: site, board types, layers, finishes, certifications, site status and sources.
pcb_materials_search
public
Search 253 laminate, prepreg and finish records with Tg, Td, Dk, Df, CTE and IPC-4101 references.
pcb_request_create
token · writes
Publish a Thailand PCB manufacturing request (layers, size, thickness, material, finish, quantity, lead time, destination) as the token owner.
pcb_requests_list
token
List the token owner's PCB requests with quotation counts.
pcb_request_get
token
Read one request with every quotation: supplier, price, lead time, MOQ, tooling, terms.
Earlier platform tools (contracts, escrow reads, verification, tariffs)
Sourcing & matching
matchmaker_runRank the best-fit suppliers for a listing you own by capability match (not price); returns scored matches.
list_rfqsList RFQ broadcasts you issued or received, with status and pagination.
get_supplier_capacityRead a supplier's declared capacity and lead-time signals before sourcing.
spec_translateNormalise a free-text or foreign-language spec into the platform's parametric per-vertical schema.
Trust & verification
supplier_verificationCheck a supplier's verification status and W3C verifiable credentials.
kyc_checkCheck KYC status for the caller (or, as admin, a specified user).
sanctions_screenScreen a party name against OFAC, EU, UN, and UK sanctions lists.
list_my_credentialsList the caller's issued W3C verifiable credentials.
Contracts & escrow
get_contractFetch one trade contract: commercial terms, milestone schedule, signature state, and escrow funding state. Read-only.
list_contractsList the caller's trade contracts, filterable by status and by buyer/supplier role.
escrow_statusRead the escrow funding and milestone-release state for a contract the caller is party to.
list_disputesList disputes on the caller's contracts with a simplified status view.
Trade compliance
tariff_optimizeFind tariff-optimal sourcing and routing for a product across trade corridors.

Client configuration

Copy, paste your token, done.

The same endpoint serves every client. Replace mpbx_… with your token. Keep it out of shared files: it acts as you.

Claude Code
claude mcp add --transport http mpbxchange https://www.mpbxchange.com/api/mcp --header "Authorization: Bearer mpbx_…"
Claude Desktop · ChatGPT · Cursor (JSON)
{
  "mcpServers": {
    "mpbxchange": {
      "url": "https://www.mpbxchange.com/api/mcp",
      "headers": {
        "Authorization": "Bearer mpbx_…"
      }
    }
  }
}
Codex (~/.codex/config.toml)
[mcp_servers.mpbxchange]
url = "https://www.mpbxchange.com/api/mcp"
bearer_token_env_var = "MPBX_TOKEN"

# then: export MPBX_TOKEN=mpbx_…
curl
curl -s https://www.mpbxchange.com/api/mcp \
  -H "Authorization: Bearer mpbx_…" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"pcb_suppliers_search","arguments":{"query":"Ayutthaya"}}}'
Command line (mpbx)
git clone https://github.com/x7q8qr87ty-sudo/MPBx && cd MPBx/cli
node mpbx.mjs login mpbx_…
node mpbx.mjs suppliers "Prachin Buri"
node mpbx.mjs materials 370HR
node mpbx.mjs gerber read ./board.zip
node mpbx.mjs request create --title "Controller rev B" --qty 500 --layers 4 --width 100 --height 80 --destination "Germany, Munich"

The CLI reads Gerber ZIPs on your machine and talks to the same MCP endpoint; it needs Node 20 or later.

What MPBxChange does not do

No AI of ours touches your work.

DrawingsGerber ZIPs are read and rendered in your browser. Nothing is uploaded.
PDF and image drawingsRead by your AI, then entered into a request by you or through pcb_request_create.
Contracts and photosReviewed by you, or by your AI with your files. MPBxChange stores the record, not an opinion.
Your tokenStored as a hash. Every call is logged to your account and can be revoked at any time.