Koskamo

Yutai MCP

The Yutai MCP server allows AI agents to query the Yutai registry for tokenized equities data, including which stocks have holder benefits on specific chains, which tokenizers issue tokens, and benefit availability. It supports read-only access to public registry data and authenticated access for developers to check eligibility and claims.

Endpoint and access

No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.

Yutai MCP logo, by Yutai Technologies, Inc.Vendor evidenceStreamable HTTPNo sign-inEndpoint checked 2026-11-02Operated by Yutai Technologies, Inc.
MCP endpoint (Streamable HTTP)
https://mcp.yutai.com/mcp
Vendor documentation

What its tools do

9 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.

9 of 9 have a description · 9 of 9 declare behavior hints · 3 of 6 with parameters document them all

Checks and signals

Each line is separate evidence, not a trust score.

  • Passed Endpoint answered the live check ·
  • Passed Official MCP Registry namespace is tied to yutai.com ·
  • Passed Endpoint is on the registry namespace domain ·
  • Availability 1 of 1 checks passed in 30 days

What you can do with it

  • Query which stocks have Yutai benefits on Solana
  • Identify which chains carry the most tokenized stocks
  • Find tokenizers issuing tokens for a given stock
  • Check benefit availability for holders in a specific country

Source and maintenance

Vendor evidenceRegistry 1.0.0

Protocol and capabilities

Server
Yutai 0.1.0
MCP protocol negotiated in check
2025-06-18
Tools
9 advertised
Resources
4 advertised
Resource templates
0 advertised
Prompts
2 advertised
Server-advertised capabilities
{
  "tools": {
    "listChanged": true
  },
  "prompts": {
    "listChanged": true
  },
  "resources": {
    "listChanged": true
  }
}

Server-provided instructions

Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.

Yutai is the neutral loyalty network for tokenized equity. These tools read the public Yutai ledger with no credential. Search companies, read one company, read the facts of token instruments, search the developer docs, read the benefits behind instruments in one market, list the chains and tokenizer programmes, read one stock's public market activity, or read how each data domain stands today. Two prompts and four resources carry the docs and the interface description. Each address may make sixty calls a minute. Nothing here writes, and nothing here moves a token or a share. Read the integration docs at https://docs.yutai.com/mcp. Questions go to hello@yutai.com.

Tools

9 advertised

search_companies — Search companies
Advertised by the server during the last successful anonymous check.
Advertised read-only

Search the public Yutai registry for companies, the share classes each one carries and the token instruments listed for a share class. Answers one page at a time, with the link to the next page when more companies follow.

