Kampalo

com.kampalov0.3.0更新于 Oct 5, 2026

Google Ads, Meta Ads, GA4, Search Console and Shopify insights, alerts, ROAS rules and ad actions.

已验证Streamable HTTP可网页运行Data & AnalyticsBusiness & Commerce

概览

AI 生成的概览

让助手读取同步的 Google Ads、Meta Ads、GA4、Search Console 和 Shopify 营销数据,并执行 Kampalo 的提醒、ROAS 规则和广告暂停操作。

功能
连接 Kampalo 托管的 MCP 服务器,读取同步的营销数据,并生成 Google 与 Meta、SEO、GA4 及自然流量的对比简报。它提供 automate_* 工具,可提议暂停表现不佳的广告系列、确认该提议、创建广告和 SEO 提醒、创建试运行的 ROAS 自动化规则,以及生成报告 JSON。规则和提醒的写入仅限管理员,实际暂停需要基于目录的提议并显式确认。
适用场景
当助手需要就 Kampalo 中的付费与自然营销表现生成简报,或管理 Kampalo 的提醒和 ROAS 暂停规则时使用。它不用于连接广告账户、修改预算、创建广告系列,也不写入 Shopify 或 TikTok 数据。
运行要求
远程 streamable HTTP 端点 be.kampalo.com/mcp。认证使用 Authorization Bearer 头,携带个人 Kampalo API 密钥(KAMPALO_MCP_API_KEY)或运营方密钥;Claude 插件改用 OAuth 登录。除非个人密钥已绑定用户,工具还需要 Kampalo 的 user_id 或 user_email。需要能访问 Kampalo 主机的网络。
安装前请注意
API 密钥属于机密,应通过环境变量或请求头提供,不要外泄。确认操作会写入实际变更:确认暂停会把 Google 或 Meta 上的广告系列置为 PAUSED,启用实时规则需要 confirm_live=true。提醒和自动化规则的写入仅限管理员。只读用户无法确认操作或管理规则。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Kampalo,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "kampalo": {
      "type": "http",
      "url": "https://be.kampalo.com/mcp"
    }
  }
}

README

Kampalo plugin for Grok Build

Grok Build plugin that connects to Kampalo’s hosted FastMCP server. Grok can read synced ads/SEO/GA4 data and run the automations Kampalo already has: pause proposals, ads/SEO alerts, ROAS pause rules, and report JSON.

This plugin does not add product APIs. It wires Grok to python manage.py run_mcp_server:

  • Read tools from marketing/agents/suites.py (synced Postgres)
  • automate_* tools from marketing/agents/automation_backend.py (same services as /api/marketing/actions/, alert rules, automation rules, reports)

In-app Kai (LangGraph) stays read-only. Only this MCP catalog has automate_*.

Installation

After the plugin is listed in the xAI marketplace, in Grok Build run /plugin, search Kampalo, and install.

Until then, install from the plugin repo:

text
grok plugin install Tekreign/kampalo-cursor-plugin

Set KAMPALO_MCP_API_KEY to your personal kmp_… key from Kampalo Settings → API Keys (Starter and Enterprise). On first tool use Grok calls https://be.kampalo.com/mcp with Authorization: Bearer ….

Every tool also needs a Kampalo user_id or user_email. Ask the user if neither is known. A personal key already binds your user, so you can omit both.

Cursor

The same repo ships Cursor packaging next to the Grok files. Both use the same skills/ and the same MCP server.

Grok BuildCursor
.grok-plugin/plugin.json.cursor-plugin/plugin.json
.mcp.json (${KAMPALO_MCP_API_KEY})mcp.json (${env:KAMPALO_MCP_API_KEY})
  1. Generate a key in Kampalo Settings → API Keys.

  2. Set it in the environment Cursor starts from, then restart Cursor:

    powershell
    setx KAMPALO_MCP_API_KEY "kmp_..."
    bash
    export KAMPALO_MCP_API_KEY="kmp_..."   # in ~/.zshrc or ~/.bashrc
  3. Install the plugin from this repo in Cursor. Check Settings → MCP shows kampalo connected, then ask: Brief Google vs Meta in Kampalo.

Without the plugin, the same server works from a project or user ~/.cursor/mcp.json by copying the kampalo entry from mcp.json.

Claude (claude.ai, Cowork, Claude Code)

The Claude plugin lives in claude/ and is what the Claude directory lists. It uses OAuth: Claude asks you to sign in to Kampalo the first time, so there is no KAMPALO_MCP_API_KEY to set. Its skills are a copy of skills/ without the user_id / user_email step, because the signed-in account is applied automatically. Keep both copies in sync when you edit a skill.

