Satstream MCP Server
A Model Context Protocol server that enables querying Bitcoin blockchain data, including address information, transaction details, mempool statistics, and ordinals/runes data through the Satstream API.
README
Satstream MCP Server
A Model Context Protocol (MCP) server that provides access to Satstream Bitcoin data API.
Setup
To install dependencies:
bun install
To run with an API key:
export SATSTREAM_API_KEY="your-api-key-here"
bun run index.ts
Or pass the API key as a command line argument:
bun run index.ts your-api-key-here
About Satstream
Satstream is a comprehensive Bitcoin blockchain API service that provides access to real-time blockchain data, including transactions, addresses, blocks, and specialized data like Ordinals inscriptions and Runes tokens.
Getting an API Key
To use this MCP server, you'll need a Satstream API key. You can obtain one by:
- Visiting Satstream Documentation
- Signing up for an account
- Generating an API key from your dashboard
The free tier provides access to basic functionality with rate limits, while paid plans offer higher rate limits and additional features.
Available MCP Functions
The following MCP functions are available for Bitcoin data queries:
Address Functions
| Function Name | Description | Parameters |
|---|---|---|
address_get |
Get detailed information about a Bitcoin address | address: Bitcoin address |
address_balance_get |
Get balance for a Bitcoin address | address: Bitcoin address |
address_deltas_get |
Get transaction history for an address | address: Bitcoin address, plus optional pagination params |
address_validate |
Validate a Bitcoin address | address: Bitcoin address |
address_outputs_get |
Get UTXOs for a Bitcoin address | address: Bitcoin address, type: Optional UTXO type filter |
address_rune_deltas_get |
Get rune token history for an address | address: Bitcoin address, plus optional pagination params |
Blockchain Functions
| Function Name | Description | Parameters |
|---|---|---|
block_get |
Get information about a block by hash or height | identifier: Block hash or height |
blockchain_info |
Get current blockchain stats and network info | random_string: Optional dummy parameter |
transaction_get |
Get details about a transaction | txid: Transaction ID |
Mempool Functions
| Function Name | Description | Parameters |
|---|---|---|
mempool_info_get |
Get mempool statistics | random_string: Optional dummy parameter |
mempool_transactions_get |
List unconfirmed transactions | Optional pagination params |
Ordinals and Runes Functions
| Function Name | Description | Parameters |
|---|---|---|
ordinals_inscription_get |
Get data about an ordinals inscription | inscription_id: Inscription ID |
rune_get |
Get information about a specific rune | identifier: Rune name or ID |
runes_latest_get |
Get latest runes (first 100) | random_string: Optional dummy parameter |
runes_page_get |
Get a specific page of runes | page: Page number |
Usage Examples
Get address information
address_get({ address: "1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa" })
Validate a Bitcoin address
address_validate({ address: "1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa" })
Get block information
block_get({ identifier: "000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f" })
Get blockchain stats
blockchain_info({ random_string: "dummy" })
Get address balance
address_balance_get({ address: "1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa" })
Get UTXOs for an address, filtered by type
address_outputs_get({
address: "1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa",
type: "cardinal"
})
Get information about a specific rune
rune_get({ identifier: "UNCOMMON•GOODS" })
Get latest runes
runes_latest_get({ random_string: "dummy" })
MCP Integration
This server is designed to be used with Cursor or other environments supporting the Model Context Protocol. For detailed function descriptions and usage guidelines, see function-descriptions.json.
This project was created using Bun, a fast all-in-one JavaScript runtime.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
E2B
Using MCP to run code via e2b.