search_companies input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "isin": {
      "type": "string",
      "pattern": "^[A-Z]{2}[A-Z0-9]{9}[0-9]$",
      "description": "Narrow the page to the company the ISIN belongs to: the share class's ISIN, such as US0000000009."
    },
    "chain": {
      "type": "string",
      "pattern": "^[-a-z0-9]{3,8}:[-_a-zA-Z0-9]{1,32}$",
      "description": "Narrow the page to the companies with an instrument on the chain: its CAIP-2 id, such as eip155:88880."
    },
    "limit": {
      "anyOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[0-9]{1,4}$"
        }
      ],
      "description": "The page's size: from 1 to 200 rows, 50 when left out."
    },
    "cursor": {
      "type": "string",
      "description": "The page link the previous answer carried: the nextCursor field's value of the page before this one."
    },
    "country": {
      "type": "string",
      "pattern": "^[A-Z]{2}$",
      "description": "Narrow the page to the companies of one country: its two-letter country code, such as US."
    }
  }
}
search_companies output schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "items",
    "nextCursor"
  ],
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "name",
          "country",
          "sourceMode",
          "securities"
        ],
        "properties": {
          "name": {
            "type": "string",
            "maxLength": 256,
            "minLength": 1
          },
          "country": {
            "type": "string",
            "pattern": "^[A-Z]{2}$"
          },
          "securities": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "isin",
                "ticker",
                "instruments"
              ],
              "properties": {
                "isin": {
                  "type": "string",
                  "pattern": "^[A-Z]{2}[A-Z0-9]{9}[0-9]$"
                },
                "ticker": {
                  "type": "string",
                  "pattern": "^[A-Z0-9.-]{1,16}$"
                },
                "instruments": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "instrumentId",
                      "chain",
                      "wrapperName",
                      "tokenIssuerName",
                      "legalForm",
                      "issuerSponsored",
                      "transferModel",
                      "kycByWrapper",
                      "convertsTo"
                    ],
                    "properties": {
                      "chain": {
                        "type": "string",
                        "pattern": "^[-a-z0-9]{3,8}:[-_a-zA-Z0-9]{1,32}$"
                      },
                      "legalForm": {
                        "anyOf": [
                          {
                            "enum": [
                              "synthetic_tracker",
                              "security_entitlement_ucc8",
                              "native_registered_share",
                              "other"
                            ],
                            "type": "string"
                          },
                          {
                            "type": "null"
                          }
                        ]
                      },
                      "convertsTo": {
                        "anyOf": [
                          {
                            "type": "object",
                            "required": [
                              "instrumentId",
                              "wrapperName"
                            ],
                            "properties": {
                              "wrapperName": {
                                "type": "string",
                                "maxLength": 128,
                                "minLength": 1
                              },
                              "instrumentId": {
                                "type": "string",
                                "pattern": "^[-a-z0-9]{3,8}:[-_a-zA-Z0-9]{1,32}\\/[-a-z0-9]{3,8}:[-.%a-zA-Z0-9]{1,128}$"
                              }
                            },
                            "additionalProperties": false
                          },
                          {
                            "type": "null"
                          }
                        ]
                      },
                      "wrapperName": {
                        "type": "string",
                        "maxLength": 128,
                        "minLength": 1
                      },
                      "instrumentId": {
                        "type": "string",
                        "pattern": "^[-a-z0-9]{3,8}:[-_a-zA-Z0-9]{1,32}\\/[-a-z0-9]{3,8}:[-.%a-zA-Z0-9]{1,128}$"
                      },
                      "kycByWrapper": {
                        "type": "boolean"
                      },
                      "transferModel": {
                        "anyOf": [
                          {
                            "enum": [
                              "open",
                              "permissioned_whitelist"
                            ],
                            "type": "string"
                          },
                          {
                            "type": "null"
                          }
                        ]
                      },
                      "issuerSponsored": {
                        "type": "boolean"
                      },
                      "tokenIssuerName": {
                        "anyOf": [
                          {
                            "type": "string",
                            "maxLength": 256,
                            "minLength": 1
                          },
                          {
                            "type": "null"
                          }
                        ]
                      }
                    },
                    "additionalProperties": false
                  },
                  "minItems": 1
                }
              },
              "additionalProperties": false
            },
            "minItems": 1
          },
          "sourceMode": {
            "enum": [
              "SIMULATED",
              "SANDBOX",
              "LIVE"
            ],
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "maxItems": 200
    },
    "nextCursor": {
      "type": [
        "string",
        "null"
      ]
    }
  },
  "additionalProperties": false
}
search_companies annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
get_company — Get company
Advertised by the server during the last successful anonymous check.
Advertised read-only

Read one company from the public Yutai registry by its legal name, with its share classes and token instruments. Give the two-letter country when two companies share a name.

