io.github.fyllepo/qubic-mcp

平台与服务

by fyllepo

面向 Qubic 的 MCP server,支持余额、价格、转账、钱包管理等常用能力。

什么是 io.github.fyllepo/qubic-mcp

面向 Qubic 的 MCP server,支持余额、价格、转账、钱包管理等常用能力。

README

<p align="center"> <img src="assets/qubic-logo.png" alt="Qubic" width="300"> </p>

qubic-mcp

MCP server for the Qubic cryptocurrency — enabling AI assistants to interact with the Qubic network.

npm version CI License: MIT PRs Welcome

Overview

qubic-mcp is an open-source Model Context Protocol (MCP) server that gives AI assistants — Claude, ChatGPT, Copilot, Cursor, and others — native access to the Qubic blockchain.

Query balances, inspect transactions, monitor the network, trade on QX, switch between networks, and interact with smart contracts — all through natural language.

What's New in v0.4

  • Smart Contract Profiles — Register custom SC interface definitions, then query them by name with automatic binary encoding/decoding
  • Network Management — Save and switch between mainnet, testnet, or your own local/lite node at runtime
  • Epoch Computors — Query the 676 computor identities for any epoch
  • MCP Prompts — Predefined workflows for portfolio analysis, market overview, and research
  • MCP Resources — Qubic reference documentation (network, tokenomics, smart contracts, address format)
  • HTTP Transport — Run as a standalone HTTP server for remote deployment

Features

Blockchain Query Tools

  • Balance & Transfers — Query any Qubic address balance and transfer history
  • Transactions — Look up transaction details by ID
  • Network Status — Current tick, epoch, supply, burned QUs, active addresses, market cap
  • Mining Phase — Current MINING/IDLE phase, cycle progress, and XMR marathon status
  • Epoch Computors — List all 676 computor identities for a given epoch
  • Rich List — Top holders ranked by balance

Market & Analytics

  • Token Price — Real-time QUBIC price compared across 3 sources (CoinGecko, Qubic API, CryptoCompare)
  • QU/USD Converter — Convert between QU and USD at live rates
  • Token Registry — List all registered Qubic tokens with issuer and website
  • QX DEX Orderbook — Live ask/bid orders for any token on the QX decentralized exchange

Smart Contract Tools

  • Register Contract — Save a custom SC interface definition (function names, input/output field schemas)
  • Query Contract — Query a registered SC function by name with automatic binary encoding/decoding
  • Raw SC Query — Low-level smart contract query with base64 input/output for advanced use
  • List/Remove Contracts — Manage your registered contract definitions

Local Management

  • Wallet Management — Save wallet addresses locally for quick access
  • Network Switching — Save and switch between mainnet, testnet, or custom RPC endpoints at runtime
  • Address Validation — Check format and on-chain activity
  • Explorer Links — Direct links to the official Qubic block explorer

AI Context

  • MCP Resources — Qubic reference docs (network, tokenomics, smart contracts, address format) available as context
  • MCP Prompts — Predefined workflows: portfolio analysis, market overview, and Qubic research

Quick Start

Works with any MCP-compatible AI client — Claude, ChatGPT, Copilot, Cursor, Windsurf, Gemini, JetBrains, and more.

Add this to your client's MCP config:

json
{
  "mcpServers": {
    "qubic": {
      "command": "npx",
      "args": ["mcp-server-qubic"]
    }
  }
}
<details> <summary>Where to find the config file</summary>
ClientConfig location
Claude Desktop (macOS)~/Library/Application Support/Claude/claude_desktop_config.json
Claude Desktop (Windows)%APPDATA%\Claude\claude_desktop_config.json
Claude Desktop (Linux)~/.config/Claude/claude_desktop_config.json
Claude CodeRun claude mcp add qubic -- npx mcp-server-qubic in your terminal
VS Code / Cursor / Windsurf.vscode/mcp.json or your editor's MCP settings
JetBrains IDEsSettings > Tools > AI Assistant > MCP Servers
ChatGPT DesktopSettings > MCP Servers > Add

