Skip to main content
Glama
arrivets

Arkiv MCP Server

by arrivets

Arkiv MCP-Server

Ein Model Context Protocol (MCP)-Server, der die Abfragefunktionen von Arkiv-Datenbankketten für KI-Agenten und Anwendungen bereitstellt.

Schnellstart

1. Build

cd arkiv-mcp
npm install
npm run build

2. Zu Claude Code hinzufügen

Führen Sie dies im arkiv-mcp-Verzeichnis aus:

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

Oder fügen Sie es manuell zu ~/.claude/settings.json hinzu:

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

Für Claude Desktop fügen Sie denselben Block zu ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) oder %APPDATA%\Claude\claude_desktop_config.json (Windows) hinzu.

3. Das Kaolin-Testnetz abfragen

Sobald die Verbindung hergestellt ist, steht das Tool query_entities zur Verfügung. Beispiel-Prompts:

  • "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

Funktionen

  • Abfrage von Entitäten aus Arkiv-Datenbankketten mittels eines SQL-ähnlichen Filterausdrucks

  • Vollständige arkiv_query-Syntax: Vergleiche, logische Operatoren, Glob-Matching, synthetische Attribute

  • Paginierungsunterstützung mit Cursor

  • Konfigurierbare Rückgabefelder (Attribute, Metadaten, Payload)

  • Standardmäßig auf das Kaolin-Testnetz eingestellt

Installation

cd arkiv-mcp
npm install
npm run build

# Or use tsx for development
npm run dev

Verwendung

Server starten

# 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

Umgebungsvariablen

Variable

Beschreibung

Erforderlich

ARKIV_NODE_URL

Arkiv-Knoten RPC-URL

Nein (Standard: Kaolin-Testnetz)

Befehlszeilenoptionen

Option

Beschreibung

Standard

--node-url <url>

Arkiv-Knoten RPC-URL

Kaolin-Testnetz

--help, -h

Hilfe anzeigen

-

MCP-Tool

query_entities

Fragt Entitäten aus einer Arkiv-Datenbankkette ab.

Parameter

Parameter

Typ

Beschreibung

Standard

filter

string

Filterausdruck (siehe Syntax unten)

$all

limit

number

Maximale Anzahl der zurückzugebenden Entitäten (max. 200)

-

cursor

string

Paginierungs-Cursor aus einer vorherigen Antwort

-

withAttributes

boolean

Attribute in den Ergebnissen einschließen

true

withMetadata

boolean

Metadaten (Besitzer, Ersteller, Ablaufdatum) in den Ergebnissen einschließen

true

withPayload

boolean

Payload in den Ergebnissen einschließen (base64-kodiert)

true

validAtBlock

number

Abfragestatus bei einer bestimmten Blocknummer

-

Filter-Syntax

Der filter-Parameter verwendet die arkiv_query-Ausdruckssprache:

Operator

Beschreibung

Beispiel

=

Gleichheit

status = "active"

!=

Ungleichheit

status != "deleted"

>, >=, <, <=

Numerischer Bereich

score > 100

&&

Logisches UND

type = "post" && score > 50

||

Logisches ODER

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

!

Negation

!(status = "deleted")

~

Glob-Match

name ~ "test*"

!~

Negierter Glob

name !~ "draft*"

Synthetische Attribute (mit $ als Präfix):

Attribut

Beschreibung

$all

Alle Entitäten abgleichen

$owner

Aktuelle Besitzeradresse

$creator

Ursprüngliche Erstelleradresse (unveränderlich)

$key

Entitätsschlüssel

Filter-Beispiele

# 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")

Antwortformat

{
  "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
}

Paginiere, indem du den zurückgegebenen cursor als cursor-Parameter im nächsten Aufruf übergibst. Wenn kein cursor vorhanden ist, gibt es keine weiteren Ergebnisse.

Entwicklung

Der Server verwendet:

Projektstruktur

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

Lizenz

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