get_company input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "name"
  ],
  "properties": {
    "name": {
      "type": "string",
      "maxLength": 256,
      "minLength": 1
    },
    "country": {
      "type": "string",
      "pattern": "^[A-Z]{2}$"
    }
  }
}
get_company output schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "name",
    "country",
    "sourceMode",
    "securities"
  ],
  "properties": {
    "name": {
      "type": "string",
      "maxLength": 256,
      "minLength": 1
    },
    "country": {
      "type": "string",
      "pattern": "^[A-Z]{2}$"
    },
    "securities": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "isin",
          "ticker",
          "instruments"
        ],
        "properties": {
          "isin": {
            "type": "string",
            "pattern": "^[A-Z]{2}[A-Z0-9]{9}[0-9]$"
          },
          "ticker": {
            "type": "string",
            "pattern": "^[A-Z0-9.-]{1,16}$"
          },
          "instruments": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "instrumentId",
                "chain",
                "wrapperName",
                "tokenIssuerName",
                "legalForm",
                "issuerSponsored",
                "transferModel",
                "kycByWrapper",
                "convertsTo"
              ],
              "properties": {
                "chain": {
                  "type": "string",
                  "pattern": "^[-a-z0-9]{3,8}:[-_a-zA-Z0-9]{1,32}$"
                },
                "legalForm": {
                  "anyOf": [
                    {
                      "enum": [
                        "synthetic_tracker",
                        "security_entitlement_ucc8",
                        "native_registered_share",
                        "other"
                      ],
                      "type": "string"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "convertsTo": {
                  "anyOf": [
                    {
                      "type": "object",
                      "required": [
                        "instrumentId",
                        "wrapperName"
                      ],
                      "properties": {
                        "wrapperName": {
                          "type": "string",
                          "maxLength": 128,
                          "minLength": 1
                        },
                        "instrumentId": {
                          "type": "string",
                          "pattern": "^[-a-z0-9]{3,8}:[-_a-zA-Z0-9]{1,32}\\/[-a-z0-9]{3,8}:[-.%a-zA-Z0-9]{1,128}$"
                        }
                      },
                      "additionalProperties": false
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "wrapperName": {
                  "type": "string",
                  "maxLength": 128,
                  "minLength": 1
                },
                "instrumentId": {
                  "type": "string",
                  "pattern": "^[-a-z0-9]{3,8}:[-_a-zA-Z0-9]{1,32}\\/[-a-z0-9]{3,8}:[-.%a-zA-Z0-9]{1,128}$"
                },
                "kycByWrapper": {
                  "type": "boolean"
                },
                "transferModel": {
                  "anyOf": [
                    {
                      "enum": [
                        "open",
                        "permissioned_whitelist"
                      ],
                      "type": "string"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "issuerSponsored": {
                  "type": "boolean"
                },
                "tokenIssuerName": {
                  "anyOf": [
                    {
                      "type": "string",
                      "maxLength": 256,
                      "minLength": 1
                    },
                    {
                      "type": "null"
                    }
                  ]
                }
              },
              "additionalProperties": false
            },
            "minItems": 1
          }
        },
        "additionalProperties": false
      },
      "minItems": 1
    },
    "sourceMode": {
      "enum": [
        "SIMULATED",
        "SANDBOX",
        "LIVE"
      ],
      "type": "string"
    }
  },
  "additionalProperties": false
}
get_company annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
list_instruments — List instruments
Advertised by the server during the last successful anonymous check.
Advertised read-only

Read the facts of one or more token instruments by their instrument ids, including the programme behind each one, its legal form and any instrument the token converts into.

list_instruments input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "instrumentIds"
  ],
  "properties": {
    "instrumentIds": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[-a-z0-9]{3,8}:[-_a-zA-Z0-9]{1,32}\\/[-a-z0-9]{3,8}:[-.%a-zA-Z0-9]{1,128}$"
      },
      "maxItems": 100,
      "minItems": 1,
      "description": "The instruments to read the facts of: one or more, at most 100 in one read, each a CAIP-19 instrument id such as eip155:88880/erc20:0x0000000000000000000000000000000000000000."
    }
  }
}
list_instruments output schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "items",
    "nextCursor"
  ],
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "instrumentId",
          "chain",
          "wrapperName",
          "tokenIssuerName",
          "legalForm",
          "issuerSponsored",
          "transferModel",
          "kycByWrapper",
          "convertsTo"
        ],
        "properties": {
          "chain": {
            "type": "string",
            "pattern": "^[-a-z0-9]{3,8}:[-_a-zA-Z0-9]{1,32}$"
          },
          "legalForm": {
            "anyOf": [
              {
                "enum": [
                  "synthetic_tracker",
                  "security_entitlement_ucc8",
                  "native_registered_share",
                  "other"
                ],
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "convertsTo": {
            "anyOf": [
              {
                "type": "object",
                "required": [
                  "instrumentId",
                  "wrapperName"
                ],
                "properties": {
                  "wrapperName": {
                    "type": "string",
                    "maxLength": 128,
                    "minLength": 1
                  },
                  "instrumentId": {
                    "type": "string",
                    "pattern": "^[-a-z0-9]{3,8}:[-_a-zA-Z0-9]{1,32}\\/[-a-z0-9]{3,8}:[-.%a-zA-Z0-9]{1,128}$"
                  }
                },
                "additionalProperties": false
              },
              {
                "type": "null"
              }
            ]
          },
          "wrapperName": {
            "type": "string",
            "maxLength": 128,
            "minLength": 1
          },
          "instrumentId": {
            "type": "string",
            "pattern": "^[-a-z0-9]{3,8}:[-_a-zA-Z0-9]{1,32}\\/[-a-z0-9]{3,8}:[-.%a-zA-Z0-9]{1,128}$"
          },
          "kycByWrapper": {
            "type": "boolean"
          },
          "transferModel": {
            "anyOf": [
              {
                "enum": [
                  "open",
                  "permissioned_whitelist"
                ],
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "issuerSponsored": {
            "type": "boolean"
          },
          "tokenIssuerName": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 256,
                "minLength": 1
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "additionalProperties": false
      },
      "maxItems": 200
    },
    "nextCursor": {
      "type": [
        "string",
        "null"
      ]
    }
  },
  "additionalProperties": false
}
list_instruments annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
list_chains — List chains
Advertised by the server during the last successful anonymous check.
Advertised read-only

Read the chains Yutai's ledger covers, each with its tokenizers, stocks, supply and holder figures and the newest health reading beside them.

list_chains input schema
{
  "type": "object",
  "properties": {}
}
list_chains annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
list_tokenizers — List tokenizers
Advertised by the server during the last successful anonymous check.
Advertised read-only

Read the tokenizer programmes Yutai's ledger covers, each with its issuer, its reach, its supply and its holder figures.

list_tokenizers input schema
{
  "type": "object",
  "properties": {}
}
list_tokenizers annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
get_market_activity — Get market activity
Advertised by the server during the last successful anonymous check.
Advertised read-only

Read one stock's public on-chain activity: its holder count, each token's supply by chain and tokenizer, and its recent large movements. Give a chain or a tokenizer to narrow the tokens and the movements.

get_market_activity input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "stock"
  ],
  "properties": {
    "chain": {
      "enum": [
        "eip155:1",
        "eip155:10",
        "eip155:56",
        "eip155:196",
        "eip155:999",
        "eip155:4663",
        "eip155:5000",
        "eip155:8453",
        "eip155:42161",
        "eip155:57073",
        "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
        "eip155:143",
        "ton:-239",
        "tron:0x2b6653dc",
        "eip155:43114",
        "eip155:88888"
      ],
      "type": "string"
    },
    "stock": {
      "type": "string",
      "pattern": "^[a-z0-9][a-z0-9.-]{0,63}$"
    },
    "tokenizer": {
      "type": "string",
      "pattern": "^[a-z0-9][a-z0-9.-]{0,63}$"
    }
  }
}
get_market_activity annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
get_benefit_availability — Get benefit availability
Advertised by the server during the last successful anonymous check.
Advertised read-only

Read the benefits the companies behind one or more token instruments offer in one market, each with what a holder must do to reach it, how it is delivered, and whether it is an illustrative example. Give one or more instrument ids and the two-letter country.

get_benefit_availability input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "instruments",
    "country"
  ],
  "properties": {
    "country": {
      "type": "string",
      "pattern": "^[A-Z]{2}$",
      "description": "The market whose stored policy shapes the answer: its two-letter country code, such as PT."
    },
    "instruments": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "maxItems": 200,
      "minItems": 1,
      "description": "The instruments to read: one or more, at most 200 in one read, each an ISIN such as US0000000009 or a CAIP-19 instrument id such as eip155:88880/erc20:0x0000000000000000000000000000000000000000."
    }
  }
}
get_benefit_availability output schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "instruments"
  ],
  "properties": {
    "instruments": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "isin",
          "display",
          "count",
          "illustrative"
        ],
        "properties": {
          "isin": {
            "type": "string",
            "pattern": "^[A-Z]{2}[A-Z0-9]{9}[0-9]$",
            "description": "The instrument's ISIN, in the registry's canonical spelling."
          },
          "count": {
            "type": "integer",
            "maximum": 500,
            "minimum": 1,
            "description": "How many benefits the company offers in the caller's country."
          },
          "display": {
            "enum": [
              "full",
              "badge_only"
            ],
            "type": "string",
            "description": "full lists the benefits, badge_only carries the count alone."
          },
          "benefits": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "name",
                "requirement",
                "fulfilment",
                "illustrative",
                "scope",
                "funder"
              ],
              "properties": {
                "name": {
                  "type": "string",
                  "maxLength": 128,
                  "minLength": 1,
                  "description": "The benefit's name as the company writes it."
                },
                "plus": {
                  "type": "object",
                  "required": [
                    "distributorName",
                    "rewardTiers"
                  ],
                  "properties": {
                    "progress": {
                      "type": "object",
                      "required": [
                        "streakDays",
                        "requiredDays"
                      ],
                      "properties": {
                        "streakDays": {
                          "type": "integer",
                          "maximum": 9007199254740991,
                          "minimum": 0,
                          "description": "Whole days the wallet has held the security, the one clock the tier reads."
                        },
                        "requiredDays": {
                          "type": "integer",
                          "maximum": 9007199254740991,
                          "description": "The whole days the tier asks for.",
                          "exclusiveMinimum": 0
                        }
                      },
                      "description": "The wallet's streak toward the tier that asks days; present only on an eligibility answer and only when that tier asks days.",
                      "additionalProperties": false
                    },
                    "rewardTiers": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "required": [
                          "name",
                          "requirement"
                        ],
                        "properties": {
                          "name": {
                            "type": "string",
                            "maxLength": 128,
                            "minLength": 1,
                            "description": "The tier's name as the programme carries it."
                          },
                          "requirement": {
                            "type": "string",
                            "maxLength": 512,
                            "minLength": 1,
                            "description": "The one short sentence the tier's holding and days read as."
                          }
                        },
                        "additionalProperties": false
                      },
                      "maxItems": 64,
                      "description": "The programme's reward tiers in ladder order, each with the one short requirement sentence."
                    },
                    "distributorName": {
                      "type": "string",
                      "maxLength": 128,
                      "minLength": 1,
                      "description": "The distributor's own name from Yutai's member record, the name the Plus offer stands under."
                    }
                  },
                  "description": "The Yutai Plus facts, present only on a distributor-scoped offer the calling key's own distributor may see; absent on every base offer and on every other distributor's answer.",
                  "additionalProperties": false
                },
                "scope": {
                  "enum": [
                    "base",
                    "distributor"
                  ],
                  "type": "string",
                  "description": "Who the offer is shown to: base for every distributor, distributor for the distributors it names."
                },
                "funder": {
                  "enum": [
                    "YUTAI",
                    "ISSUER",
                    "DISTRIBUTOR",
                    "BRAND"
                  ],
                  "type": "string",
                  "description": "Who funds the offer: Yutai, its issuer, a distributor or a brand."
                },
                "fulfilment": {
                  "enum": [
                    "CODE",
                    "POINTS_CREDIT",
                    "VENUE_REDEMPTION",
                    "CHAIN_MINT",
                    "TOKEN_TRANSFER",
                    "REWARD_FULFILMENT"
                  ],
                  "type": "string",
                  "description": "How the benefit reaches the holder: CODE for a discount code or voucher, POINTS_CREDIT for points, VENUE_REDEMPTION for access at the venue, CHAIN_MINT for a digital collectible, TOKEN_TRANSFER for a token sent to the holder's wallet, and REWARD_FULFILMENT for a merchant reward ordered with a fulfilment provider."
                },
                "requirement": {
                  "type": "string",
                  "maxLength": 512,
                  "minLength": 1,
                  "description": "What the holder must do to reach the benefit, in the company's own short words."
                },
                "illustrative": {
                  "type": "boolean",
                  "description": "True when the benefit is an example Yutai made up, not an offer a real company has agreed to."
                }
              },
              "additionalProperties": false
            },
            "maxItems": 500,
            "description": "The benefits the count counts, present on a full row and absent on a badge_only row."
          },
          "illustrative": {
            "type": "boolean",
            "description": "True when every benefit the count counts is illustrative, meaning an example Yutai made up rather than a real offer."
          }
        },
        "additionalProperties": false
      },
      "maxItems": 200
    }
  },
  "additionalProperties": false
}
get_benefit_availability annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
get_status — Get status
Advertised by the server during the last successful anonymous check.
Advertised read-only

