klever-io/mcp-klever-vm

klever-io/mcp-klever-vm

от klever-io
MCP сервер для разработчиков смарт-контрактов на блокчейне Klever. Предоставляет контекстные подсказки, шаблоны и примеры кода. Помогает быстрее создавать и отлаживать контракты, автоматически извлекая паттерны и проверяя код на соответствие стандартам.

Klever MCP Server

A Model Context Protocol (MCP) server tailored for Klever blockchain smart contract development. This server maintains and serves contextual knowledge including code patterns, best practices, and runtime behavior for developers working with the Klever VM SDK.

Features

  • 🚀 Triple Mode Operation: Run as HTTP API server, MCP stdio server, or public hosted MCP server
  • 💾 Flexible Storage: In-memory or Redis backend support
  • 🔍 Smart Context Retrieval: Query by type, tags, or contract type
  • 📝 Automatic Pattern Extraction: Parse Klever contracts to extract examples and patterns
  • 🎯 Relevance Ranking: Intelligent scoring and ranking of context
  • 🔄 Live Updates: Add and update context in real-time
  • 🛡️ Type Safety: Full TypeScript with Zod validation
  • 📚 Comprehensive Knowledge Base: Pre-loaded with Klever VM patterns, best practices, and examples
  • 🔧 Contract Validation: Automatic detection of common issues and anti-patterns
  • 🚀 Deployment Scripts: Ready-to-use scripts for contract deployment, upgrade, and querying
Инструменты были проиндексированы:
add_context

Добавляет новую запись знаний в хранилище контекста Klever VM. Используется для сохранения примеров кода, лучших практик, советов по безопасности или документации, которые позже можно получить через query_context или search_documentation. Возвращает сгенерированный ID новой записи.

Параметры
  • contentstringобязательный

    The main content body — typically Rust source code, a CLI command, or a detailed explanation. For code, include the full working snippet.

  • metadataobjectобязательный

    Entry metadata including title, tags, and categorization. At minimum, provide a title.

  • typeenumобязательный

    The category of this knowledge entry. Choose the most specific type: "code_example" for Rust snippets, "best_practice" for recommended patterns, "security_tip" for vulnerability guidance, "error_pattern" for known error solutions.

add_helper_scriptsидемпотентный

Добавляет скрипты автоматизации сборки, развёртывания, обновления, запросов, тестирования и взаимодействия в существующий проект смарт-контрактов Klever. Создаёт директорию scripts/ с bash-скриптами и обновляет .gitignore. Запускайте это из корневой директории проекта (где находится Cargo.toml).

Параметры
  • contractNamestring

    The contract name to embed in scripts (e.g. "my-token"). If omitted, auto-detected from the name field in Cargo.toml.

analyze_contractтолько чтениеидемпотентный

Анализирует исходный код смарт-контракта на Klever на Rust на предмет типичных проблем. Проверяет отсутствие импортов, макроса #[klever_sc::contract], аннотаций конечных точек, обработчиков payable без использования call_value, мапперов хранилища без #[storage_mapper] и определений событий. Возвращает результаты с уровнем серьезности (error/warning/info) и ссылками на соответствующие статьи базы знаний.

Параметры
  • contractNamestring

    Human-readable name for the contract (used in output labeling). Defaults to "contract" if omitted.

  • sourceCodestringобязательный

    The full Rust source code of the Klever smart contract to analyze. Must be valid Rust code using klever_sc imports.

check_sdk_statusтолько чтениеидемпотентный

Проверяет, установлен ли Klever SDK, и сообщает статус каждого компонента. Возвращает JSON с состоянием установки и версиями для: ksc (компилятор смарт-контрактов), koperator (CLI для блокчейна), VM library (libvmexeccapi) и файла ключа кошелька. Запускайте это перед init_klever_project или install_klever_sdk для проверки предварительных требований.

Параметры

Без параметров.

deploy_scвнешний мир

Создаёт неподписанную транзакцию развёртывания смарт-контракта для блокчейна Klever. Принимает wasmPath (предпочтительно: читает файл на стороне сервера) или wasmHex. Возвращает неподписанную транзакцию для подписания на стороне клиента. MCP сервер НИКОГДА не обрабатывает приватные ключи.

Параметры
  • initArgsstring[]

    Optional base64-encoded init arguments for the contract constructor.

  • networkenum

    Network to use. Options: "mainnet", "testnet", "devnet", "local". Defaults to server default (mainnet).

  • senderstringобязательный

    Deployer address (klv1... bech32 format).

  • wasmHexstring

    Smart contract WASM bytecode as a hex-encoded string. Use wasmPath instead for large contracts.

  • wasmPathstring

    Absolute path to the compiled WASM file (preferred over wasmHex to avoid loading large binaries into AI context).

