npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@echorift/mcp

v0.1.0

Published

MCP server for EchoRift infrastructure primitives (BlockWire, CronSynth, Switchboard, Arbiter)

Readme

EchoRift MCP Server

Official MCP server for EchoRift infrastructure primitives (BlockWire, CronSynth, Switchboard, Arbiter). Makes EchoRift's agent infrastructure callable as MCP tools so any MCP client can treat EchoRift like a native capability layer.

Quick Start

Install & Run (stdio mode)

npx @echorift/mcp

Environment Variables

# BlockWire (optional, defaults to https://blockwire.echorift.xyz)
BLOCKWIRE_BASE_URL=https://blockwire.echorift.xyz

# CronSynth (optional, defaults to https://cronsynth.echorift.xyz)
CRONSYNTH_BASE_URL=https://cronsynth.echorift.xyz
CRONSYNTH_X402_SESSION=your-x402-session-token

# Switchboard (optional, defaults to https://switchboard.echorift.xyz/api/v1)
SWITCHBOARD_BASE_URL=https://switchboard.echorift.xyz/api/v1
SWITCHBOARD_AGENT_ID=0x...
SWITCHBOARD_PRIVATE_KEY=0x... # For automatic signing

# Arbiter (optional, defaults to https://arbiter.echorift.xyz)
ARBITER_BASE_URL=https://arbiter.echorift.xyz

# Feature flags
ECHORIFT_ENABLE_TREASURY=0 # Set to 1 to enable treasury tools

MCP Client Configuration

Canonical Config (Stdio Mode - Recommended)

Use this configuration for Claude Desktop or any MCP client supporting stdio transport:

{
  "mcpServers": {
    "echorift": {
      "command": "npx",
      "args": ["@echorift/mcp"],
      "env": {
        "CRONSYNTH_X402_SESSION": "your-session",
        "SWITCHBOARD_AGENT_ID": "0x...",
        "SWITCHBOARD_PRIVATE_KEY": "0x..."
      }
    }
  }
}

Remote Config (HTTP Endpoint)

For clients supporting remote HTTP endpoints:

{
  "mcpServers": {
    "echorift": {
      "url": "https://mcp.echorift.xyz/api/mcp",
      "transport": "http"
    }
  }
}

Note: Stdio mode is recommended for production use. Remote HTTP support is available but may have limitations with serverless platforms.

Remote Endpoint Setup

The server supports both stdio (local) and remote HTTP endpoints. Stdio mode is recommended for production use as it provides better reliability and lower latency.

Stdio Mode (Recommended)

Stdio mode runs the server locally as a child process:

npx @echorift/mcp

This is the most reliable and performant option. See "MCP Client Configuration" above for config snippet.

Remote HTTP Endpoint

For remote deployments (e.g., Vercel), the server exposes an HTTP endpoint:

Endpoint: https://mcp.echorift.xyz/api/mcp

Transport Type: streamable-http (compatible with MCP remote clients)

Usage:

{
  "mcpServers": {
    "echorift": {
      "url": "https://mcp.echorift.xyz/api/mcp",
      "transport": "http"
    }
  }
}

Note: Full HTTP/SSE transport requires long-running connections, which can be challenging with serverless platforms. Stdio mode is recommended for production use, but remote endpoint is available for clients that require it.

Deploying to Vercel

  1. Clone and deploy:
git clone https://github.com/echorift/echorift-mcp.git
cd echorift-mcp
vercel deploy
  1. Set environment variables in Vercel dashboard:

    • CRONSYNTH_X402_SESSION
    • SWITCHBOARD_AGENT_ID
    • SWITCHBOARD_PRIVATE_KEY
    • Other optional service URLs
  2. Configure domain: Point mcp.echorift.xyz to your Vercel deployment

  3. Verify: Visit https://mcp.echorift.xyz/api/mcp (GET request) to verify server info

MCP Client Configuration

Different MCP clients support different transport modes:

  • Claude Desktop: Supports stdio mode (recommended)
  • Custom clients: May support HTTP/SSE or Streamable HTTP

Refer to your MCP client's documentation for remote server configuration options.

Tools

BlockWire Tools

  • blockwire_subscribe_prepare_tx - Generate on-chain transaction payload for webhook subscription
  • blockwire_feed - Pull recent blockchain events via x402 endpoint

CronSynth Tools

  • cronsynth_schedule_create - Create a scheduled webhook trigger with cron expression
  • cronsynth_schedule_list - List all scheduled webhook triggers
  • cronsynth_schedule_delete - Delete a scheduled webhook trigger

Switchboard Tools

  • switchboard_task_enqueue - Enqueue a task to a swarm queue
  • switchboard_task_claim - Claim a task from a swarm queue
  • switchboard_task_complete - Mark a claimed task as complete

Arbiter Tools

  • arbiter_lock_acquire - Acquire a distributed lock with fencing token
  • arbiter_lock_release - Release a distributed lock using fencing token
  • arbiter_leader_get - Get current leader for a swarm
  • arbiter_election_run - Run a leader election for a swarm

Resources

  • echorift://queues - Switchboard swarm queues and stats
  • echorift://cron/jobs - CronSynth scheduled jobs
  • echorift://blockwire/subscriptions - BlockWire webhook subscriptions
  • echorift://arbiter/locks - Active Arbiter distributed locks

Prompts

  • swarm-safe-cron - Create a swarm-safe task pipeline with cron scheduling
  • chain-event-router - Subscribe to chain events and route tasks by event type
  • distributed-locking - Set up distributed locking for exclusive resource access

Capability Map

Quick reference for common needs:

  • Need timers?cronsynth_schedule_create
  • Need exclusive portfolio writes?arbiter_lock_acquire
  • Need a work queue?switchboard_task_*
  • Need chain event ingestion?blockwire_*

📖 Full Capability Map - Detailed guide with examples and use cases

📋 OpenAPI Specification - Complete API schema

Security Model

  • What data leaves the machine? All tool calls are forwarded to EchoRift API endpoints. Authentication credentials (x402 sessions, private keys) should be kept secure via environment variables.
  • What is gated? Treasury tools require ECHORIFT_ENABLE_TREASURY=1 to prevent accidental exposure in shared clients.
  • Auth modes:
    • Mode A (recommended): MCP server holds keys and signs requests automatically
    • Mode B: Caller provides auth headers in tool params (bring-your-own-auth)

License

MIT

Links