Read how each of Yutai's data domains stands today, each with the plain sentence for its mode, beside the answer's version, the build and its instant.

get_status input schema
{
  "type": "object",
  "properties": {}
}
get_status output schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "apiVersion",
    "domains",
    "status",
    "version",
    "time"
  ],
  "properties": {
    "time": {
      "type": "string",
      "format": "date-time",
      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$",
      "description": "The instant this answer was made, in the ISO 8601 form."
    },
    "status": {
      "enum": [
        "ok",
        "degraded",
        "down"
      ],
      "type": "string",
      "description": "How the service stands: ok when it answers, degraded when part of it is unavailable, down when a check failed; a down word stands up to thirty seconds, so a recovered service can answer down briefly."
    },
    "domains": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "domain",
          "mode",
          "sentence"
        ],
        "properties": {
          "mode": {
            "enum": [
              "SIMULATED",
              "SANDBOX",
              "LIVE"
            ],
            "type": "string"
          },
          "domain": {
            "enum": [
              "chain",
              "openbanking",
              "enrichment",
              "prices",
              "wallet",
              "kyc-attest",
              "registry",
              "token-issuer-sources",
              "reference-data",
              "custodial",
              "treasury"
            ],
            "type": "string"
          },
          "sentence": {
            "type": "string",
            "minLength": 1
          }
        },
        "additionalProperties": false
      }
    },
    "version": {
      "type": "string",
      "minLength": 1,
      "description": "The build this answer comes from: the first seven characters of the source commit, or unknown when the serving environment names none."
    },
    "apiVersion": {
      "type": "string",
      "const": "1"
    }
  },
  "additionalProperties": false
}
get_status annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
search_docs — Search docs
Advertised by the server during the last successful anonymous check.
Advertised read-only

