Buda Mcp

io.github.gtorreal由 GitHub 账号 gtorreal 发布v2.0.0更新于 Oct 24, 2026

Buda.com market data: prices, spreads, OHLCV, order books, trades, and volume for CLP, COP, PEN.

已验证STDIO仅桌面金融数据与分析

概览

AI 生成的概览

面向 Buda.com 加密货币交易所行情数据的只读 MCP 服务器,让助手获取实时价格、订单簿、成交、技术指标并模拟下单。

可以做什么
查询市场与交易对、行情快照、带流动性评级的市场摘要,并按基础币种跨计价币种比较交易对。读取订单簿、近期成交、24 小时与 7 日成交量以及买卖价差。获取 OHLCV 价格历史,计算技术指标(RSI、MACD、布林带、移动平均)和综合情绪评分。识别 CLP、COP、PEN 市场之间的跨国价差。模拟买卖订单与报价,并按凯利思路计算仓位规模。按法币列出可用于存取款的银行。
适用场景
适合让助手回答有关智利、哥伦比亚和秘鲁 Buda.com 市场的问题,或分析价格、价差、成交量、技术信号和假设订单成本,而无需真实下单。
运行要求
以 Node.js 本地进程运行,通常通过 npx 或全局 npm 安装;stdio 服务器无需账户、API 密钥或环境变量。需要能访问 Buda.com 的公开 API 端点。
安装前请注意
所有工具均为只读,不会真正下单,模拟结果会明确标注。行情数据、指标、情绪评分和仓位计算仅供参考,不构成投资建议。服务器会向 Buda.com 公开 API 发送请求,因此查询内容和市场标识会传给该第三方。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Buda Mcp,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

buda-mcp

[npm version] [License: MIT] [Node.js >=18]

MCP server for Buda.com — the leading cryptocurrency exchange in Chile, Colombia, and Peru. Gives any MCP-compatible AI assistant live access to market data, order books, trade history, spreads, technical indicators, and price simulation — no account or API key required.


Quick Start

bash
npx @guiie/buda-mcp

Or install permanently:

bash
npm install -g @guiie/buda-mcpbuda-mcp

Install in your MCP client

Claude Code

bash
claude mcp add buda-mcp -- npx -y @guiie/buda-mcp

Claude Desktop (claude_desktop_config.json)

json
{  "mcpServers": {    "buda-mcp": {      "command": "npx",      "args": ["-y", "@guiie/buda-mcp"]    }  }}

Cursor (~/.cursor/mcp.json)

json
{  "mcpServers": {    "buda-mcp": {      "command": "npx",      "args": ["-y", "@guiie/buda-mcp"]    }  }}

Tools

All tools are public — no API key or account required.

get_market_summary ⭐ Start here

One-call summary: last price, bid/ask, spread %, 24h volume, price change, and liquidity_rating (high / medium / low). Best first tool when a user asks about any specific market.

ParameterTypeRequiredDescription
market_idstringYesMarket ID (e.g. BTC-CLP).

get_markets

List all trading pairs on Buda.com, or get details for a specific market (fees, minimum order size, discount tiers).

ParameterTypeRequiredDescription
market_idstringNoMarket ID (e.g. BTC-CLP). Omit to list all markets.

get_ticker

Current snapshot: last price, best bid/ask, 24h volume, and price change over 24h and 7d.

ParameterTypeRequiredDescription
market_idstringYesMarket ID (e.g. BTC-CLP, ETH-COP).

get_orderbook

Current order book: sorted bids and asks as {price, amount} objects.

ParameterTypeRequiredDescription
market_idstringYesMarket ID.
limitnumberNoMax price levels per side (default: all).

get_trades

Recent trade history as typed objects: {timestamp_ms, amount, price, direction}.

ParameterTypeRequiredDescription
market_idstringYesMarket ID.
limitnumberNoNumber of trades (default 50, max 100).
timestampnumberNoUnix seconds — returns trades older than this (pagination).

get_market_volume

24h and 7-day transacted volume by side (bid = buys, ask = sells).

ParameterTypeRequiredDescription
market_idstringYesMarket ID.

get_spread

Bid/ask spread: absolute value and percentage of the ask price.

ParameterTypeRequiredDescription
market_idstringYesMarket ID.

compare_markets

Side-by-side ticker data for all pairs of a given base currency across all quote currencies.

ParameterTypeRequiredDescription
base_currencystringYesBase currency (e.g. BTC, ETH).

get_price_history

OHLCV candles aggregated from raw trade history (Buda has no native candlestick endpoint). Supports 5m, 15m, 30m, 1h, 4h, 1d periods.

ParameterTypeRequiredDescription
market_idstringYesMarket ID.
periodstringNo5m / 15m / 30m / 1h / 4h / 1d (default 1h).
limitnumberNoRaw trades to fetch before aggregation (default 100, max 1000).

get_arbitrage_opportunities

Detects cross-country price discrepancies for an asset across Buda's CLP, COP, and PEN markets, normalized to USDC.

ParameterTypeRequiredDescription
base_currencystringYese.g. BTC.
threshold_pctnumberNoMinimum discrepancy to report (default 0.5).

simulate_order

Simulates a buy or sell order using live ticker data — no order is ever placed. Returns estimated_fill_price, fee_amount, total_cost, slippage_vs_mid_pct. All responses include simulation: true.

ParameterTypeRequiredDescription
market_idstringYesMarket ID.
sidebuy | sellYesOrder side.
amountnumberYesOrder size in base currency.
pricenumberNoOmit for market order simulation.