For other clients, check your app's MCP documentation — the config above is universal.

</details>

Then just ask in plain English:

Wallet Management

code
"Save my wallet UXITJAGNXUE...RAPDBE as my-main"
"List my wallets"
"Remove my old-wallet"

Balances & Transfers

code
"What's the balance of my-main?"
"Show transfer history for my-main over the last 1000 ticks"

Price & Market

code
"What's the current QUBIC price?"
"How much is 1 billion QU worth in USD?"
"Convert $100 to QU"

Network & Mining

code
"What's the current tick?"
"Show me the network status"
"What mining phase are we in?"
"Who are the top Qubic holders?"

QX DEX & Tokens

code
"What tokens are available on Qubic?"
"Show the QX orderbook for CFB"
"Show bid orders for QMINE on QX"

Network Switching

code
"Add my local network at http://192.168.1.50:21841"
"Switch to my local network"
"Switch back to mainnet"
"List my networks"

Smart Contract Queries

code
"Register my counter contract at index 10 with these functions: [...]"
"Query counter getStats"
"Query counter getValue with key 1"
"List my registered contracts"

Smart Contract Development Workflow

One of the most powerful features of qubic-mcp is its smart contract profile system. If you're developing a Qubic smart contract on a local lite network, you can use the MCP to test your contract's RPC interface directly through your AI assistant.

Why This Matters

Qubic smart contracts communicate via binary-encoded structs over the /v1/querySmartContract RPC endpoint. Without tooling, this means manually encoding fields into base64, making HTTP calls, and decoding binary responses — error-prone and tedious.

With qubic-mcp, you register your contract's interface once, and then query it by name with human-readable input and output. Your AI assistant handles all the binary encoding/decoding automatically.

Step-by-Step

1. Point the MCP at your test network:

code
"Add my test network at http://192.168.1.50:21841 called my-testnet"
"Switch to my-testnet"

Your MCP server now talks to your local lite node instead of mainnet. This persists across sessions in ~/.qubic-mcp/networks.json.

2. Register your contract's interface:

Tell the assistant your contract's index and function definitions. Here's a simple counter contract at index 10 as an example:

code
Register my counter contract at index 10 with these functions:

- getStats (inputType 1): no input, output is totalKeys (uint32) and totalIncrements (uint64)
- getValue (inputType 2): input is key (uint32), output is value (uint64) and lastUpdatedTick (uint32)

The assistant will call register_contract with the proper field schema JSON. The definition is saved to ~/.qubic-mcp/contracts.json and persists across sessions.

Supported field types: uint8, uint16, uint32, uint64, int8, int16, int32, int64, identity (60-char Qubic address / 32-byte pubkey), padding (skipped bytes).

Fields support count for arrays and enum for value-to-label mapping.

3. Query your contract by name:

code
"Query counter getStats"
"Query counter getValue with key 1"

The MCP encodes your input into binary, calls the RPC endpoint, and decodes the response into named fields:

code
counter.getValue
================

  value: 42
  lastUpdatedTick: 22,345,678

4. Switch back to mainnet when done:

code
"Switch to mainnet"

Installation

From npm (recommended)

bash
npm install -g mcp-server-qubic

From source

bash
git clone https://github.com/fyllepo/qubic-mcp.git
cd qubic-mcp
npm install
npm run build

Configuration

Network Management

The easiest way to configure which Qubic network you talk to is through the built-in tools — no env vars needed:

  1. Add a custom network: add_network — save your local node's IP with a friendly name
  2. Switch networks: switch_network — toggle between mainnet, testnet, or any saved network
  3. List networks: list_networks — see all available networks and which is active

Networks are saved to ~/.qubic-mcp/networks.json and persist across sessions. Built-in networks (mainnet, testnet) are always available.

Environment Variables

For advanced use or CI environments, you can also configure via env vars. See .env.example.