Search the Yutai developer docs and read the matching pages as short snippets, each with the page's own address. Give a word or a phrase; the answer names up to the number of pages you ask for, five by default.

search_docs input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "query"
  ],
  "properties": {
    "limit": {
      "type": "integer",
      "default": 5,
      "maximum": 10,
      "minimum": 1
    },
    "query": {
      "type": "string",
      "maxLength": 200,
      "minLength": 1
    }
  }
}
search_docs output schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "query",
    "results",
    "total"
  ],
  "properties": {
    "query": {
      "type": "string",
      "minLength": 1
    },
    "total": {
      "type": "integer",
      "maximum": 9007199254740991,
      "minimum": 0
    },
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "title",
          "url",
          "snippet"
        ],
        "properties": {
          "url": {
            "type": "string",
            "minLength": 1
          },
          "title": {
            "type": "string",
            "minLength": 1
          },
          "snippet": {
            "type": "string",
            "minLength": 1
          }
        },
        "additionalProperties": false
      }
    }
  },
  "additionalProperties": false
}
search_docs annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}

Prompts

2 advertised

integrate-yutai — Integrate Yutai

Advertised by the server during the last successful anonymous check.

A recipe for adding the Yutai registry, the public stock activity and the benefit availability reads to a product, in the order the docs walk them.

