Stream MCP by usefulapi
Query channels, search messages, and read threads, users and reactions in your Stream Chat app.
Connect it
Settings → Connectors → Add custom connector
URL: https://stream.usefulapi.io/mcpSettings → Apps & Connectors → Advanced → Developer mode
Create connector with URL: https://stream.usefulapi.io/mcp{
"mcpServers": {
"stream": {
"url": "https://stream.usefulapi.io/mcp"
}
}
}claude mcp add --transport http stream https://stream.usefulapi.io/mcp{
"servers": {
"stream": {
"type": "http",
"url": "https://stream.usefulapi.io/mcp"
}
}
}13 tools, verified live
stream_get_appread-onlyFetch 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_query_channelsread-onlyList/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_get_channelread-onlyFetch 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_search_messagesread-onlySearch 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_get_messageread-onlyFetch a single message by its id. GET /api/v2/chat/messages/{id}.
stream_get_repliesread-onlyFetch the reply messages in a thread, given the parent message id. GET /api/v2/chat/messages/{parent_id}/replies.
stream_get_reactionsread-onlyList the reactions on a message. GET /api/v2/chat/messages/{id}/reactions.
stream_query_membersread-onlyList/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_usersread-onlyList/filter users in the app. e.g. filter {"role":{"$eq":"admin"}} or {"id":{"$in":["u1"]}}. GET /api/v2/users.
stream_query_threadsread-onlyList 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_get_unread_countsread-onlyFetch total and per-channel unread message/mention counts for one user. GET /api/v2/chat/unread.
stream_send_messagecan modify⚠️ 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_reactioncan modify⚠️ 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.
Alternatives in Search & Research
Compare →EXExaOfficialA
Connect AI agents to Exa for web search, content fetching, and multi-step research.
ARAtlassian Rovo MCP ServerOfficialA
Connect to Atlassian Jira, Confluence, Loom, and more to search, create, and manage your work.
MRMCP Registry ServerA
Publish and discover MCP servers via the official MCP Registry. Powered by HAPI MCP server.
Bitbybit CAD MCPA
Bitbybit 3D parametric CAD API, version-exact, for coding agents: search, describe, examples, guide
CACOTAL actions (cotal.ai)A
cotal.ai actions: product overview, site search, build log, feedback, Cloud waitlist, updates, calls
runxA
The governed runtime for agent skills. Search the catalog and inspect a skill before running it.