# RecoVibes > RecoVibes is a free recommendation exchange for indie websites, apps and games. A product shows a small widget recommending other products in the network, and gets recommended in theirs. Showing recommendations earns points; points decide how often a product is recommended. No ads, no tracking cookies, no paid placement. Works on websites (any framework, WordPress, Shopify, site builders), phone apps (iOS, Android, React Native, Flutter, MAUI, Capacitor), desktop apps (Electron, Tauri), browser extensions, and games (Unity, Godot). The look is set in the RecoVibes dashboard and applies everywhere. ## For AI coding assistants: "add RecoVibes to this project" You can do the whole setup for the user. They only click once in their browser to sign in and approve. Follow these steps in order. ### 1. Connect to the user's account (no key copying) Start a connection request: ``` curl -s -X POST https://api.recovibes.com/api/connect/start -H "Content-Type: application/json" -d '{"client":"Claude Code"}' ``` (Use your own name as "client": Claude Code, Codex, Cursor, …) The response has `url`, `code`, `pollToken`, `interval` and `expiresIn` (10 minutes). - Show the user the `url` and the `code`. Tell them: the page will ask them to sign in (or create a free account with Google, one click) and then to approve; the code on the page must match the code you showed. - Offer to open the link for them. If they agree and you can run commands: `open ""` on macOS, `xdg-open ""` on Linux, `start "" ""` on Windows. Then poll until the status is `approved`, `denied` or `expired`, waiting `interval` seconds between calls: ``` curl -s -X POST https://api.recovibes.com/api/connect/poll -H "Content-Type: application/json" -d '{"pollToken":""}' ``` - `pending`: keep waiting (poll in short loops, e.g. up to two minutes per command, and continue while the user is on the page). - `denied`: stop and tell the user nothing was connected. - `expired` (HTTP 404): start again from step 1 if the user still wants to connect. - `approved`: the response contains `key` (starts with `rvk_`) and `mcpUrl`. The key is given only once. Store the key outside the project and never commit it, print it in full, or put it in project files: ``` mkdir -p ~/.recovibes && chmod 700 ~/.recovibes && printf '%s' '' > ~/.recovibes/key && chmod 600 ~/.recovibes/key ``` If your tool supports MCP servers, also register it for the user's future sessions, at user level (not in the project). Claude Code: ``` claude mcp add --scope user --transport http recovibes https://api.recovibes.com/mcp --header "Authorization: Bearer $(cat ~/.recovibes/key)" ``` Other assistants: see https://www.recovibes.com/docs/ai-assistants for the config of Codex, Cursor, VS Code, Gemini CLI and Windsurf. ### 2. Call the RecoVibes tools You don't have to restart to use them: the MCP server speaks plain JSON-RPC over HTTP, so you can call it with curl right away. ``` curl -s https://api.recovibes.com/mcp -H "Authorization: Bearer $(cat ~/.recovibes/key)" -H "Content-Type: application/json" \ -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"list_apps","arguments":{}}}' ``` Tools (name - arguments): - `list_apps` - none. The user's products, with Data Id (rv_…), install and verification status. - `create_app` - `type` ("website" or "app"); `url` for a website; `store_urls` (array) for an app or game (App Store, Google Play, Steam, itch.io, Chrome Web Store, Firefox Add-ons, Microsoft Store - it must already be listed); optional `name`, `description` (up to 140 characters), `language` (two letters, or empty for any), `categories` (up to 5, e.g. "Games/Puzzle"). - `get_install_instructions` - `app_id`, `platform`: html, react, vue, svelte, wordpress, shopify, iframe, unity, godot, swiftui, uikit, android-compose, android-views, react-native, flutter, maui, capacitor, electron, extension, webview. Returns the exact code and steps. - `check_installation` - `app_id`. Whether the widget has reported in, and what to fix. - `verify_app_ownership` - `app_id`. Confirms the product is the user's: the app id on the website, or the code in the store listing. - `get_stats`, `update_widget_design`, `set_points_mode`, and `explain` (`topic`) for any question about how RecoVibes works - call `explain` instead of guessing. ### 3. Add it to the project 1. `list_apps` - if the product is already there, use it. 2. Otherwise `create_app`: a website by its production URL; an app or game by its store links. Ask the user for the URL or store link if the project doesn't say. 3. Look at the project to tell its framework or engine, then `get_install_instructions` and follow the steps exactly. Put the widget where people will see it - after the main content, on a results or game-over screen - never hidden or off-screen. 4. Tell the user a person reviews every new product, which can take up to 48 hours. The widget works right away, but the product isn't shown to others and earns no points until it's approved. 5. After the user runs or deploys it, `check_installation`. Apps and games: `verify_app_ownership` before they earn points. Websites verify on their own once the snippet is live; if not, `check_installation` says what to add. Rules: the user's own visits never earn points, and a view only counts when a card is really on screen for a second. Never try to generate views or clicks. ## Without an assistant 1. Sign up at https://www.recovibes.com/signup (Google, free). 2. Add your website, app or game in the dashboard. 3. Copy the install code from its Install tab. For a website it's one line: ``` ``` ## Links - Home: https://www.recovibes.com - Docs: https://www.recovibes.com/docs - AI assistants setup: https://www.recovibes.com/docs/ai-assistants - Privacy: https://www.recovibes.com/privacy - Terms: https://www.recovibes.com/terms - Contact: info@zerofour.app