No arguments advertised.

stock-benefits-brief — Stock benefits brief

Advertised by the server during the last successful anonymous check.

A one-stock brief: the companies and instruments Yutai covers, the chains they run on, the benefits behind them and the countries where each is available.

stock
The company name or the stock ticker. (required)

Resources

4 advertised

openapi — OpenAPI document

Advertised by the server during the last successful anonymous check.

The distributor API's interface description, as the docs host serves it.

openapi URI
yutai://openapi/v1

MIME type: application/json

quickstart — Quickstart

Advertised by the server during the last successful anonymous check.

The four steps that take a distributor from an account to one wallet's holdings on its own page.

quickstart URI
yutai://docs/quickstart

MIME type: text/markdown

eligibilityRules — Eligibility rules

Advertised by the server during the last successful anonymous check.

The eligibility read's own page: what it answers for one wallet, and the tier, holding time, lending and DeFi rules behind the answer.

eligibilityRules URI
yutai://docs/eligibility-rules

MIME type: text/markdown

disclaimer — Disclaimer

Advertised by the server during the last successful anonymous check.

The standard Yutai disclaimer for benefits.

disclaimer URI
yutai://legal/disclaimer

MIME type: text/plain

90-day uptime

A lightweight connection check about every six hours, sampled on hosts with many listings. It shows the server answered, not that its tools work.

