M·O·R·S·E
The public ledger
- What is this list?
- Every call Morse has ever made to the Telegraph network, newest first, including the operator's own testing. Nothing is separated out and nothing is manufactured.
- What does the routed column mean?
- Telegraph: Telegraph's own router picked the miner. Morse (named miner): you named the miner, so Morse dispatched to it directly. Morse (fallback): the router did not answer within 20 s and Morse routed the question itself. Older rows also read Morse (podium) and (2nd opinion) — two features retired on 4 September; the rows stay because history is not rewritten.
- Is my question public?
- Yes, clipped to 200 characters, with the answer excerpt. Who asked is stored only as a salted hash. Do not type anything private.
On-chain proof
- What does it prove?
- That the calls in the ledger happened and were paid: every settlement hash the ledger holds is matched against the payer wallet's USDC transfers on Base Sepolia, read from a public block explorer, not from Morse.
- What is a chain-only settlement?
- A payment the chain shows but the ledger does not: usually a call Morse recorded as timed out that the node settled anyway. They are listed, not hidden, and not counted as answered calls.
- Why does this matter?
- Because "people used it" is otherwise a claim. Here it is a number anyone can recompute from the chain.
API and MCP
- Do I need a wallet?
- No. Morse's own wallet pays the x402 fee for every call. Get a free key on this page; each key has a daily cap so the budget cannot be drained by one caller.
- How do I use it from Claude Code or Cursor?
- One command adds Morse as an MCP server:
claude mcp add --transport http morse https://telegraph-morse.vercel.app/mcp --header "Authorization: Bearer morse_YOURKEY". The tools cover asking the network, asking a named miner, running a recipe, and free discovery. - Can I call a specific miner?
- Yes: the
minerfield on REST,telegraph_ask_minerover MCP,/miner <slug> <question>in Telegram. The receipt says routing was bypassed at your request.
The source
- Is the code open?
- Yes: the whole app, its tests, and an honest limits ledger (GAPS.md) that names what is unverified or deliberately not built.
- Can I run my own Morse?
- Yes. It needs a burner wallet with testnet USDC and a Telegram bot token; the README and GO-LIVE.md walk through it. Never reuse a wallet that holds anything real.
Telegraph
- What is Telegraph?
- A marketplace where independently run APIs, called miners, answer questions; validators score and rank them per intent; and every answer is paid for per call over x402, about $0.01 in USDC.
- Is this real money?
- No. Everything here runs on the Base Sepolia testnet with faucet USDC. The mechanics are real; the money is not.
- Where does the $0.01 go?
- To the protocol's Diamond contract, and only when the miner actually answers. Failed calls are not charged, and every paid call gets a signal hash you can look up on the node.
Signal 0x0de44f0c008994ad3296e2cfa2ad028edf369bc15d7ae7bf1c1da6972c8b69d2
| Found on the node | yes — GET /engine/v1/signal/0x0de44f0c00… |
|---|---|
| Kind | direct_result |
| Miner | bedrock-deepseek id 115 |
| Paid by | 0xfBB3C3bd51EC6E19BDECc786945d83719b6b4c9c = Morse's payer wallet |
| Node's own check | verified — the node confirms this hash commits to the payload below (keccak256 over payload) |
| Settlement tx | 0xe678cde358cd465ab8ecfe18593921ad3f3913786c27123f7f68e28b027e1554 |
| Recorded | 2026-09-16T08:29:48.604366Z |
| Morse's ledger row | 2026-09-16T08:29:41.903Z · web · ask · CHAT_COMPLETION · bedrock-deepseek · $0.01 |
The node states the hash is keccak256 over the payload and reports it verified. Morse shows that attestation as the node returns it: eleven serialisations of the payload as served were tried and none reproduced the hash, so Morse does not claim to have re-derived it independently (GAPS G3). What Morse does establish on its own is the payer — the wallet above is checked against Morse's.
Payload the hash covers
{
"intent_id": "CHAT_COMPLETION",
"miner_slug": "bedrock-deepseek",
"subnet_id": "115",
"wallet_address": "0xfBB3C3bd51EC6E19BDECc786945d83719b6b4c9c",
"request": "how many 6s does 66667 have",
"response": {
"choices": [
{
"finish_reason": "stop",
"index": 0,
"message": {
"content": "Let's think through this carefully. \n\nWe want the number of times the digit “6” appears in the number **66667**. \n\nWe can list out its digits: \n6 6 6 6 7 \nThis means the **first four digits** are 6, and the **fifth digit** is 7. \n\nCounting them: \n\n1st digit → 6 \n2nd digit → 6 \n3rd digit → 6 \n4th digit → 6 \n5th digit → 7 \n\nHow many 6s? 4 of the 5 digits are 6. \n\n**Answer:** \n\\[\n\\boxed{4}\n\\]",
"role": "assistant"
}
}
],
"created": 1789547388,
"id": "chatcmpl-ff36694a-80f4-4989-89da-f1ffaa04b47e",
"model": "deepseek",
"object": "chat.completion",
"usage": {
"cache_creation_input_tokens": 0,
"cache_read_input_tokens": 0,
"completion_tokens": 141,
"completion_tokens_details": {
"reasoning_tokens": 0,
"text_tokens": 141
},
"prompt_tokens": 14,
"prompt_tokens_details": {
"cache_creation_tokens": 0,
"cached_tokens": 0,
"text_tokens": 14
},
"total_tokens": 155
}
},
"timestamp": "2026-09-16T08:29:48.5995279Z"
}