Skip to content

GYOTAK Fish Market

by thaifishsashimicatalog.com · remote · no sign-in to list tools · v1.1.0 · published by com.thaifishsashimicatalog

Sashimi-grade flash-frozen fish from Thailand. Catalog, ordering, and on-chain traceability.

Final · 6Changes · 8

25 tools: 6 do something that can't be undone, 8 change things and 11 only read.

Scanned Oct 21, 2026

No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http fish-market https://mcp.gyotakuprotocol.com/mcp

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

25 tools

Can't be undone 6Claude Code: ask
  • check_replyCheck if GYOTAK staff has replied to a previously submitted inquiry.No findings

    Why it is in this group

    • The name "check_reply" says "reply": a word for sending, and what is sent cannot be taken back.
    Description, as the server wrote it
    Check if GYOTAK staff has replied to a previously submitted inquiry.
  • claim_purchase_proofLink your own purchases’ on-chain purchase proofs to your X (Twitter) account, so a post of yours can be checked against the chain.No findings

    Why it is in this group

    • The name "claim_purchase_proof" says "purchase": a word that usually means money moves, which cannot be taken back.
    • The description says "cannot be undone".
    Description, as the server wrote it
    Link your own purchases’ on-chain purchase proofs to your X (Twitter) account, so a post of yours can be checked against the chain. Buyer’s X account (self-declared): the buyer linked this purchase to their own X account; GYOTAK has not checked that the account belongs to the buyer. Each stamped purchase comes with the URL of its public verification page. Only works through a personal token URL connector — there is no customerKey argument. Called with no arguments it only lists the purchases that can be linked and links nothing, every time — pass handle to actually link. A link is stamped on chain and cannot be undone, so let the user pick the handle before you pass one. Automatic binding of future purchases is off by default: to turn it on, pass handle with auto_bind "on" — the first such call returns the consent text; show it to the user word for word (the text is in Japanese and English; show both), and only if they agree call again with consent true. Pass auto_bind "off" to stop it (no handle needed); only later purchases stop, anything already recorded stays.
  • confirm_paymentTest / QA only — do not use for customer orders: customers pay via the PromptPay QR attached to the order confirmation email.No findings

    Why it is in this group

    • The name "confirm_payment" says "payment": a word that usually means money moves, which cannot be taken back.
    Description, as the server wrote it
    Test / QA only — do not use for customer orders: customers pay via the PromptPay QR attached to the order confirmation email. Executes the Cardano preprod A→B→A settlement for an order placed by a GYOTAK test customer. Requires that test customer's customerKey, a pending payment session from create_payment, and a monthly auto-settle allowance. For any other order_id it returns PromptPay guidance and changes nothing.
  • create_paymentTest / QA only — do not use for customer orders, and do not call it after placing a customer order: customers pay via the PromptPay QR attached to the order confirmation email.No findings

    Why it is in this group

    • The name "create_payment" says "create": a word for a change.
    • The name "create_payment" also says "payment": a word that usually means money moves, which cannot be taken back.
    Description, as the server wrote it
    Test / QA only — do not use for customer orders, and do not call it after placing a customer order: customers pay via the PromptPay QR attached to the order confirmation email. Works only for orders of GYOTAK test customers; for any other order_id it returns PromptPay guidance and creates nothing. For a test order it computes the THB→tADA conversion, creates a Cardano preprod payment session with a 30-minute expiry, and returns the payment details (GYOTAK A→B→A round-trip).
  • register_payoutEmail the GYOTAK referrer a link to the form where they register where their commission should be sent: a Thai PromptPay QR (read inside the form, the image is never uploaded) or a…No findings

    Why it is in this group

    • The name "register_payout" says "payout": a word that usually means money moves, which cannot be taken back.
    Description, as the server wrote it
    Email the GYOTAK referrer a link to the form where they register where their commission should be sent: a Thai PromptPay QR (read inside the form, the image is never uploaded) or a stablecoin address (USDC on Base, or USDM on Cardano). Call this when the user wants to register, see, or change their payout destination. Returns the destination currently on file, masked, and the masked address the link was sent to. For security the form URL is never shown in the chat — the link goes only to the email address on file, so tell the user to open it from their email. Never ask the user to type the number or the wallet address into the chat.
  • verify_purchaseShow a purchase proof and trace it: purchase → catch → storage temperature.No findings

    Why it is in this group

    • The name "verify_purchase" says "purchase": a word that usually means money moves, which cannot be taken back.
    Description, as the server wrote it
    Show a purchase proof and trace it: purchase → catch → storage temperature. Use this when the customer asks to see what they bought, where it was caught or how it was stored. Pass the customerKey from this conversation, or a purchase ID (PB-…). Read-only; returns only stamped (on-chain) proofs, with the arguments for verify_catch and verify_temp.