Too few checks for a percentage yet (6 of 6 answered).

  1. 2026-11-02: 3 of 3 checks answered
  2. 2026-11-03: 3 of 3 checks answered

30-day availability

Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.

Successful checks
1 of 1 (100%)
Average latency
1181 ms
95th percentile latency
1181 ms

Maintenance history

Public check and source-refresh events. Editorial and ownership records remain private.

  • · probe · passed · 1181 ms · metadata changed · 9 tool(s), 4 resource(s), 0 resource template(s), 2 prompt(s)

Connect from your client

Each snippet registers the same endpoint; pick the client you use.

This server is operated by the named third party. Listing and endpoint checks are not an endorsement or a security audit. Review the operator's permissions, terms, and data handling before connecting. How listings are checked and corrected.

Claude Code

Run this once in a terminal. It registers the remote server. Use --scope project to write .mcp.json for the repo.
Claude Code configuration
claude mcp add --transport http yutai-mcp https://mcp.yutai.com/mcp

Codex

Run this once. Codex stores MCP servers in ~/.codex/config.toml (or .codex/config.toml in a trusted project).
Codex configuration
codex mcp add yutai-mcp --url https://mcp.yutai.com/mcp

Cursor

Merge this server into .cursor/mcp.json in your project, then enable yutai-mcp in your MCP settings.
Cursor configuration
{
  "mcpServers": {
    "yutai-mcp": {
      "url": "https://mcp.yutai.com/mcp"
    }
  }
}

Cline

Merge this into cline_mcp_settings.json (Cline → MCP Servers → Configure).
Cline configuration
{
  "mcpServers": {
    "yutai-mcp": {
      "type": "streamableHttp",
      "url": "https://mcp.yutai.com/mcp",
      "disabled": false
    }
  }
}

VS Code

Merge this server into .vscode/mcp.json. Use MCP: List Servers to start yutai-mcp and inspect its tools.
VS Code configuration
{
  "servers": {
    "yutai-mcp": {
      "type": "http",
      "url": "https://mcp.yutai.com/mcp"
    }
  }
}

Gemini CLI

Run this once. It writes .gemini/settings.json in the current project; pass --scope user for ~/.gemini/settings.json.
Gemini CLI configuration
gemini mcp add --transport http yutai-mcp https://mcp.yutai.com/mcp

Claude Desktop

Merge this into claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\), then restart Claude Desktop.
Claude Desktop configuration
{
  "mcpServers": {
    "yutai-mcp": {
      "url": "https://mcp.yutai.com/mcp"
    }
  }
}

Windsurf

Merge this into ~/.codeium/windsurf/mcp_config.json, then refresh MCP in Cascade. Windsurf remote servers use serverUrl, not url.
Windsurf configuration
{
  "mcpServers": {
    "yutai-mcp": {
      "serverUrl": "https://mcp.yutai.com/mcp"
    }
  }
}

Let your agent find its tools

Find servers like Yutai MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.

Do you run Yutai MCP?

Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.

Claim this listing