Install in Claude Code from this repo's marketplace (.claude-plugin/marketplace.json points at ./claude):

text
/plugin marketplace add Tekreign/kampalo-cursor-plugin/plugin install kampalo@kampalo

Run /mcp, choose kampalo, and sign in to Kampalo when prompted.

Network and credentials

WhatValue
MCP endpointhttps://be.kampalo.com/mcp (streamable HTTP)
AuthAuthorization: Bearer ${KAMPALO_MCP_API_KEY}
SecretPersonal kmp_… key (Settings → API Keys), or the operator MCP_API_KEY. Required when the server has auth enabled (DEBUG=False).
Not this URLhttps://be.kampalo.com/api — Django REST, not MCP

The plugin talks only to that MCP host. It does not read local .env / SSH keys or send telemetry elsewhere.

Local Compose (docker compose up) exposes MCP at http://127.0.0.1:8100/mcp. To point Grok at it, override the server URL in .mcp.json for that session.

What Grok can do

With MCP up and a Kampalo user who can mutate data (admin, or enterprise manager/marketer) for confirms. Alert/automation rule writes are admin only.

  1. Brief Google vs Meta, SEO, GA4, and organic Page/IG from synced stats
  2. Propose pausing a weak selected campaign
  3. Confirm that proposal (confirm=true) — writes PAUSED to Google or Meta
  4. Create ads alerts (ROAS / CPA / spend pace) and SEO/AEO alerts
  5. Create a dry-run ROAS automation rule; enable live only with confirm_live=true
  6. Generate a performance report JSON (no PDF bytes over MCP)

What it cannot do

  • Connect OAuth, change budgets, create campaigns, or write Shopify/TikTok
  • Pause without a catalog-backed proposal + explicit confirm
  • Act as a view-only user for confirms or rule admin
  • Invent metrics if MCP is down or the DB has no rows

Layout

text
kampalo-cursor-plugin/├── .grok-plugin/plugin.json├── .mcp.json├── .cursor-plugin/plugin.json├── mcp.json├── .claude-plugin/plugin.json├── .claude-plugin/marketplace.json├── skills/campaign-performance-brief/├── skills/automate-kampalo-work/├── assets/logo.svg├── LICENSE└── README.md

Skills

SkillWhen
campaign-performance-briefRead synced Google Ads, Meta Ads, Search Console, GA4, Page/IG
automate-kampalo-workPropose/confirm pauses, alerts, ROAS rules, report JSON

Example prompts

Read

Use my Kampalo email [email protected]. Brief Google vs Meta. Which campaigns have the worst ROAS?

Propose (no live pause)

Propose pausing the worst ROAS Google campaign. Do not confirm yet.

Expect automate_propose_pause and a pending action_id. The live campaign status must stay ENABLED.

Confirm (live pause)

Confirm pause for action <id>.

Expect automate_confirm_action with confirm=true. Campaign becomes PAUSED (needs valid Google/Meta tokens).

Watchdog

Create a dry-run rule: pause Google campaigns if ROAS stays below 1 for 3 days with at least $10 spend. Do not enable live.

Expect automate_upsert_automation_rule with dry_run=true, is_active=false.

Failure

Stop MCP and ask again. The bot must not claim a pause or a saved rule.

xAI marketplace entry (when submitting)

Remote source, SHA-pinned. Do not vendor files into xai-org/plugin-marketplace. After pushing this folder to a public repo:

bash
git ls-remote https://github.com/Tekreign/kampalo-cursor-plugin.git HEAD

Add one object to their .grok-plugin/marketplace.json:

json
{  "name": "kampalo",  "description": "Kampalo ads and SEO workspace for Grok Build. Brief synced Google Ads, Meta Ads, GA4, and Search Console; propose and confirm campaign pauses; manage ads/SEO alerts and ROAS pause rules; generate report JSON.",  "category": "development",  "source": {    "source": "url",    "url": "https://github.com/Tekreign/kampalo-cursor-plugin.git",    "sha": "<40-char lowercase commit sha>"  },  "homepage": "https://app.kampalo.com",  "keywords": ["kampalo", "kampalo ads", "kampalo google ads", "kampalo meta ads", "kampalo kai"],  "domains": ["kampalo.com", "app.kampalo.com", "be.kampalo.com"]}

Then in that fork: python3 scripts/generate-plugin-index.py and python3 scripts/validate-catalog.py. xAI flags branded plugins sourced from a personal GitHub account — move the plugin repo under a Kampalo org before the PR if possible.

License

MIT

来源:README.md,提交 a7f261d

工具

0
工具元数据尚未被收录。

版本历史

1
  1. v0.3.0最新Oct 5, 2026