mcpbeat Sign in

Stream MCP Server

answering

Stream is answering right now. Last checked 6 min ago. It exposes 13 tools. Last commit 1 Sep 2026.

Query channels, search messages, and read threads, users and reactions in your Stream Chat app.

Uptime history 47 days of history · worst day 11%
47 days agonow
100.0%
Uptime 24h
92 of 92 checks
13
Tools
read from the server
169 ms
Response time
average over 24h
0
Stars
last commit 1 Sep 2026

What the code does

We read the source, 20 h ago · tools taken from the live server · rules 3dff92dd89df

Capabilities

What this server is able to do. For an MCP server this is often the job itself — a terminal server runs commands because that is what it is for. Listed so you know what you are plugging in, not as an accusation.

Page executes code built at runtime portal/index.html:231
        results.innerHTML = order.map(function (g) {

Is this your server and something here is wrong? Tell us — corrections are free and do not require a plan.

This code can reach further than it looks

We found places where it runs commands, builds paths or queries from values it is given. None of that is a flaw by itself — it becomes one when the code changes, and code changes quietly between releases. We re-read it on every one.

Three servers free · no card

Connect this server

Endpoint below is the one we actually reach during checks — not the one copied from a README. Last verified 6 min ago.

run in your terminal
claude mcp add stream --transport http https://stream.usefulapi.io/mcp
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "stream": {
      "url": "https://stream.usefulapi.io/mcp"
    }
  }
}
~/.codex/config.toml
[mcp_servers.stream]
url = "https://stream.usefulapi.io/mcp"
.cursor/mcp.json
{
  "mcpServers": {
    "stream": {
      "url": "https://stream.usefulapi.io/mcp"
    }
  }
}
.vscode/mcp.json
{
  "mcpServers": {
    "stream": {
      "url": "https://stream.usefulapi.io/mcp"
    }
  }
}

Available tools 13

Read directly from the server with tools/list, grouped by what they act on. If a tool disappears, we record the date.

stream
stream_get_app
Fetch the Stream app's settings and configured channel types. Good first call to confirm credentials and discover available channel types. GET /api/v2/app.
stream_get_channel
Fetch a single channel's state (config, members) and its most recent messages. Note: uses Stream's get-or-create endpoint — for an existing channel it reads; if the type/id does not exist it may be created empty. POST /api/v2/chat/channels/{type}/{id}/query.
stream_get_message
Fetch a single message by its id. GET /api/v2/chat/messages/{id}.
stream_get_reactions
List the reactions on a message. GET /api/v2/chat/messages/{id}/reactions.
stream_get_replies
Fetch the reply messages in a thread, given the parent message id. GET /api/v2/chat/messages/{parent_id}/replies.
stream_get_unread_counts
Fetch total and per-channel unread message/mention counts for one user. GET /api/v2/chat/unread.
stream_query_channels
List/filter channels by a Stream query filter. e.g. filter {"type":"messaging"} or {"members":{"$in":["user-1"]}}. Returns channels with recent state. POST /api/v2/chat/channels.
stream_query_members
List/filter the members of one channel. Requires the channel type + id. Optional member filter, e.g. {"name":{"$autocomplete":"jo"}}. GET /api/v2/chat/members.
stream_query_threads
List threads (messages with replies). Server-side calls should pass a user_id to scope thread read-state to that user. POST /api/v2/chat/threads.
stream_query_users
List/filter users in the app. e.g. filter {"role":{"$eq":"admin"}} or {"id":{"$in":["u1"]}}. GET /api/v2/users.
stream_search_messages
Search messages across channels. Scope with a channel filter (filter, e.g. {"type":"messaging"}) plus EITHER a full-text `query` OR a `message_filter` object (e.g. {"text":{"$q":"refund"}}). GET /api/v2/chat/search.
stream_send_message
⚠️ WRITE: post a new message to a channel, attributed to user_id (must be an existing user in the app). POST /api/v2/chat/channels/{type}/{id}/message.
stream_send_reaction
⚠️ WRITE: add a reaction (e.g. "like", "love") to a message, attributed to user_id (must be an existing user). POST /api/v2/chat/messages/{id}/reaction.

Endpoints

URLTransportStateLatencyChecked
https://stream.usefulapi.io/mcp streamable-http answering 278 ms 6 min ago

Alternatives to Stream

same job, measured the same way
Slack
by mindstone

Slack MCP server: channels, messages, threads, reactions, users, files, and scheduled messages

122 installs/wk local only
Slack MCP Server
by stevenvo

Read Slack conversations, threads, user info, and search messages from your MCP client.

52 installs/wk local only
Pantheon
by pantheon

Search your Pantheon contacts, read cross-channel message timelines, and query the AI brain.

answering
Google Chat MCP
by a1-x-tech

MCP server for the Google Chat API: spaces, messages, threads, reactions and memberships.

57 installs/wk local only
Missive
by usefulapi

Read email/chat conversations, messages, contacts and teams; draft, send and update threads.

19 tools answering
Twist
by pulsemcp

MCP server for Twist team messaging — manage channels, threads, and messages.

75 installs/wk local only
Telegram MCP
by jgalea

Telegram MCP server: read, send, and search messages and manage chats via your account.

90 installs/wk local only
Sendbird
by usefulapi

MCP server for Sendbird — chat users, channels, members, and messages from your AI client.

14 tools answering

Stream — questions

Answers built from our own checks of this server.

What can Stream do?
It exposes 13 tools, read directly from the server on our last check. Among them: stream_get_app, stream_get_channel, stream_get_message, stream_get_reactions, stream_get_replies, stream_get_unread_counts and 7 more. The full list with descriptions is on this page — we take it from the server itself via tools/list, not from a README. How MCP servers expose tools in the first place →
Is Stream working right now?
We send a real MCP handshake every 15 minutes. Over the last 24 hours 92 of 92 checks got a reply (100.0%), average response time 169 ms. The bar chart above shows every period we have measured.
How do I connect Stream?
Copy the ready config from this page — we generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each with the file path that client actually reads. It is a remote server, so there is nothing to install — the client connects to the address.
Does Stream need an API key?
No. Stream completed a full MCP handshake with us as an anonymous client and listed its tools without asking for anything. All 13 of them are readable on this page. This is what we observed, not what the docs claim.
How fast is Stream?
It answers our handshake in 169 ms on average, which is faster than 73% of all working MCP servers we measure. The comparison comes from our own checks across the whole registry, every 15 minutes.
Is Stream open source?
Yes — it is published under the MIT licence, written in JavaScript and 0 stars on GitHub. The source link is on this page, so you can read exactly what it does with your data before you connect it.