Changes things 8Claude Code: ask
  • apply_referrerLook up your GYOTAK referral MCP URL.No findings

    Why it is in this group

    • The name "apply_referrer" says "apply": a word for a change.
    Description, as the server wrote it
    Look up your GYOTAK referral MCP URL. The URL is issued automatically when the payment for your first chat order is confirmed and is included in the payment confirmation email; call this to see it again. If you have a paid order but no URL yet, one is issued now. Referrers earn 5% of the product subtotal on paid orders placed through their URL. If you are connected through a personal token URL, omit customerKey.
  • contact_gyotakSubmit a question to GYOTAK staff when FAQ does not have the answer.No findings

    Why it is in this group

    • The description's first verb is "submit": a word for a change.
    Description, as the server wrote it
    Submit a question to GYOTAK staff when FAQ does not have the answer. Staff will reply via Discord. Use check_reply to retrieve the response later.
  • place_orderPlace an order.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Place an order. Two modes: (A) VIP wholesale: provide lineUserId of a registered VIP customer. (B) Guest retail: provide customerName, phone, items array, and a delivery address — shippingAddress, shippingProvince and email are all required, and an order missing any of them is rejected. Guest orders are priced at tier-linked retail rates (server-calculated) and the total is final at this point; a confirmation email with a PromptPay QR follows. Without customerKey or a personal token URL connection, every order creates a new customer with a new customerKey, even when the email was used before (orders are never linked to an existing customer by email); the new key is returned in the response and the confirmation email — tell the user to save it. Inventory is NOT deducted — orders go to the pick queue for staff fulfillment. Delivery is available within Thailand only, so the province must be a Thai one. International addresses are not accepted.
  • register_customerRegister as a GYOTAK customer.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Register as a GYOTAK customer. Collect name, phone, address, email, and customer type (Retail or Wholesale) via conversation BEFORE calling this tool. Returns a customerKey for future orders. Save the key in your AI memory.
  • report_shareReport a social media post you published that recommends GYOTAK with your referral URL.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Report a social media post you published that recommends GYOTAK with your referral URL. Call this right after posting, with the platform and the public URL of the post. GYOTAK records it and later verifies that the post is public and contains the referral URL.
  • verify_catchVerify a GYOTAK catch record DIRECTLY from the Midnight blockchain.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Verify a GYOTAK catch record DIRECTLY from the Midnight blockchain. Reads on-chain state and returns the raw hex plus decoded fields for independent verification. Unlike get_catch_reports (GYOTAK's own list of records: date, district and verify links, never GPS), this lets you verify without trusting GYOTAK. The exact position is not on the chain (only a commitment to it). The record carries a zero-knowledge proof that the position lies within a range. The region name is a label set by GYOTAK; the range used in the proof is not part of the record. Supports both preprod and mainnet. batchId also accepts several IDs separated by commas: they are all checked against a single fetch of the contract state, and the response lists found/not-found per ID.
  • verify_komonVerify a GYOTAK KOMON record directly from the Midnight blockchain.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Verify a GYOTAK KOMON record directly from the Midnight blockchain. Reads on-chain state and returns the raw hex plus decoded fields for independent verification. Unlike get_komon_records (which returns GYOTAK's database), this reads directly from the chain. Shielded records prove region membership without exposing GPS. Currently preprod only.
  • verify_tempVerify GYOTAK cold-chain storage temperatures DIRECTLY from the Midnight blockchain.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Verify GYOTAK cold-chain storage temperatures DIRECTLY from the Midnight blockchain. Reads on-chain state and returns decoded hourly temperature records per freezer for independent verification. Unlike the dashboard (which reads from GYOTAK's D1 database), this lets you verify without trusting GYOTAK. Each value is the HOURLY AVERAGE committed on-chain; it does not prove the temperature stayed within any limit at every moment in that hour. Supports both preprod and mainnet.
Only reads 11Claude Code: allow
  • ask_gyotakSearch GYOTAK FAQ for answers about shipping, payment, products, defrosting, traceability, B2B registration, etc.No findings

    Why it is in this group

    • The description's first verb is "search": a word for reading.
    Description, as the server wrote it
    Search GYOTAK FAQ for answers about shipping, payment, products, defrosting, traceability, B2B registration, etc. Returns top matching FAQ entries. If no match, suggest using contact_gyotak to escalate.
  • check_payment_statusTest / QA only — do not use for customer orders.No findings

    Why it is in this group

    • The name "check_payment_status" says "status": a word for reading.
    Description, as the server wrote it
    Test / QA only — do not use for customer orders. Returns the Cardano preprod payment session of an order placed by a GYOTAK test customer (status, amount, deadline, TX hash if paid). For any other order_id it returns PromptPay guidance and nothing about the order. Customers pay via the PromptPay QR attached to the order confirmation email and receive an email once the payment is confirmed.
  • get_catalogGet GYOTAK's full fish catalog with real-time availability, retail prices (THB/kg), freshness tiers, and traceability records.No findings

    Why it is in this group

    • The name "get_catalog" says "get": a word for reading.
    Description, as the server wrote it
    Get GYOTAK's full fish catalog with real-time availability, retail prices (THB/kg), freshness tiers, and traceability records. Retail prices are always included. For registered chat customers, pass customerKey (gyotak_cus_...) to show wholesale pricing and enable one-tap checkout. For LINE VIP customers, pass lineUserId. Delivery is available within Thailand only. International addresses are not accepted.
  • get_catch_reportsGet catch records by date or freshness tier.No findings

    Why it is in this group

    • The name "get_catch_reports" says "get": a word for reading.
    Description, as the server wrote it
    Get catch records by date or freshness tier. Returns the catch date, the region (district name), the blog post URL when published and, for records registered on the Midnight blockchain, a verify link per batch. Exact GPS coordinates are never returned: on v3 records the exact position is not on the chain (only a commitment to it); the record carries a zero-knowledge proof that the position lies within a range, and the district name is a label set by GYOTAK that is not part of that proof. In-stock products reference these records by date. To check a record on-chain without trusting GYOTAK, open its verify link, or call verify_catch with network "mainnet", the v3 contract address given in the response and the batch ID.
  • get_contact_infoGet the two ways to buy from GYOTAK, with the contact details for each: retail (order here through place_order, or browse the web shop) and B2B wholesale for restaurants and busine…No findings

    Why it is in this group

    • The name "get_contact_info" says "get": a word for reading.
    Description, as the server wrote it
    Get the two ways to buy from GYOTAK, with the contact details for each: retail (order here through place_order, or browse the web shop) and B2B wholesale for restaurants and businesses (LINE @284ezjvm, tier pricing, application required). Call this when the user asks how to buy, how to open a wholesale account, or how to reach GYOTAK. Takes no arguments and returns static text — for product availability or prices use get_catalog, and for other questions use ask_gyotak.
  • get_komon_recordsGet GYOTAK KOMON physical authentication records from the database.No findings

    Why it is in this group

    • The name "get_komon_records" says "get": a word for reading.
    Description, as the server wrote it
    Get GYOTAK KOMON physical authentication records from the database. Each record represents a PUF (physically unclonable function) registration with minutiae extraction and on-chain commitment. Shielded records do not expose GPS.
  • get_order_historyGet B2B order history (last 20 orders).No findings

    Why it is in this group

    • The name "get_order_history" says "get": a word for reading.
    Description, as the server wrote it
    Get B2B order history (last 20 orders). Requires lineUserId of a registered VIP customer.
  • get_share_kitGet the facts and constraints for writing a social media post about GYOTAK with the caller's referral URL: order facts, fish photo URLs, verification page URLs of the caller's stam…No findings

    Why it is in this group

    • The name "get_share_kit" says "get": a word for reading.
    Description, as the server wrote it
    Get the facts and constraints for writing a social media post about GYOTAK with the caller's referral URL: order facts, fish photo URLs, verification page URLs of the caller's stamped purchase proofs, allowed and forbidden claims, and the required referral disclosure. The wording is up to the user and their assistant. Call this again each time the user asks for a post; do not reuse a previous result.
  • my_referralsShow your referral summary as a GYOTAK referrer: your referral URL, number of referred orders (paid / unpaid), this month's estimated commission, unpaid balance, payout destination…No findings

    Why it is in this group

    • The description's first verb is "show": a word for reading.
    Description, as the server wrote it
    Show your referral summary as a GYOTAK referrer: your referral URL, number of referred orders (paid / unpaid), this month's estimated commission, unpaid balance, payout destination status, and the last 5 paid referred orders (order number, date, subtotal, commission — no buyer details). Only works for the customer of this connection; if you are connected through a personal token URL, omit customerKey.
  • recover_customer_keyExplains where a lost customerKey can be found: a key issued with an order is written in the order confirmation email sent to the registered address (each order placed without a ke…No findings

    Why it is in this group

    • The description's first verb is "explain": a word for reading.
    Description, as the server wrote it
    Explains where a lost customerKey can be found: a key issued with an order is written in the order confirmation email sent to the registered address (each order placed without a key has its own key). For keys that cannot be found there, it points to contact_gyotak. This tool does not look up, verify or send anything.
  • search_fishSearch fish by name (Japanese, Thai, or English).No findings

    Why it is in this group

    • The name "search_fish" says "search": a word for reading.
    Description, as the server wrote it
    Search fish by name (Japanese, Thai, or English). Provide lineUserId to include VIP tier pricing.

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.1.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http fish-market https://mcp.gyotakuprotocol.com/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__fish-market__get_catalog",
      "mcp__fish-market__search_fish",
      "mcp__fish-market__get_contact_info",
      "mcp__fish-market__get_catch_reports",
      "mcp__fish-market__get_order_history",
      "mcp__fish-market__get_komon_records",
      "mcp__fish-market__ask_gyotak",
      "mcp__fish-market__recover_customer_key",
      "mcp__fish-market__check_payment_status",
      "mcp__fish-market__my_referrals",
      "mcp__fish-market__get_share_kit"
    ],
    "ask": [
      "mcp__fish-market__place_order",
      "mcp__fish-market__verify_catch",
      "mcp__fish-market__verify_temp",
      "mcp__fish-market__verify_komon",
      "mcp__fish-market__contact_gyotak",
      "mcp__fish-market__check_reply",
      "mcp__fish-market__register_customer",
      "mcp__fish-market__create_payment",
      "mcp__fish-market__apply_referrer",
      "mcp__fish-market__verify_purchase",
      "mcp__fish-market__report_share",
      "mcp__fish-market__claim_purchase_proof",
      "mcp__fish-market__register_payout",
      "mcp__fish-market__confirm_payment"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as fish-market. Review it before you use it.