VariableDefaultDescription
QUBIC_RPC_URL(from active network)Override the RPC endpoint (takes priority over saved networks)
QUBIC_API_URL(from active network)Override the Query API endpoint
QUBIC_NETWORK_LABEL(auto)Friendly label shown when using QUBIC_RPC_URL override
MCP_HTTP_PORT(not set)Set a port to run as an HTTP server instead of stdio

HTTP Transport

By default the server uses stdio, which is what most MCP clients expect. To run it as a standalone HTTP endpoint instead, set MCP_HTTP_PORT:

bash
MCP_HTTP_PORT=3000 node dist/index.js

The server exposes a single /mcp endpoint that supports the MCP Streamable HTTP transport:

  • POST /mcp — send JSON-RPC requests (initialize creates a session)
  • GET /mcp — open an SSE stream for server notifications (requires mcp-session-id header)
  • DELETE /mcp — terminate a session

All Tools

Blockchain

ToolDescription
get_balanceGet balance and transfer activity for an address or saved wallet
get_tick_infoGet current tick number, epoch, and tick duration
get_network_statusNetwork stats: supply, burned QUs, active addresses, tick quality, market cap
get_transactionLook up a transaction by its 60-character ID
get_transfer_historyPaginated transfer history for an address within a tick range
get_mining_phaseCurrent MINING/IDLE phase, cycle progress, and XMR marathon status
get_epoch_computorsList all 676 computor identities for a given epoch
get_rich_listTop Qubic addresses ranked by balance with pagination

Market & Tokens

ToolDescription
get_token_priceQUBIC price compared across CoinGecko, Qubic API, and CryptoCompare
convert_qu_usdConvert between QU and USD using live price
get_token_listList all registered Qubic tokens with name, issuer address, and website
get_qx_orderbookQX DEX orderbook — ask and/or bid orders for any token, with pagination

Smart Contract Development & Testing

ToolDescription
register_contractRegister a custom SC definition with typed function schemas
query_contractQuery a registered SC function by name (auto binary encode/decode)
query_smart_contractLow-level SC query with raw base64 input/output
list_contractsList all registered contract definitions
remove_contractRemove a registered contract definition

Wallets

ToolDescription
save_walletSave a Qubic address with a friendly name for quick access
list_walletsList all saved wallets
remove_walletRemove a saved wallet

Network Management

ToolDescription
add_networkSave a custom Qubic network (e.g., local lite node) for quick switching
switch_networkSwitch the active network (mainnet, testnet, or any saved custom network)
list_networksList all available networks and show which is currently active
remove_networkRemove a saved custom network

Utility

ToolDescription
validate_addressValidate address format and check on-chain activity
get_explorer_linksGet links to Qubic block explorers for an address or transaction

MCP Resources

Resource URIDescription
qubic://docs/networkQubic network: epochs, ticks, quorum consensus, computor ranking
qubic://docs/tokenomicsQubic tokenomics: supply cap, emission schedule, burning
qubic://docs/smart-contractsQubic smart contracts: governance, execution, IPO process
qubic://docs/address-formatQubic identity system: seed to private key to public key to address
qubic://docs/oraclesQubic Oracle Machines: bridging smart contracts with real-world data via QPI
qubic://docs/sc-architectureQubic smart contract architecture: state, procedures, functions, logging
qubic://docs/sc-lifecycleSmart contract lifecycle: from research through proposal, IPO, deployment, and maintenance
qubic://docs/ticks-concurrencyQubic ticks and concurrency: tick lifecycle, parallel execution, transaction ordering
qubic://docs/interact-scInteracting with Qubic smart contracts: calling functions, invoking procedures
qubic://docs/execution-feesQubic contract execution fees: fee reserves, invocation costs, burn mechanics
qubic://docs/rpcQubic RPC API: endpoints, smart contract queries, transaction broadcasting
qubic://docs/qpiQubic Protocol Interface (QPI): the API available to smart contracts

MCP Prompts

PromptDescription
qubic-portfolioAnalyze your portfolio: wallet balances, token holdings, USD values
qubic-marketMarket overview: price, network stats, mining phase, rich list
qubic-researchResearch a Qubic topic using the built-in reference documentation

Local Data