calculate_position_size

Kelly-style position sizing from capital, risk %, entry, and stop-loss. Fully client-side — no API call.

ParameterTypeRequiredDescription
market_idstringYesMarket ID (for context).
capitalnumberYesTotal capital to size from.
risk_pctnumberYes% of capital to risk (0.1–10).
entry_pricenumberYesEntry price.
stop_loss_pricenumberYesStop-loss price.

get_market_sentiment

Composite sentiment score (−100 to +100) from three components: 24h price variation (40%), volume vs 7-day average (35%), spread vs market-type baseline (25%). Returns score, label, component_breakdown, and a disclaimer.

ParameterTypeRequiredDescription
market_idstringYesMarket ID.

get_technical_indicators

RSI (14), MACD (12/26/9), Bollinger Bands (20, 2σ), SMA 20, SMA 50 — computed server-side from Buda trade history (no external libraries). Returns signal interpretations and a structured warning if fewer than 20 candles are available. Includes disclaimer.

ParameterTypeRequiredDescription
market_idstringYesMarket ID.
periodstringNo1h / 4h / 1d (default 1h).
limitnumberNoRaw trades to fetch (500–1000).

get_real_quotation

Returns a real-time quotation for a given order amount and direction, showing exact fill price, fee, and balance changes without placing an order.

ParameterTypeRequiredDescription
market_idstringYesMarket ID.
typeBid | AskYesOrder side.
amountnumberYesOrder size in base currency.
limit_pricenumberNoLimit price for limit quotations.

get_available_banks

Lists available banks for fiat deposits/withdrawals in a given currency's country.

ParameterTypeRequiredDescription
currencystringYesFiat currency code (e.g. CLP, COP, PEN).

MCP Resources

In addition to tools, the server exposes MCP Resources that clients can read directly:

URIDescription
buda://marketsJSON list of all Buda.com markets
buda://ticker/{market}JSON ticker for a specific market (e.g. buda://ticker/BTC-CLP)
buda://summary/{market}Full market summary with liquidity rating (e.g. buda://summary/BTC-CLP)

Markets covered

QuoteCountrySample pairs
CLPChileBTC-CLP, ETH-CLP, SOL-CLP
COPColombiaBTC-COP, ETH-COP, SOL-COP
PENPeruBTC-PEN, ETH-PEN
USDCUSD-peggedBTC-USDC, USDT-USDC
BTCCrossETH-BTC, LTC-BTC, BCH-BTC

Build from source

bash
git clone https://github.com/gtorreal/buda-mcp.gitcd buda-mcpnpm installnpm run buildnode dist/index.js        # stdio (for MCP clients)node dist/http.js         # HTTP on port 3000 (for Railway / hosted)

Run tests:

bash
npm run test:unit        # 100 unit tests, no network requirednpm run test:integration # live API tests (skips if unreachable)npm test                 # both

HTTP / Railway deployment

The dist/http.js entrypoint runs an Express server with:

  • POST /mcp — Streamable HTTP MCP transport
  • GET /mcp — SSE streaming transport
  • GET /health — health check ({ status })
  • GET /.well-known/mcp/server-card.json — Smithery-compatible static tool manifest

Environment variables

VariableRequiredDescription
PORTNoHTTP listen port (default: 3000)
MCP_RATE_LIMITNoMax requests per IP per minute on /mcp (default: 120)
TRUST_PROXY_HOPSNoNumber of reverse-proxy hops to trust for X-Forwarded-For (default: 1).

Security

The server exposes only public Buda.com API endpoints. No credentials are accepted or stored. Input validation is applied to all tool parameters to prevent prompt injection. Error messages are sanitized — internal details (paths, upstream errors) are logged to stderr only and never returned to callers.

Reporting vulnerabilities

Please report security issues privately via GitHub Security Advisories — not as public issues. See SECURITY.md for the full disclosure policy.


Project structure

src/  client.ts                   BudaClient (HTTP + 429 retry)  cache.ts                    In-memory TTL cache with in-flight deduplication  types.ts                    TypeScript types for Buda API responses  validation.ts               validateMarketId(), validateCurrency()  utils.ts                    flattenAmount(), aggregateTradesToCandles(), getLiquidityRating()  version.ts                  Single source of truth for version string  index.ts                    stdio MCP server entrypoint  http.ts                     HTTP/SSE MCP server entrypoint  tools/    markets.ts                get_markets    ticker.ts                 get_ticker    orderbook.ts              get_orderbook    trades.ts                 get_trades    volume.ts                 get_market_volume    spread.ts                 get_spread    compare_markets.ts        compare_markets    price_history.ts          get_price_history    arbitrage.ts              get_arbitrage_opportunities    market_summary.ts         get_market_summary    simulate_order.ts         simulate_order    calculate_position_size.ts calculate_position_size    market_sentiment.ts       get_market_sentiment    technical_indicators.ts   get_technical_indicators    banks.ts                  get_available_banks    quotation.ts              get_real_quotationmarketplace/  cursor-mcp.json             Cursor MCP config example  claude-listing.md           Claude registry listing  openapi.yaml                OpenAPI spec (GPT Actions / HTTP wrapper)  gemini-tools.json           Gemini function declarations

Documentation

Agent context: AGENTS.md | Operational notes: docs/PROJECT_MEMORY.md | Changelog: CHANGELOG.md | Security: SECURITY.md


License

MIT — Buda.com API docs

来源:README.md,提交 6ccea88

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v2.0.0最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分