Skip to content

MCP for AI agents

MCP gives your AI client tools to work with VibeVO: read accounts, campaigns and posts, manage content factories and prepare reports.

Connect a client

You need Node.js 20+ and a VibeVO API key. Viewing requires the read scope; changes require write and access to the relevant feature. Create an API key.

Store the key only in private configuration or VIBEVO_API_KEY. Never paste it into a chat or commit it. Operations affect real data.

Client configuration

Codex · CLI / IDE

Add this to ~/.codex/config.toml. Set VIBEVO_API_KEY in the environment that starts Codex. This works with the CLI and IDE extension. Restart the client and check /mcp.

~/.codex/config.toml
[mcp_servers.vibevo]
command = "npx"
args = ["-y", "@vibevo/mcp@latest"]
env_vars = ["VIBEVO_API_KEY"]
Client documentation · Codex
Claude Desktop / Cursor

Claude Desktop: Settings → Developer → Edit Config. Cursor: personal ~/.cursor/mcp.json. Merge the block into your existing configuration, replace REPLACE_WITH_YOUR_API_KEY locally and restart the client.

claude_desktop_config.json / ~/.cursor/mcp.json
{
  "mcpServers": {
    "vibevo": {
      "command": "npx",
      "args": [
        "-y",
        "@vibevo/mcp@latest"
      ],
      "env": {
        "VIBEVO_API_KEY": "REPLACE_WITH_YOUR_API_KEY"
      }
    }
  }
}

If Windows cannot find npx, use command: cmd and args: ["/c", "npx", "-y", "@vibevo/mcp@latest"].

Client documentation · Claude DesktopClient documentation · Cursor

Verify the connection

Ask the agent to call vibevo_whoami and verify the key owner and permissions. For 401, check your key; for 403, check scopes and feature access.

Capabilities and tools

Tool availability depends on the published package, role and key permissions. This is a reference; the connected server supplies the exact input schemas.

Identity and wallet

Tool reference 3
  • vibevo_whoamiRead
  • vibevo_get_walletRead
  • vibevo_list_wallet_transactionsRead

Social accounts and verification

Tool reference 10
  • vibevo_list_social_accountsRead
  • vibevo_get_social_account_verificationRead
  • vibevo_get_social_account_statsRead
  • vibevo_add_social_accountWrite
  • vibevo_connect_social_accountWrite
  • vibevo_start_social_account_verificationWrite
  • vibevo_check_social_account_verificationWrite
  • vibevo_start_social_account_stats_sessionWrite
  • vibevo_upload_social_account_statsWrite
  • vibevo_refresh_social_account_statsWrite

Campaigns and posts

Tool reference 14
  • vibevo_list_offersRead
  • vibevo_list_my_postsRead
  • vibevo_list_campaignsRead
  • vibevo_get_campaignRead
  • vibevo_get_campaign_analyticsRead
  • vibevo_list_campaign_postsRead
  • vibevo_list_campaign_creatorsRead
  • vibevo_list_campaign_tracking_linksRead
  • vibevo_list_campaign_post_proofsRead
  • vibevo_get_campaign_post_proofRead
  • vibevo_download_campaign_proofs_zipRead
  • vibevo_list_my_post_proofsRead
  • vibevo_get_my_post_proofRead
  • vibevo_submit_postWrite

Factories, accounts and tags

Tool reference 11
  • vibevo_list_factoriesRead
  • vibevo_get_factory_summaryRead
  • vibevo_list_factory_accountsRead
  • vibevo_list_factory_postsRead
  • vibevo_get_factory_accountRead
  • vibevo_create_factoryWrite
  • vibevo_patch_factoryWrite
  • vibevo_add_factory_itemsWrite
  • vibevo_patch_factory_accountWrite
  • vibevo_list_factory_tagsRead
  • vibevo_list_factory_tag_groupsRead

Add a tag to an account

Tags belong to monitored factory accounts. Use them to filter accounts, their posts and aggregate statistics. Your tag list is shared across factories.

  1. Find a factory with vibevo_list_factories, then the account with vibevo_list_factory_accounts. Use factoryAccountId from the response, not a social-network ID.
  2. Read current tags. To add a tag, combine existing and new names without duplicates and send the full list to vibevo_patch_factory_account.
  3. Read the account again to verify. vibevo_list_factory_tags lists your available tags; vibevo_list_factory_tag_groups provides per-tag factory statistics.

A ready-to-use request to add a tag without removing existing tags. Replace the factory name, account and tag before sending.