qubic-mcp stores local data in ~/.qubic-mcp/:

FilePurpose
wallets.jsonSaved wallet addresses (public addresses only, never private keys)
networks.jsonSaved network profiles and active network selection
contracts.jsonRegistered smart contract interface definitions

Security

This project takes security seriously, especially given it interacts with a financial network.

  • No private keys — This server is read-only. It never asks for, stores, or transmits private keys or seeds.
  • Input validation — All inputs are validated with Zod schemas before processing.
  • No telemetry — No analytics, tracking, or data collection of any kind.
  • Auditable — Fully open source. Read every line.

See SECURITY.md for our vulnerability disclosure policy.

Contributing

Contributions are welcome and encouraged! Whether you're fixing a bug, adding a new tool, improving docs, or suggesting an idea — we'd love your help.

See CONTRIBUTING.md for guidelines.

Roadmap

See ROADMAP.md for our planned features and future direction.

License

MIT — see LICENSE.

Disclaimer

This software is provided "as is" without warranty of any kind. The authors and contributors are not responsible for any loss of funds, data, or other damages resulting from the use of this software.

This tool interacts with the Qubic blockchain where transactions are irreversible. Users are solely responsible for verifying all information and understanding the risks. This software does not provide financial advice.

常见问题

io.github.fyllepo/qubic-mcp 是什么?

面向 Qubic 的 MCP server,支持余额、价格、转账、钱包管理等常用能力。

相关 Skills

MCP构建

by anthropics

Universal
热门

聚焦高质量 MCP Server 开发,覆盖协议研究、工具设计、错误处理与传输选型,适合用 FastMCP 或 MCP SDK 对接外部 API、封装服务能力。

想让 LLM 稳定调用外部 API,就用 MCP构建:从 Python 到 Node 都有成熟指引,帮你更快做出高质量 MCP 服务器。

平台与服务
未扫描114.1k

Slack动图

by anthropics

Universal
热门

面向Slack的动图制作Skill,内置emoji/消息GIF的尺寸、帧率和色彩约束、校验与优化流程,适合把创意或上传图片快速做成可直接发送的Slack动画。

帮你快速做出适配 Slack 的动图,内置约束规则和校验工具,少踩上传与播放坑,做表情包和演示都更省心。

平台与服务
未扫描114.1k

MCP服务构建器

by alirezarezvani

Universal
热门

从 OpenAPI 一键生成 Python/TypeScript MCP server 脚手架,并校验 tool schema、命名规范与版本兼容性,适合把现有 REST API 快速发布成可生产演进的 MCP 服务。

帮你快速搭建 MCP 服务与后端 API,脚手架完善、扩展顺手,尤其适合想高效验证服务能力的开发者。

平台与服务
未扫描10.2k

相关 MCP Server

Slack 消息

编辑精选

by Anthropic

热门

Slack 是让 AI 助手直接读写你的 Slack 频道和消息的 MCP 服务器。

这个服务器解决了团队协作中需要 AI 实时获取 Slack 信息的痛点,特别适合开发团队让 Claude 帮忙汇总频道讨论或发送通知。不过,它目前只是参考实现,文档有限,不建议在生产环境直接使用——更适合开发者学习 MCP 如何集成第三方服务。

平台与服务
83.4k

by netdata

热门

io.github.netdata/mcp-server 是让 AI 助手实时监控服务器指标和日志的 MCP 服务器。

这个工具解决了运维人员需要手动检查系统状态的痛点,最适合 DevOps 团队让 Claude 自动分析性能数据。不过,它依赖 NetData 的现有部署,如果你没用过这个监控平台,得先花时间配置。

平台与服务
78.4k

by d4vinci

热门

Scrapling MCP Server 是专为现代网页设计的智能爬虫工具,支持绕过 Cloudflare 等反爬机制。

这个工具解决了爬取动态网页和反爬网站时的头疼问题,特别适合需要批量采集电商价格或新闻数据的开发者。不过,它依赖外部浏览器引擎,资源消耗较大,不适合轻量级任务。

平台与服务
35.4k

评论