Official MCP client SDK for Aleatoric Systems: institutional-grade synthetic market data generation, unified stream access, and operator-ready service tooling.
Verified Compliance: This client is aligned with Aleatoric Engine API v0.5.10 and MCP Protocol Version 2024-11-05 over JSON-RPC 2.0. The documented examples are validated against the current production endpoint contract.
Keywords: mcp, market-data, synthetic-data, backtesting, trading, fintech, quantitative-finance, perpetuals, futures, order-book
The Aleatoric Hypercore TypeScript SDK is the public Node.js and MCP integration surface for Aleatoric Systems. It is designed for customer-facing integrations that need:
- typed JSON-RPC access
- low-latency unified stream access
- browser-safe all-mids, L2 book, and asset-context snapshots
- gRPC diagnostics and bridge consumers
- status monitoring and MCP tooling
This SDK is intentionally read-only. It does not include signing, custody, or order placement.
- JSON-RPC access for chain and relay methods
- WebSocket pricing helpers
- Unified stream access for stats, events, SSE, liquidations, cascades, all-mids, L2 book, and asset contexts
- gRPC diagnostics and bridge consumers
- Status API client
- Stdio MCP server built on the same SDK primitives
- CLI utilities for connection checks and latency benchmarking
- Node.js 20 or later
- npm 10 or later
Install from source:
npm install
npm run buildInstall as a package:
npm install @aleatoric/hypercore-typescript-sdk- RPC:
https://rpc.aleatoric.systems/ - Unified stream:
https://unified.grpc.aleatoric.systems - gRPC target:
hl.grpc.aleatoric.systems:443
The SDK supports a general HYPER_API_KEY, but scoped keys are preferred:
UNIFIED_STREAM_KEYfor unified stream and disk-sync interfacesALEATORIC_GRPC_KEYfor gRPC bridge accessHYPER_STATUS_TOKENfor private status endpoints
import { HyperCoreAPI, UnifiedStreamClient, loadConfig } from "@aleatoric/hypercore-typescript-sdk";
const config = loadConfig();
const api = new HyperCoreAPI(config);
const btcMid = await api.coinMid("BTC");
console.log({ btcMid });
const stream = new UnifiedStreamClient({
...config,
apiKey: process.env.UNIFIED_STREAM_KEY,
});
const stats = await stream.stats();
console.log(stats);npx hypercore-ts-sdk rpc call --method eth_blockNumber --api-key "$HYPER_API_KEY"
npx hypercore-ts-sdk price ws --coin BTC --subscription allMids
npx hypercore-ts-sdk stream stats --api-key "$UNIFIED_STREAM_KEY"
npx hypercore-ts-sdk grpc health --target hl.grpc.aleatoric.systems:443export HYPER_GRPC_TARGET="hl.grpc.aleatoric.systems:443"
export ALEATORIC_GRPC_KEY="<grpc-key>"
export HYPER_UNIFIED_STREAM_URL="https://unified.grpc.aleatoric.systems"
export UNIFIED_STREAM_KEY="<unified-key>"
export HYPER_RPC_URL="https://rpc.aleatoric.systems/"
export HYPER_API_KEY="<rpc-key>"
npx hypercore-ts-mcpThe MCP server exposes:
catalog_interfacesgrpc_get_mid_pricegrpc_stream_mids_samplegrpc_get_block_numbergrpc_stream_liquidations_sampleunified_get_statsunified_get_eventsunified_get_liquidation_cascadesunified_get_consensus_pulseunified_get_all_midsunified_get_l2_bookunified_get_asset_contextsstatus_get_publicstatus_get_privaterpc_call
Production deployment, environment, compliance, and support guidance is documented in PRODUCTION.md.
Run an example:
node examples/basic-connection.mjsnpm install
npm run build
npm test
npm run validate:mcp:inspector
npm run release:check- CI runs on pushes and pull requests.
- Tags matching
v*produce release artifacts and a GitHub Release. npm pack --dry-runis used during release validation to confirm package contents.
- Email: github@aleatoric.systems
- Discord: contact the Aleatoric Systems team for the active customer support server and onboarding channel