enhance_with_contextтолько чтениеидемпотентный

Дополняет запрос на естественном языке соответствующим контекстом из базы знаний Klever VM. Извлекает ключевые слова, специфичные для Klever, находит соответствующие записи и возвращает исходный запрос, объединённый с соответствующими примерами кода и документацией в Markdown. Используйте это для обогащения пользовательского запроса перед ответом на вопросы по разработке Klever.

Параметры
  • autoIncludeboolean

    When true (default), automatically appends the most relevant knowledge base entries to the response. Set to false to only return metadata without injecting context.

  • querystringобязательный

    The user's natural-language question or prompt to enhance (e.g. "How do I handle KLV payments in my contract?").

find_similarтолько чтениеидемпотентный

Находит записи базы знаний, похожие на заданную запись, сравнивая теги и содержимое. Возвращает связанные контексты, отсортированные по степени сходства. Помогает находить связанные шаблоны, примеры или документацию после нахождения одной релевантной записи.

Параметры
  • idstringобязательный

    The context ID to find similar entries for. Obtain from query_context or get_context results.

  • limitinteger

    Maximum number of similar entries to return. Typical range is 1-20; higher values may be slower. Default: 5.

freeze_klvвнешний мир

Создает неподписанную транзакцию Freeze KLV на блокчейне Klever. Заморозка KLV предоставляет энергию/пропускную способность для операций в сети и даёт право на стейкинг-вознаграждения. Возвращает неподписанную транзакцию для подписания на стороне клиента.

Параметры
  • amountintegerобязательный

    Amount of KLV to freeze in the smallest unit (1 KLV = 1,000,000 units).

  • networkenum

    Network to use. Options: "mainnet", "testnet", "devnet", "local". Defaults to server default (mainnet).

  • senderstringобязательный

    Address to freeze from (klv1... bech32 format).

get_accountтолько чтениеидемпотентныйвнешний мир

Получает полные данные об аккаунте для адреса блокчейна Klever, включая nonce, баланс, замороженный баланс, разрешённый остаток и разрешения. Используйте это, когда вам нужно полное состояние аккаунта, а не только баланс.

Параметры
  • addressstringобязательный

    Klever address (klv1... bech32 format).

  • networkenum

    Network to query. Options: "mainnet", "testnet", "devnet", "local". Defaults to server default (mainnet).

get_asset_infoтолько чтениеидемпотентныйвнешний мир

Получает полные свойства и конфигурацию для любого актива в блокчейне Klever (токены KLV, KFI, KDA, коллекции NFT). Возвращает информацию о снабжении, разрешениях (CanMint, CanBurn и т.д.), ролях, точности и метаданных. Примечание: строковые поля, такие как ID, Name, Ticker, в сыром ответе закодированы в base64.

Параметры
  • assetIdstringобязательный

    Asset identifier (e.g. "KLV", "KFI", "USDT-A1B2", "MYNFT-XY78").

  • networkenum

    Network to query. Options: "mainnet", "testnet", "devnet", "local". Defaults to server default (mainnet).

get_balanceтолько чтениеидемпотентныйвнешний мир

Получает баланс токена KLV или KDA для адреса блокчейна Klever. Возвращает баланс в наименьшей единице (для KLV: 1 KLV = 1 000 000 единиц с 6 десятичными знаками). Опционально укажите идентификатор актива, чтобы запросить баланс конкретного токена KDA вместо KLV.

Параметры
  • addressstringобязательный

    Klever address (klv1... bech32 format).

  • assetIdstring

    Optional KDA token ID (e.g. "USDT-A1B2", "LPKLVKFI-3I0N"). Omit for KLV balance.

  • networkenum

    Network to query. Options: "mainnet", "testnet", "devnet", "local". Defaults to server default (mainnet).

get_blockтолько чтениеидемпотентныйвнешний мир

Получает информацию о блоке из блокчейна Klever по nonce (номеру блока). Если nonce не указан, возвращает последний блок. Возвращает хеш, временную метку, proposer, количество транзакций и другие метаданные блока.

Параметры
  • networkenum

    Network to query. Options: "mainnet", "testnet", "devnet", "local". Defaults to server default (mainnet).

  • nonceinteger

    Block number (nonce). Omit to get the latest block.

get_contextтолько чтениеидемпотентный

Получает отдельную запись базы знаний по её уникальному ID. Возвращает полную запись, включая содержимое, метаданные, теги и связанные ID контекста. Используйте это после query_context или find_similar, чтобы получить полные сведения о конкретной записи.

Параметры
  • idstringобязательный

    The unique context ID (UUID format). Obtain IDs from query_context or find_similar results.

