# Muhabbit > Exchange security alerts (hack and drain detection), a hash-chained public record of every event the wire publishes, and multi-vertical news intelligence (crypto, finance, tech, Turkish markets) for agents. Free routes need no credentials. Paid routes take an API key (X-API-Key), a wallet token (Authorization: Bearer, from SIWE) or a per-call x402 payment (X-PAYMENT); an unpaid call answers 402 with what to pay in `accepts`. Outputs are informational, not advice. Install the MCP server: its name in the official MCP Registry is `io.github.AytuncYildizli/muhabbit`. Claude Code: `claude mcp add --transport http muhabbit https://api-production-ba80.up.railway.app/mcp`. Clients that only speak stdio: `npx -y muhabbit mcp`, with MUHABBIT_API_KEY set for paid and key-gated tools. ## Agent interfaces - [MCP server](https://api-production-ba80.up.railway.app/mcp): Streamable HTTP, stateless; credentials sent to it are forwarded to each tool call - [MCP Registry entry](https://registry.modelcontextprotocol.io/v0.1/servers/io.github.AytuncYildizli%2Fmuhabbit/versions/latest): io.github.AytuncYildizli/muhabbit, listing the remote server and the npm package - [npm package muhabbit](https://www.npmjs.com/package/muhabbit): stdio bridge to the MCP server, run as npx -y muhabbit mcp - [Agent card](https://api-production-ba80.up.railway.app/.well-known/agent-card.json): endpoints, auth schemes, x402 networks and prices - [OpenAPI](https://api-production-ba80.up.railway.app/openapi.yaml): every REST route - [API reference](https://api-production-ba80.up.railway.app/docs) ## MCP tools - [muhabbit_news](https://api-production-ba80.up.railway.app/mcp): Latest news. Latest approved news across crypto, finance, tech and Turkish markets. Agent-shaped items: signal, tokens[], narrative_id, short/long context, sentiment_value. Filter by vertical, topic, tokens or time. (Paid route: API key, wallet token, or x402 payment.) - [muhabbit_search](https://api-production-ba80.up.railway.app/mcp): Search articles. Full-text search over the article corpus with relevance ranking. (Needs an API key or wallet token: X-API-Key or Authorization: Bearer.) - [muhabbit_recap](https://api-production-ba80.up.railway.app/mcp): Recap. Scheduled 1h / 24h / 7d recap for a vertical or all verticals (English). Returns freshness; never generated on demand. (Paid route: API key, wallet token, or x402 payment.) - [muhabbit_ticker_summary](https://api-production-ba80.up.railway.app/mcp): Ticker summary. 24h AI summary of news about one asset symbol (exists for the most-mentioned assets). (Paid route: API key, wallet token, or x402 payment.) - [muhabbit_sentiment_index](https://api-production-ba80.up.railway.app/mcp): Fear & Greed index. 0-100 Fear & Greed index overall and per vertical, computed from the last 24h of scored articles. (Needs an API key or wallet token: X-API-Key or Authorization: Bearer.) - [muhabbit_sentiment_signals](https://api-production-ba80.up.railway.app/mcp): Sentiment signals. Momentum, volume-weighted, regime and vertical-shift sentiment signals. (Needs an API key or wallet token: X-API-Key or Authorization: Bearer.) - [muhabbit_narratives](https://api-production-ba80.up.railway.app/mcp): Narratives. Ranked live narrative clusters by phase, velocity and distinct-source count. Use for themes, rotations, or 'what's the story in crypto right now?' — returns decision-ready rows, not a raw feed. (Needs an API key or wallet token: X-API-Key or Authorization: Bearer.) - [muhabbit_narrative_history](https://api-production-ba80.up.railway.app/mcp): Narrative history. Time series for ONE narrative (15-min captures of phase, velocity, article and source counts). Use after muhabbit_narratives to see how a story's lifecycle evolved — is it accelerating or rolling over? (Needs an API key or wallet token: X-API-Key or Authorization: Bearer.) - [muhabbit_confidence](https://api-production-ba80.up.railway.app/mcp): Confidence score. Use BEFORE treating a headline as tradeable or citing it as fact: 5-factor confidence for one article (source tier, cross-reference, freshness, AI confidence, entity density). (Needs an API key or wallet token: X-API-Key or Authorization: Bearer.) - [muhabbit_cross_reference](https://api-production-ba80.up.railway.app/mcp): Cross-reference. Use when asked 'is this confirmed?' or 'who else is reporting this?' — multi-source validation of an article's claims with entity correlation. (Needs an API key or wallet token: X-API-Key or Authorization: Bearer.) - [muhabbit_categories](https://api-production-ba80.up.railway.app/mcp): Categories. Verticals and currently active topic slugs. The anonymous token from GET /auth/public-token is enough. (Needs an API key or wallet token: X-API-Key or Authorization: Bearer.) - [muhabbit_alerts](https://api-production-ba80.up.railway.app/mcp): Exchange security alerts. Exchange hack and drain alerts from Muhabbit's incident engine (large outflows to unlabelled wallets, withdrawal halts, security-researcher posts, exchange statements). One item per incident: tier (suspected = unconfirmed, confirmed), exchange, headline, USD at risk, assets, evidence signals and sources, a timeline with named clocks, and links to its hash-chained public record entries. Newest update first. Use for 'is an exchange being hacked right now?' or 'any exchange incidents since T?'. Informational, not advice. (Free when tier is confirmed, the default; that feed needs no credentials and returns at most 20. Otherwise paid: x402 payment, or an API key or wallet token on a paid plan.) - [muhabbit_alert](https://api-production-ba80.up.railway.app/mcp): One exchange security alert. One exchange security alert with its evidence signals, sources and timeline. Takes the id from muhabbit_alerts, or the article_id of an alert headline seen in muhabbit_events. A confirmed alert is free; an unconfirmed (suspected) one answers 403 alert_unconfirmed unless include_unconfirmed is true, which reads the paid route. (Free when include_unconfirmed is false, the default, and the alert is confirmed. Otherwise paid: x402 payment, or an API key or wallet token on a paid plan.) - [muhabbit_events](https://api-production-ba80.up.railway.app/mcp): Public market-event feed. The public market-event feed: every headline Muhabbit's wire published, newest first. Each item is an entry of the hash-chained public record with three clocks in UTC ms (source_at = publisher, detected_at = our ingest, published_at = our publication), focus tags, a category and impact 0-100. Covers exchange listings, US CPI, jobs and Fed, crypto, macro and tech. Exchange security alert headlines appear here too (suspected ones start with 'Unconfirmed:'; their evidence is in muhabbit_alerts). Page with next_cursor. (Free: no credentials needed.) - [muhabbit_record_head](https://api-production-ba80.up.railway.app/mcp): Public record head. Latest entry id and hash of Muhabbit's public record: an append-only sha256 hash chain (hash_v1) over every published event. Pin the head now; muhabbit_record_verify later proves nothing up to it was rewritten. null on an empty record. (Free: no credentials needed.) - [muhabbit_record_entries](https://api-production-ba80.up.railway.app/mcp): Public record entries. Raw public record entries in chain order from an id: each entry's frozen fields, prev_hash and hash, for offline verification. hash = sha256 over the canonical JSON bytes followed by prev_hash; the exact recipe is in /public/events/{id}/proof. Page with next_from. (Free: no credentials needed.) - [muhabbit_record_verify](https://api-production-ba80.up.railway.app/mcp): Verify the public record. Recompute the public record's hash chain server-side over [from, to], at most 1000 entries (no bounds: the latest 1000). Returns ok, checked and head_hash, or the first broken id and the reason (prev_hash_mismatch, hash_mismatch, endpoint_missing). Limited to 5 calls a minute per client. (Free: no credentials needed.) ## Free REST routes - [Confirmed exchange security alerts](https://api-production-ba80.up.railway.app/public/alerts): one item per incident with evidence and timeline - [Public event feed](https://api-production-ba80.up.railway.app/public/events): hash-chained headlines with publisher, ingest and publication clocks - [Public record head](https://api-production-ba80.up.railway.app/public/record/head) - [Verify the public record](https://api-production-ba80.up.railway.app/public/record/verify) ## Optional - [Paid alert feed](https://api-production-ba80.up.railway.app/v1/alerts): unconfirmed (suspected) incidents as soon as they are published - [Typed event firehose](https://api-production-ba80.up.railway.app/v1/events) - [Pricing](https://muhabbit.com/pricing)