Subscribe

Sign in to the MCP page, select Upgrade Plan, choose Max and a billing period, and complete checkout. Confirm your membership and available PTS after payment.

Subscribe to Max on NewsLiquid · Plans and payment

News and Twitter WSS cost 1 PTS per 5 unique messages. Duplicate pushes of the same news item or tweet across strategies incur no additional charge.

Install a Skill

Install OpenNews or OpenTwitter in a client that supports Skills. These commands require Node.js with npx.

FeedInstall command
News · OpenNewsnpx skills add 6551Team/opennews-mcp
Twitter · OpenTwitternpx skills add 6551Team/opentwitter-mcp

Connect

Once installed, ask your AI client:

Use the OpenNews Skill to connect to news WSS and subscribe to BTC and ETH news.

For Twitter, first add your target accounts in Twitter monitoring, then ask your client to use the OpenTwitter Skill to connect to their live events.

For your own application, see the official connection URLs, subscription parameters, and message formats: News WSS · Twitter WSS.

Connection demo

Choose the news or Twitter feed and copy the Python example. Requires Python 3.10+.

1

Set the token from the MCP page in your local terminal.

Environment variable
export OPENNEWS_TOKEN="YOUR_TOKEN"
2

Save this example as wss_demo.py.

wss_demo.py
import asyncio
import json
import os
from contextlib import suppress
from urllib.parse import quote
from websockets.asyncio.client import connect

async def heartbeat(ws):
    while True:
        await ws.send("ping")
        await asyncio.sleep(20)

async def main():
    token = quote(os.environ["OPENNEWS_TOKEN"], safe="")
    url = f"wss://ai.6551.io/open/news_wss?token={token}"
    subscription = {"jsonrpc": "2.0", "id": 1, "method": "news.subscribe",
        "params": {"coins": ["BTC", "ETH"], "engineTypes": {"news": []}}}
    async with connect(url, ping_interval=None) as ws:
        await ws.send(json.dumps(subscription))
        keepalive = asyncio.create_task(heartbeat(ws))
        try:
            async for message in ws:
                if message != "pong":
                    print(json.dumps(json.loads(message), ensure_ascii=False))
        finally:
            keepalive.cancel()
            with suppress(asyncio.CancelledError):
                await keepalive

if __name__ == "__main__":
    try:
        asyncio.run(main())
    except KeyboardInterrupt:
        pass
3

Run it and check the response.

Run
python -m pip install "websockets>=14,<18"
python wss_demo.py

A successful subscription returns result.success = true. Matched events then appear as JSON. Twitter uses your monitored accounts; press Ctrl+C to stop.