get_knowledge_statsтолько чтениеидемпотентный

Получает сводную статистику базы знаний Klever VM. Возвращает общее количество записей, разбивку по типам контекста (code_example, best_practice, security_tip и т.д.) и пример заголовка записи для каждого типа. Полезно для понимания того, какие знания доступны перед запросом.

Параметры

Без параметров.

get_transactionтолько чтениеидемпотентныйвнешний мир

Получает детали транзакции по хэшу из блокчейна Klever. Возвращает отправителя, получателя, статус, информацию о блоке, контракты и квитанции. Использует прокси API для индексированных данных.

Параметры
  • hashstringобязательный

    Transaction hash (hex string).

  • networkenum

    Network to query. Options: "mainnet", "testnet", "devnet", "local". Defaults to server default (mainnet).

init_klever_project

Создаёт каркас нового проекта смарт-контракта Klever с использованием SDK. Создаёт структуру Rust-проекта через ksc new и генерирует скрипты автоматизации (build, deploy, upgrade, query, test, interact). Требует установки Klever SDK в ~/klever-sdk/. Сначала запустите check_sdk_status для проверки.

Параметры
  • namestringобязательный

    The contract project name in kebab-case (e.g. "my-token", "nft-marketplace"). Used as the Cargo package name and directory name.

  • noMoveboolean

    When true, keeps the project in the SDK output directory instead of moving it to the current working directory. Default: false.

  • templateenum

    Project template to scaffold from. "empty" creates a blank contract with just an init function. "adder" creates a simple counter example. Default: "empty".

install_klever_sdkидемпотентныйвнешний мир

Загружает и устанавливает инструменты Klever SDK в ~/klever-sdk/. Получает последние версии с Klever CDN, устанавливает бинарные файлы и загружает необходимые зависимости библиотек виртуальной машины. Поддерживает macOS (arm64/amd64) и Linux. Сначала выполните check_sdk_status, чтобы увидеть, что уже установлено.

Параметры
  • toolenum

    Which SDK component to install. "ksc" = smart contract compiler only, "koperator" = blockchain operator CLI + VM library, "all" = both ksc and koperator. Default: "all".

invoke_scвнешний мир

Строит неподписанную транзакцию вызова смарт-контракта в блокчейне Klever. Вызывает конечную точку изменения состояния на развёрнутом контракте. Возвращает неподписанную транзакцию для подписания на стороне клиента. Для вызовов только для чтения используйте query_sc вместо этого.

Параметры
  • argsstring[]

    Optional base64-encoded arguments.

  • callValueobject

    Optional token amounts to send with the call, as a map of token ID to amount (e.g. {"KLV": 1000000}). Required for payable endpoints.

  • funcNamestringобязательный

    Endpoint function name to invoke.

  • networkenum

    Network to use. Options: "mainnet", "testnet", "devnet", "local". Defaults to server default (mainnet).

  • scAddressstringобязательный

    Smart contract address (klv1... bech32 format).

  • senderstringобязательный

    Caller address (klv1... bech32 format).

list_validatorsтолько чтениеидемпотентныйвнешний мир

Перечисляет активных валидаторов в сети Klever blockchain. Возвращает адреса валидаторов, имена, ставки комиссии, информацию о делегировании и суммы стейкинга.

Параметры
  • networkenum

    Network to query. Options: "mainnet", "testnet", "devnet", "local". Defaults to server default (mainnet).

query_contextтолько чтениеидемпотентный

Ищет в базе знаний Klever VM контекст разработки смарт-контрактов. Возвращает структурированный JSON с подходящими записями, оценками и пагинацией. Используйте это для точной фильтрации по типу или тегам; используйте search_documentation для читаемых человеком ответов типа «как мне...».

Параметры
  • contractTypestring

    Filter by contract type (e.g. "token", "nft", "defi", "dao"). Only returns entries tagged for this contract category.

  • limitinteger

    Maximum number of results to return (1-100). Default: 10.

  • offsetinteger

    Number of results to skip for pagination. Use with limit to page through results. Default: 0.

  • querystring

    Free-text search query. Use Klever-specific terms for best results (e.g. "storage mapper SingleValueMapper", "payable endpoint KLV", "deploy contract testnet").

  • tagsstring[]

    Filter by tags (e.g. ["storage", "mapper"], ["tokens", "KLV"], ["events"]). Tags are matched with OR logic — any matching tag includes the entry.

  • typesenum[]

    Filter results by context type. Omit to search all types. Common combinations: ["code_example", "documentation"] for learning, ["error_pattern"] for debugging, ["security_tip", "best_practice"] for reviews.

