CLI
@rumoro-dev/cli on npm. The Rumoro API in your terminal, with browser sign-in, a live mention feed and MCP setup.
rumoro puts the Rumoro API in your terminal. Each endpoint is a noun:verb command, generated from the OpenAPI document. Three more commands, auth:*, mentions:watch and mcp:config, do what one request can't. It needs Node 22 or newer.
npm install -g @rumoro-dev/cli
rumoro --helpYou can also run it without installing, as in npx @rumoro-dev/cli mentions:search --relevant true.
Sign in
rumoro auth:loginThis opens the dashboard in your browser. A workspace owner approves once. The key, named after your computer, reaches the CLI over a local port only and is saved in ~/.rumoro/config.json (mode 600). Revoke it any time on the API keys page.
--scope readasks for a read-only key.--no-openprints the address instead. On a remote machine, approve in any browser and run therumoro auth:set --key …command the page shows.- Members who aren't owners save a key an owner created, with
auth:set.
There are three other ways to give the CLI a key. The first one wins.
rumoro keywords:list --api-key ref_... # for one command
export RUMORO_API_KEY=ref_... # in the environment, for CI
rumoro auth:set --key ref_... # saved on this computerauth:check shows the key's workspace and source, and auth:logout deletes it. To use another host, set --api-url, RUMORO_API_URL or auth:set --url. A key from rumoro api-keys:create --name reports --scope read can only run read commands.
Commands
Each area has a page with every command and flag. See keywords, mentions, people and segments, alerts and channels, analytics and account.
rumoro keywords:create --term "driftwood" --kind brand --platforms reddit,github
rumoro keywords:update kw_... --muted true
rumoro mentions:search --sentiment negative --limit 20
rumoro mentions:update mm_... --status done --note "Answered in the thread"
rumoro people:list --minFollowers 10000 --sort reach
rumoro analytics:summary --range 7d
rumoro alerts:create --name "Pricing questions" --mode instant --filter '{"intents":["pricing"]}' --channelIds dest_...- Ids are positional. Everything else is a flag with the API's field name.
- Every flag takes a value, including booleans (
--muted false). - Lists are comma-separated, objects are JSON, and
nullclears a field that allows it (--note null). --json '{...}'sends a whole body, and--json -reads it from stdin. Flags you add override fields in it.
Output
Output is JSON, compact when piped and indented on a terminal or with --pretty. --table prints lists in columns.
rumoro keywords:list --table
rumoro mentions:search --limit 5 | jq '.data[].post.url'
rumoro mentions:export --platform reddit --out reddit.csvAPI errors go to stderr as the error envelope and exit with 1. So does an unknown option or command. An invalid value or a missing required flag exits with 2 and a usage error, and a missing key with 2 and no_api_key. CSV exports print to stdout, or go to a file with --out.
Follow the feed
rumoro mentions:watch --platform github --relevant true --interval 30mentions:watch checks the newest mentions again and again and prints each new one as a line of JSON, oldest first. It takes the filters of mentions:search except --since, --until, --sort, --cursor and --limit. --from-start prints the current page first.
MCP setup
To connect an AI client to the MCP server, run mcp:config. It includes your key.
rumoro mcp:config # a claude mcp add command
rumoro mcp:config --client cursor # JSON for .cursor/mcp.json
rumoro mcp:config --client vscode # JSON for .vscode/mcp.jsonRestish
Restish is a general-purpose API command line. It can read the same OpenAPI document.
restish api configure rumoro https://api.rumoro.dev/v1/openapi.json