Example arguments · replace the IDs and tags
vibevo_patch_factory_account
{
  "id": 1,
  "factoryAccountId": 42,
  "tags": [
    "Brand",
    "Autumn"
  ]
}
tags replaces the complete list. [] removes all account tags. Up to 20 tags, each 1–64 characters. For new accounts use tags in vibevo_add_factory_items; do not re-add an existing account.

Monitoring and tokens

Tool reference 9
  • vibevo_refresh_factory_accountWrite
  • vibevo_get_monitoring_walletRead
  • vibevo_get_factory_creditsRead
  • vibevo_get_factory_credit_usageRead
  • vibevo_list_factory_credit_historyRead
  • vibevo_update_factory_scan_settingsWrite
  • vibevo_set_factory_monitoringWrite
  • vibevo_refresh_factory_postWrite
  • vibevo_buy_monitoring_tokensWrite

Public reports

Tool reference 5
  • vibevo_list_factory_reportsRead
  • vibevo_create_factory_reportWrite
  • vibevo_revoke_factory_reportWrite
  • vibevo_restore_factory_reportWrite
  • vibevo_delete_factory_reportWrite

ER and saves

ER = 100 × (likes + comments) / views, rounded to two decimals. It uses the latest complete observations of views, likes and comments. Aggregates use summed counters rather than an average of post percentages. ER is null with zero views or no complete observation. Saves and reposts are excluded from the formula.

Campaign lists, details, analytics, posts and creators return engagement with scope: accepted_video. Only accepted video posts are included; a post row covers that post and a creator row covers that account. Use engagement.views as the denominator: the existing totalViews may include other statuses or represent paid views.

Factories expose canonical ER in metrics.er (totals.er in a summary) and saves in metrics.saves. History points and snapshotBaseline contain the same fields. The existing top-level er retains its earlier semantics; new clients use the nested field. Missing new fields in an older response do not prove a measurement.

saves is a separate last-known counter. Automatic sources are TikTok collectCount and X bookmarkCount, only when the provider returns a valid value. Other platforms have no value without an actual measurement. 0 means measured zero; null means unavailable. Do not replace null with zero. Legacy campaign history does not prove raw views: new ER becomes available after a normal scan, without a mass paid rescan.

erCoverage and savesCoverage contain measuredPosts / totalPosts for the entire selected cohort before pagination. Partial coverage means a partial aggregate. updatedAt and savesUpdatedAt are the oldest included measurement times; null means unknown freshness. Carrying an old counter into a new snapshot does not refresh its time. ER and saves chart values are absolute snapshots, without a growth mode.

Report hiddenFields accepts saves: the server removes its count, coverage and measurement time. Hiding views, likes, comments or er also removes dependent ER; hiding posts removes coverage, and lastScanned removes measurement times. These rules apply to summaries, rows, history and baselines.

{
  "engagement": {
    "scope": "accepted_video",
    "views": 100,
    "likes": 0,
    "comments": 0,
    "er": 0,
    "saves": null,
    "erCoverage": { "measuredPosts": 1, "totalPosts": 2 },
    "savesCoverage": { "measuredPosts": 0, "totalPosts": 2 },
    "updatedAt": "2026-10-09T08:00:00.000Z",
    "savesUpdatedAt": null
  }
}

Update MCP

The configuration above uses @latest: the published npm version, not a GitHub branch. If pinned to an old version, replace it with @latest, then stop and restart the MCP server or fully restart your AI client. Updating the website does not update an already running MCP process.

Check the latest published version:
npm view @vibevo/mcp version

Refresh your client's tool list after restarting. Tag support requires vibevo_list_factory_tags and the tags parameter in vibevo_patch_factory_account (available since 0.3.0). A tool not yet published cannot be obtained by updating npm.

Agent prompt

Copy and send to your agent after connecting MCP. Includes documentation and npm links, plus rules for handling your data.

MCP and creator catalog
MCP keeps its 100 existing tools; no avatar tool is added. Manual channel creation accepts a safe canonicalUrl (legacy handle-only input remains for Twitch/Kick). The compatible publishAfterApproval field publishes the current revision immediately when true and keeps the preview private when false. The published 0.7.0 package is not rewritten; availability of new fields and the package version are confirmed by a separate release. Anonymous catalog and page reads remain available; other participant operations require an API key, scope, role, and object access. The JWT avatar refresh route is not available through MCP. Tools do not send whole files as text or expose private financial fields. Open endpoint reference

Was this article helpful?

Updated: 2026-09-23

MCP for AI agents · VibeVO | VibeVO Docs