Hive Log

io.github.srotzinPublished by GitHub account srotzinv1.0.0Updated Oct 24, 2026

Tamper-evident audit log service for agent-to-agent transactions

VerifiedStreamable HTTPWeb executableSecurity & MonitoringData & Analytics

Overview

AI-generated overview

A remote MCP service for ingesting, tailing and searching an agent's own structured NDJSON logs, with paid retention tiers settled in USDC on Base.

What you can do
Ingest structured NDJSON log batches, metered per line with a retention surcharge (max 4 MB or 10,000 lines per batch). Read back the calling agent's own logs by tailing the last N lines or searching by time, severity, tag or free text. Check and change the retention tier (1 day, 7 days or 30 days) and see bytes stored. Get a daily aggregate of ingests, lines, bytes and charges. The same operations are also exposed as REST endpoints alongside the MCP surface.
When to use it
Useful when an autonomous agent needs a tamper-evident, hosted place to write structured logs and read them back later, and when you are willing to pay per line in USDC for longer retention. Not needed if you already have local or self-hosted logging.
Requirements
A remote endpoint over Streamable HTTP; no local package or runtime. A DID identifying the calling agent is used for ingest and for own-DID tail and search. Payment in USDC on Base L2 is required for ingestion and for paid retention tiers; the first ingest returns a 402 payment envelope that must be settled and resent with a transaction hash. Network access to the hosted service.
Before you install
Ingestion costs real money: $0.0001 per line plus per-MB retention surcharges, settled in USDC on Base L2, so automated logging can spend funds. Logs are sent to a third-party hosted service, and the README states there is no PII detection in v1, so avoid sending sensitive data. Retention changes and pruning are irreversible after the window passes.

Installation

In SourceWeft

  1. Open Hive Log in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.srotzin%2Fhive-mcp-log/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "hive-log": {
      "type": "http",
      "url": "https://hive-mcp-log.onrender.com/mcp"
    }
  }
}

README

hive-mcp-log

[srotzin/hive-mcp-log MCP server]

Inbound structured-log ingestion shim — Hive Civilization

NDJSON log ingestion at $0.0001/line via x402. Retention tiers (1d free, 7d $0.005/MB, 30d $0.02/MB). Tail + search endpoints. Pure protocol — inbound only, no outbound calls.

Council provenance: Tier A inbound metering shim. Companion to hive-mcp-auction and hive-mcp-barter.


What this is

hive-mcp-log is a Model Context Protocol server exposing a metered log ingestion surface for autonomous agents. Agents POST structured logs (NDJSON) and pay $0.0001/line in USDC on Base L2. They read their own logs back via tail/search at Tier 0 (free). Retention tier governs how long lines persist; the default 1-day tier is free, longer tiers carry a per-MB surcharge.

  • Protocol: MCP 2024-11-05 over Streamable-HTTP / JSON-RPC 2.0
  • Transport: POST /mcp
  • Discovery: GET /.well-known/mcp.json
  • Health: GET /health
  • Settlement: USDC on Base L2 — real rails, no mock, no simulated
  • Brand gold: Pantone 1245 C / #C08D23
  • Inbound only: the service never reaches out, never DMs, never pulls

MCP tools

ToolTierDescription
log_ingestmeteredIngest NDJSON batch (max 4 MB / 10k lines). $0.0001/line + retention surcharge.
log_tail0 (free)Return last N log lines for the calling DID.
log_search0 (free)Search own-DID logs by time/severity/tag/free-text.
log_retention_get0 (free)Return current tier + bytes stored.
log_retention_set0 (free)Change retention tier (1d/7d/30d).
log_today0 (free)Today aggregate — ingests, lines, bytes, charge_usd.

REST endpoints

MethodPathPurpose
POST/v1/log/ingestIngest NDJSON batch. Returns 402 envelope first, accepts tx_hash to settle.
GET/v1/log/tailLast N lines for did.
GET/v1/log/searchSearch by time/severity/tag/q. Cursor pagination.
GET/v1/log/retentionCurrent retention tier + monthly cost projection.
PATCH/v1/log/retentionChange retention tier for a DID.
GET/v1/log/todayToday aggregate (Tier 0, free).
POST/mcpMCP JSON-RPC 2.0 surface.
GET/healthService health.

Pricing

Ingest:    $0.0001 per log lineRetention:  1d   (default)   free  7d               $0.005 / MB  30d              $0.02  / MBTail / search (own-DID):  Tier 0 — free

NDJSON ingest example

bash
curl -X POST https://hive-mcp-log.onrender.com/v1/log/ingest \  -H 'content-type: application/json' \  -H 'x-hive-did: did:hive:agent-foo' \  -d '{    "did": "did:hive:agent-foo",    "retention_class": "7d",    "lines": [      { "ts": "2026-04-27T20:00:00Z", "severity": "info",  "tag": "tool", "msg": "tool_call ok" },      { "ts": "2026-04-27T20:00:01Z", "severity": "error", "tag": "llm",  "msg": "rate_limited" }    ]  }'

The first call returns a 402 with the payment envelope (Base L2 USDC). Settle, then resend with x-hive-tx: <hash> for synchronous verification.

Tail / search example

bash
curl 'https://hive-mcp-log.onrender.com/v1/log/tail?did=did:hive:agent-foo&n=20'curl 'https://hive-mcp-log.onrender.com/v1/log/search?did=did:hive:agent-foo&severity=error&q=rate'

Retention

bash
curl -X PATCH https://hive-mcp-log.onrender.com/v1/log/retention \  -H 'content-type: application/json' \  -d '{ "did": "did:hive:agent-foo", "tier": "7d" }'

A periodic sweep (default hourly) prunes lines older than each DID's retention window.

Environment

VarDefaultNotes
PORT3000
ENABLEtrueFlip to false to disable ingestion (returns 503 with log_ingestion_disabled).
WALLET_ADDRESS0x15184bf50b3d3f52b60434f8942b7d52f2eb436eW1 MONROE on Base L2.
SOLANA_WALLETB1N61cuL35fhskWz5dw8XqDyP6LWi3ZWmq8CNA9L3FVnB1 SPL recipient.
USDC_BASEcanonicalUSDC contract on Base.
BASE_RPChttps://mainnet.base.org
PUBLIC_BASE_URLhttps://hive-mcp-log.onrender.com
MAX_LINES_PER_INGEST10000
MAX_BYTES_PER_INGEST41943044 MB.
RETENTION_SWEEP_MS36000001 hour.

Security & scope

  • Cross-DID reads are not exposed in v1 (own-DID only via tail/search).
  • No PII detection in v1; client-side discipline assumed. Schema check is a v1.1 candidate.
  • ZK cardinality attestation is a separate shim (hive-mcp-zk-attestation); not bundled.

License

MIT — Steve Rotzin / Hive Civilization

Hive Gamification

This MCP server is part of the Hive Civilization gamification surface (10-mechanic capability taxonomy).

Surface tags: gamification.spec.v1 · gamification.surface.public · gamification.signal.read-only · gamification.settlement.real-rails

Real rails on Base L2 (USDC 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913). Read-only signal layer. Brand gold #C08D23.

Hive Civilization Directory

Part of the Hive Civilization — agent-native financial infrastructure.

Brand: #C08D23

Source: README.md at commit 79185b5

Tools

0
SourceWeft has not read this server's tools yet.

Version history

1
  1. v1.0.0LatestSep 16, 2026

Score

85% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts