Skip to main content
Glama
arrivets

Arkiv MCP Server

by arrivets

Arkiv MCP Server

Сервер Model Context Protocol (MCP), который предоставляет ИИ-агентам и приложениям возможности запроса цепочек баз данных Arkiv.

Быстрый старт

1. Сборка

cd arkiv-mcp
npm install
npm run build

2. Добавление в Claude Code

Запустите это из директории arkiv-mcp:

claude mcp add arkiv -- node $(pwd)/dist/index.js

Или добавьте вручную в ~/.claude/settings.json:

{
  "mcpServers": {
    "arkiv": {
      "command": "node",
      "args": ["/absolute/path/to/arkiv-mcp/dist/index.js"]
    }
  }
}

Для Claude Desktop добавьте тот же блок в ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) или %APPDATA%\Claude\claude_desktop_config.json (Windows).

3. Запрос к тестовой сети Kaolin

После подключения станет доступен инструмент query_entities. Примеры промптов:

  • "Query all entities on Arkiv"

  • "Find all Arkiv entities where type = "post" and score > 10"

  • "Show me entities owned by 0x1234... on the Arkiv testnet"

  • "Get the first 5 entities matching status = "active", then paginate"


Related MCP server: TextQL MCP Server

Функции

  • Запрос сущностей из цепочек баз данных Arkiv с использованием SQL-подобных выражений фильтрации

  • Полный синтаксис arkiv_query: сравнения, логические операторы, glob-сопоставление, синтетические атрибуты

  • Поддержка пагинации с помощью курсора

  • Настраиваемые возвращаемые поля (атрибуты, метаданные, полезная нагрузка)

  • По умолчанию используется тестовая сеть Kaolin

Установка

cd arkiv-mcp
npm install
npm run build

# Or use tsx for development
npm run dev

Использование

Запуск сервера

# Using default Kaolin testnet
npm start

# With custom node URL
npm start -- --node-url https://your-arkiv-node.rpc

# Or with tsx for development
npm run dev -- --node-url https://your-arkiv-node.rpc

Переменные окружения

Переменная

Описание

Обязательно

ARKIV_NODE_URL

RPC URL узла Arkiv

Нет (по умолчанию тестовая сеть Kaolin)

Параметры командной строки

Опция

Описание

По умолчанию

--node-url <url>

RPC URL узла Arkiv

Тестовая сеть Kaolin

--help, -h

Показать справку

-

Инструмент MCP

query_entities

Запрос сущностей из цепочки баз данных Arkiv.

Параметры

Параметр

Тип

Описание

По умолчанию

filter

string

Выражение фильтра (см. синтаксис ниже)

$all

limit

number

Максимальное количество возвращаемых сущностей (макс. 200)

-

cursor

string

Курсор пагинации из предыдущего ответа

-

withAttributes

boolean

Включить атрибуты в результаты

true

withMetadata

boolean

Включить метаданные (владелец, создатель, срок действия) в результаты

true

withPayload

boolean

Включить полезную нагрузку в результаты (в кодировке base64)

true

validAtBlock

number

Запрос состояния на определенном номере блока

-

Синтаксис фильтра

Параметр filter использует язык выражений arkiv_query:

Оператор

Описание

Пример

=

Равенство

status = "active"

!=

Не равно

status != "deleted"

>, >=, <, <=

Числовой диапазон

score > 100

&&

Логическое И

type = "post" && score > 50

||

Логическое ИЛИ

status = "active" || status = "pending"

!

Отрицание

!(status = "deleted")

~

Glob-сопоставление

name ~ "test*"

!~

Отрицание glob

name !~ "draft*"

Синтетические атрибуты (с префиксом $) :

Атрибут

Описание

$all

Соответствие всем сущностям

$owner

Адрес текущего владельца

$creator

Адрес первоначального создателя (неизменяемый)

$key

Ключ сущности

Примеры фильтров

# All entities
$all

# By entity key
$key = "0xabc123..."

# By owner or creator
$owner = "0x1234567890abcdef..."
$creator = "0x1234567890abcdef..."

# Attribute equality
status = "active"
type = "post"

# Numeric range
score > 100
price >= 50 && price <= 200

# Compound
project = "myapp" && type = "post" && score > 10

# Glob matching
name ~ "draft*"
!(status = "deleted")

Формат ответа

{
  "entities": [
    {
      "key": "0x...",
      "owner": "0x...",
      "creator": "0x...",
      "createdAtBlock": "12345",
      "lastModifiedAtBlock": "12350",
      "expiresAtBlock": "99999",
      "contentType": "application/json",
      "payload": "<base64-encoded bytes>",
      "attributes": [
        { "key": "type", "value": "post" },
        { "key": "score", "value": 42 }
      ]
    }
  ],
  "cursor": "0x2a",
  "blockNumber": "12350",
  "count": 1
}

Для пагинации передайте полученный cursor обратно в качестве параметра cursor в следующем вызове. Если cursor отсутствует, значит, результатов больше нет.

Разработка

Сервер использует:

Структура проекта

arkiv-mcp/
├── src/
│   └── index.ts          # Main server implementation
├── package.json
├── tsconfig.json
└── README.md

Лицензия

MIT

Install Server
F
license - not found
A
quality
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/arrivets/arkiv-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server