query_scтолько чтениеидемпотентныйвнешний мир

Выполняет запрос только для чтения к смарт-контракту Klever (вызов VM view). Возвращает результат функции контракта в виде данных в кодировке base64. Аргументы должны быть закодированы в base64. Используйте это для чтения состояния контракта без его изменения.

Параметры
  • argsstring[]

    Optional base64-encoded arguments. For addresses, encode the hex-decoded bech32 bytes. For numbers, use big-endian byte encoding.

  • callerstring

    Optional caller address (klv1... bech32 format). Some view functions use the caller to look up address-keyed storage mappers.

  • funcNamestringобязательный

    Function name to call (must be a #[view] function on the contract).

  • networkenum

    Network to query. Options: "mainnet", "testnet", "devnet", "local". Defaults to server default (mainnet).

  • scAddressstringобязательный

    Smart contract address (klv1... bech32 format).

search_documentationтолько чтениеидемпотентный

Ищет в документации и базе знаний Klever VM. Возвращает читаемый человеком Markdown с заголовками, описаниями и фрагментами кода. Оптимизирован для вопросов вида «как мне...?» Используйте этот инструмент вместо query_context, когда нужна форматированная документация для разработчиков.

Параметры
  • categoryenum

    Narrow results to a specific knowledge category. Available: core, storage, events, tokens, modules, tools, scripts, examples, errors, best-practices, documentation.

  • querystringобязательный

    Search query in natural language (e.g. "how to use storage mappers", "deploy contract to testnet", "handle KDA token transfers").

send_transferвнешний мир

Создает неподписанную транзакцию перевода токена KLV или KDA в блокчейне Klever. Возвращает неподписанные данные транзакции и хэш для подписания на стороне клиента. MCP-сервер НИКОГДА не обрабатывает приватные ключи — подписание должно выполняться внешне.

Параметры
  • amountintegerобязательный

    Amount in the smallest unit. For KLV: 1 KLV = 1,000,000 units (6 decimals). Example: to send 10 KLV, use 10000000.

  • assetIdstring

    Optional KDA token ID for non-KLV transfers (e.g. "USDT-A1B2"). Omit for KLV.

  • networkenum

    Network to use. Options: "mainnet", "testnet", "devnet", "local". Defaults to server default (mainnet).

  • receiverstringобязательный

    Receiver address (klv1... bech32 format).

  • senderstringобязательный

    Sender address (klv1... bech32 format).

Похожие MCP-сервера

izzzzzi/izTolkMcp

izzzzzi/izTolkMcp

MCP-сервер для компилятора Tolk — разрабатывай смарт-контракты TON прямо в AI-ассистенте. Компилируй код, проверяй синтаксис и генерируй ссылки для деплоя без выхода из чата. Полезен разработчикам TON, работающим с Tolk.

TypeScript2
Quantum3-Labs/ARBuilder

Quantum3-Labs/ARBuilder

MCP сервер для создания смарт-контрактов и dApps в экосистеме Arbitrum. ARBuilder по текстовому описанию генерирует Stylus контракты на Rust, настраивает кросс-чейн взаимодействие и помогает с развёртыванием Orbit chain. Полезен разработчикам, работающим с Arbitrum.

TypeScript24
mcpdotdirect/starknet-mcp-server

mcpdotdirect/starknet-mcp-server

MCP-сервер для интеграции AI-агентов с блокчейном Starknet. Предоставляет инструменты для запросов данных сети, управления кошельками, работы со смарт-контрактами и StarknetID. Полезен разработчика...

TypeScript7
nearai/near-mcp

nearai/near-mcp

MCP сервер для блокчейна NEAR дает AI-агентам возможность управлять аккаунтами, подписывать транзакции и выполнять смарт-контракты. Полезен разработчикам, интегрирующим NEAR в AI-решения.

TypeScript32
sei-protocol/sei-mcp-server

sei-protocol/sei-mcp-server

MCP сервер для Sei блокчейна, который даёт AI-агентам доступ к данным on-chain, смарт-контрактам и токенам. Включает балансы, транзакции, переводы ERC20 и NFT - всё через единый интерфейс.

TypeScript13
augmnt/augments-mcp-server

augmnt/augments-mcp-server

MCP сервер Augments предоставляет контекстную документацию любых npm-пакетов: типы, примеры, пояснения. BM25-поиск и 8 инструментов (ошибки, миграция, сравнение) помогают разработчикам Claude Code.

TypeScript128
© Каталог MCP, 2026. Все права защищены.
Проект не аффилирован с Anthropic и любыми упомянутыми продуктами.
Все названия и торговые марки принадлежат их владельцам.
Контакты для связи: hi@mcp-katalog.ru

Лука Никитин