@prowl-ai/prowl-skill 0.5.6 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,108 @@
1
1
  # Changelog
2
2
 
3
+ ## v0.6.0 – 2026-09-29
4
+
5
+ Package `@prowl-ai/prowl-skill` 0.6.0 · plugins `prowl` 0.5.0, `prowl-cli` 0.3.0.
6
+
7
+ Real-world market data for your agents. The product changed how it describes itself on
8
+ 2026-09-29, and every surface this repository publishes – both skills, four plugin
9
+ manifests, the marketplace and the README – now says the same thing the product does.
10
+
11
+ ### Changed
12
+
13
+ - **The headline is market data, and the report is the deep mode.** Both skills lead
14
+ with one MCP endpoint and 444 market data tools across 17 providers (search, ads,
15
+ SEO, app stores, reviews, social, trends, finance), each call billed on its own from
16
+ one USD wallet, every number returned with the tool that produced it.
17
+ `prowl_analyze` is described as what it is – a cross-checked report when one call is
18
+ not enough (up to 16 intelligence modules, 8 without a subscription) – rather than
19
+ as the product. "Market-intelligence tools" becomes "market data tools" everywhere.
20
+ The skill descriptions widen their "Use when" to the product's use cases, including
21
+ trends, app store and review data, and stock quotes and market news.
22
+ - **The catalogue count is 444.** `https://prowl.chat/mcp/skill.md` serves
23
+ `→ 444 API tools` (read 2026-09-29). Eight files said 448, and `npm run check:tools`
24
+ listed each of them. The provider count moves 15 → 17 and "60+ SERP engines" becomes
25
+ 102 SearchAPI engines, the figures `prowl-app`'s `mcp_server/_contracts.py` holds.
26
+ - **The starter credit is $15, not $5.** The skill and the README quoted $5, the
27
+ figure from before 2026-09-27; since then signup credit equals one basic report's
28
+ hold.
29
+ - **`brandColor` is `#3f7d5f`** in both Codex manifests. The acid green `#00ff41` is
30
+ retired from the brand.
31
+ - **`defaultPrompt` leads with data**: "Pull Google Trends and news for a keyword"
32
+ replaces "Run a competitive analysis on a domain"; keywords `market-data` and
33
+ `market-research` replace `market-intelligence` and `competitive-analysis`.
34
+ - **The `prowl-cli` page documents CLI `0.3.0`**, whose `--help` states a $5.00 basic
35
+ provider-cost cap (was $2.50) and the wallet holds per tier ($15, $24, $54). The
36
+ page now points at the public docs page that publishes those figures, where it used
37
+ to say none did. **Release `@prowl-ai/cli` 0.3.0 to npm before this version:** the
38
+ release job runs `check-cli.js --release`, which fails on a page that documents a CLI
39
+ npm does not serve.
40
+
41
+ ### Fixed
42
+
43
+ - **`check:tools` reads the hosted document in either wording.** Its second server
44
+ anchor matched only `<n> marketing intelligence API tools`; the hosted document is
45
+ moving to `<n> market data tools`, which would have left one anchor and a check that
46
+ says less than it appears to. It now takes both, and the stated-count pattern takes
47
+ both, so a stale figure in the new wording is still caught. Fixtured both ways in
48
+ `test/tool_count_test.js` and `test/contract_test.js`.
49
+ - **`CHANGELOG.md` is no longer read as a current claim.** Every past release states
50
+ the count it shipped with, so the check was red on history. It is skipped by name
51
+ (`HISTORICAL_FILES`), not by a guess about tense.
52
+
53
+ ## v0.5.7 — 2026-08-23
54
+
55
+ Package `@prowl-ai/prowl-skill` 0.5.7 · plugins `prowl` 0.4.4, `prowl-cli` 0.2.6
56
+ (unchanged).
57
+
58
+ A first run with no key opened a browser and left the operator holding a callback into
59
+ a port that had already died. It now refuses to start, and says what to do instead.
60
+
61
+ ### Fixed
62
+
63
+ - **The MCP launcher no longer strands the operator in a half-finished OAuth flow.**
64
+ With no API key configured, `plugins/prowl/.mcp.json` used to hand `mcp-remote` an
65
+ empty `Authorization: Bearer ` header. The server rejects that, and `mcp-remote`
66
+ falls back to OAuth — which opens a browser and starts a `localhost` listener to
67
+ catch the callback. An MCP server spawned at agent startup does not survive long
68
+ enough to be there when consent completes: the listener is gone, the redirect hits a
69
+ dead port, and the operator is left holding a URL with an authorization code that
70
+ expires before anything can be done with it.
71
+
72
+ Measured on one machine on 2026-08-22: two such flows in a single day, both
73
+ stranded. The second left `~/.mcp-auth/mcp-remote-0.1.43/…_lock.json` recording
74
+ `{"pid": 68661, "port": 4333}` for a process that no longer existed.
75
+
76
+ The launcher now resolves the key, and **refuses to start without one** — printing
77
+ the two supported ways to supply it and exiting `78` (`EX_CONFIG`, `sysexits.h`)
78
+ rather than reaching `mcp-remote` at all. A key that is present but empty or
79
+ whitespace-only counts as absent.
80
+
81
+ - **The README said 22 MCP tools; the server registers 23.** `npm run check:contract`
82
+ reads the count off `https://prowl.chat/mcp/` and had no claim in the README to check
83
+ it against — the number sat one line below a heading no gate reads. The skill page
84
+ already said 23.
85
+
86
+ ### Added
87
+
88
+ - **`test/mcp_launch_test.js`** — 12 checks that execute the real `.mcp.json` launcher
89
+ rather than reading it. A fake `npx` on the launcher's own PATH captures the argv, so
90
+ the suite can assert both halves: that no key means `npx` is never reached, and that
91
+ each documented key source (`PROWL_MCP_TOKEN`, the plugin file, the Codex file)
92
+ reaches `mcp-remote` carrying that exact key, in that precedence.
93
+
94
+ Shadowing `npx` by PATH alone does not work here — `sh -lc` is a login shell, and on
95
+ macOS `/etc/profile` runs `path_helper`, which pushes an injected PATH entry to the
96
+ end. A `.profile` in the fake `HOME` is sourced afterwards and does win; that is what
97
+ the suite uses. Nothing in it touches the network.
98
+
99
+ Verified to have teeth: against the previous launcher, 6 of the 12 checks fail, and
100
+ the failure output is the defect itself — `'Authorization: Bearer '`. That proof is
101
+ now the fourteenth plant in `scripts/negative-self-test.js`, so every CI run removes
102
+ the refusal from `.mcp.json` and requires the suite to go red on `npx ran without a
103
+ key` — a suite that quietly stopped checking this would otherwise report the same
104
+ green as one that still does.
105
+
3
106
  ## v0.5.6 — 2026-08-16
4
107
 
5
108
  Package `@prowl-ai/prowl-skill` 0.5.6 · plugins `prowl` 0.4.3 (unchanged), `prowl-cli`
package/README.md CHANGED
@@ -1,15 +1,17 @@
1
1
  # Prowl Plugin
2
2
 
3
- **One MCP. 448 market-intelligence tools for your agent.**
3
+ **Real-world market data for your agents.** One MCP endpoint, 444 market data tools.
4
4
 
5
5
  [![npm](https://img.shields.io/npm/v/@prowl-ai/prowl-skill?style=flat-square&color=cb3837&logo=npm)](https://www.npmjs.com/package/@prowl-ai/prowl-skill)
6
6
  [![validate](https://img.shields.io/github/actions/workflow/status/PROWL-AI/prowl-skill/validate.yml?branch=main&style=flat-square&label=validate)](https://github.com/PROWL-AI/prowl-skill/actions/workflows/validate.yml)
7
7
  [![Live](https://img.shields.io/badge/prowl.chat-live-00c853?style=flat-square)](https://prowl.chat)
8
8
  [![MCP](https://img.shields.io/badge/MCP-prowl.chat%2Fmcp-6e40c9?style=flat-square)](https://prowl.chat/mcp)
9
- [![Tools](https://img.shields.io/badge/tools-448-0969da?style=flat-square)](https://prowl.chat/mcp/skill.md)
9
+ [![Tools](https://img.shields.io/badge/tools-444-0969da?style=flat-square)](https://prowl.chat/mcp/skill.md)
10
10
  [![License](https://img.shields.io/badge/license-MIT-blue?style=flat-square)](LICENSE)
11
11
 
12
- [Prowl](https://prowl.chat) is a single MCP endpoint that gives any AI agent (Cursor, Claude Code, Codex, or your own stack) **448 market-intelligence tools across 15 providers** — SEO & backlinks, 60+ SERP engines, ad libraries, web scraping, reviews, AI/LLM mention tracking — plus the full Prowl research pipeline. Your agent calls real data instead of guessing, billed pay-as-you-go from a USD wallet.
12
+ [Prowl](https://prowl.chat) is a single MCP endpoint that gives any AI agent (Claude Code, Cursor, Codex or your own stack) **444 market data tools across 17 providers**: search (102 SearchAPI engines), ads, SEO and backlinks, app stores, reviews, social, trends and finance. The agent calls what it needs through `prowl_search_tools` → `prowl_tool_info` → `prowl_call_tool`, each call is billed on its own from one USD wallet, and every number comes back with the tool that returned it.
13
+
14
+ One call for one number. A report when one call is not enough: `prowl_analyze` plans many calls, cross-checks numeric claims against independent tools and composes the result. No agent of your own? Ask Prowl Agent on [prowl.chat](https://prowl.chat), which runs on the same tools.
13
15
 
14
16
  This repo is the **installable plugin**: a namespaced `/prowl:*` skill plus a ready-made MCP config. Install it and your coding agent wires up the rest itself.
15
17
 
@@ -31,7 +33,7 @@ Install either or both — the MCP plugin for agent tool calls, the CLI plugin f
31
33
 
32
34
  ### 1. Get a token (human, one time)
33
35
 
34
- 1. Sign up at <https://prowl.chat> ($5 starter credit, no card).
36
+ 1. Sign up at <https://prowl.chat> ($15 starter credit, no card).
35
37
  2. Optionally top up the wallet.
36
38
  3. Generate a `prowl_...` API key under **MCP Home → API keys & config** (shown once).
37
39
 
@@ -97,6 +99,8 @@ Then ensure `[plugins."prowl@prowl"] enabled = true` in `${CODEX_HOME:-$HOME/.co
97
99
 
98
100
  The bundled `.mcp.json` connects to `https://prowl.chat/mcp` via `mcp-remote`, reading the token from `PROWL_MCP_TOKEN` or `~/.prowl/prowl_mcp_token`.
99
101
 
102
+ With no key in either place the server **refuses to start** — it prints the two ways to supply one and exits `78` (`EX_CONFIG`). It deliberately does not fall through to `mcp-remote`'s OAuth: that opens a browser and waits on a `localhost` callback, and an MCP server started by an agent is killed long before the consent screen comes back, leaving the operator holding a redirect into a dead port.
103
+
100
104
  ### Manual MCP config (any client)
101
105
 
102
106
  Configure a Streamable HTTP MCP server at `https://prowl.chat/mcp` with header `Authorization: Bearer prowl_YOUR_KEY`. See <https://prowl.chat/mcp/install.md> for per-client snippets (Cursor, Claude Code, Codex, generic).
@@ -107,7 +111,7 @@ Configure a Streamable HTTP MCP server at `https://prowl.chat/mcp` with header `
107
111
  curl https://prowl.chat/mcp/health
108
112
  ```
109
113
 
110
- Then, from your agent, run `prowl_list_tools` (free) → 448 tools grouped by category.
114
+ Then, from your agent, run `prowl_list_tools` (free) → 444 tools grouped by category.
111
115
 
112
116
  ## The status widget
113
117
 
@@ -137,10 +141,10 @@ pruned after seven days, and the plugin never writes to your Claude Code setting
137
141
 
138
142
  ## What your agent gets
139
143
 
140
- - **22 MCP tools** front the whole catalog — discovery and schema lookup are free; only data calls are metered.
144
+ - **23 MCP tools** front the whole catalog — discovery and schema lookup are free; only data calls are metered.
145
+ - **Reports, when one call is not enough** – `prowl_analyze` plans the calls and composes up to 16 intelligence modules (8 without a subscription). A typed evidence ledger extracts claims, attacks them adversarially, then gap-fills what survives. Contradictions and refuted claims ship inside the report.
141
146
  - **3 execution modes** for `prowl_analyze` — `basic` (20–100 calls, 30–90s), `deep` (40–300, 3–5 min, needs Exploit+) and `max` (60–400, 5–10 min, needs Blackops+). A key without the subscription is downgraded to `basic` rather than refused.
142
147
  - **8 playbooks** — `geo-visibility-audit`, `competitor-teardown`, `content-engine`, `local-and-reputation`, `mobile-aso`, `amazon-marketplace`, `idea-validation`, `channel-economics-audit`.
143
- - **Verified reports** — a typed evidence ledger extracts claims, attacks them adversarially, then gap-fills what survives. Contradictions and refuted claims ship inside the report.
144
148
  - **Artifacts and exports** — infographic, PDF, PPTX, audio brief and video from `prowl_generate_artifact`; Markdown and HTML from `prowl_export_report`. Both read the report cached against the `session_id` that produced it.
145
149
 
146
150
  Prefer a terminal? Install the `prowl-cli` plugin above, or use [`@prowl-ai/cli`](https://github.com/PROWL-AI/prowl-cli) directly.
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@prowl-ai/prowl-skill",
3
- "version": "0.5.6",
3
+ "version": "0.6.0",
4
4
  "description": "The Prowl plugin: install/usage skills, the hosted MCP config, and the live status widget that makes a running Prowl call, its progress and its cost visible in the terminal. This package is the installer CLI.",
5
5
  "keywords": [
6
6
  "prowl",
7
7
  "mcp",
8
- "market-intelligence",
9
- "competitive-analysis",
8
+ "market-data",
9
+ "market-research",
10
10
  "seo",
11
11
  "claude-code",
12
12
  "plugin",
@@ -2,8 +2,8 @@
2
2
  "$schema": "https://json.schemastore.org/claude-code-plugin-manifest.json",
3
3
  "name": "prowl",
4
4
  "displayName": "Prowl",
5
- "description": "Prowl market-intelligence skill backed by the hosted Prowl MCP server (448 tools), with a status widget that makes a running call, its progress and its cost visible in the terminal.",
6
- "version": "0.4.3",
5
+ "description": "Real-world market data for your agents: the Prowl skill backed by the hosted Prowl MCP server (444 market data tools across 17 providers), with a status widget that makes a running call, its progress and its cost visible in the terminal.",
6
+ "version": "0.5.0",
7
7
  "author": {
8
8
  "name": "Prowl",
9
9
  "email": "support@prowl.chat",
@@ -2,8 +2,8 @@
2
2
  "$schema": "https://json.schemastore.org/claude-code-plugin-manifest.json",
3
3
  "name": "prowl",
4
4
  "displayName": "Prowl",
5
- "version": "0.4.3",
6
- "description": "Prowl market-intelligence skill backed by the hosted Prowl MCP server (448 tools), with a status widget that makes a running call, its progress and its cost visible in the terminal.",
5
+ "version": "0.5.0",
6
+ "description": "Real-world market data for your agents: the Prowl skill backed by the hosted Prowl MCP server (444 market data tools across 17 providers), with a status widget that makes a running call, its progress and its cost visible in the terminal.",
7
7
  "author": {
8
8
  "name": "Prowl",
9
9
  "email": "support@prowl.chat",
@@ -14,18 +14,19 @@
14
14
  "license": "MIT",
15
15
  "keywords": [
16
16
  "prowl",
17
- "market-intelligence",
18
- "competitive-analysis",
17
+ "market-data",
18
+ "market-research",
19
19
  "seo",
20
20
  "ads",
21
+ "trends",
21
22
  "mcp"
22
23
  ],
23
24
  "skills": "./skills/",
24
25
  "mcpServers": "./.mcp.json",
25
26
  "interface": {
26
27
  "displayName": "Prowl",
27
- "shortDescription": "One MCP, 448 market-intelligence tools",
28
- "longDescription": "Connect the hosted Prowl MCP server to give any agent 448 market-intelligence tools — SEO, ads, SERP, scraping, AI — plus the full Prowl analysis pipeline, billed pay-as-you-go from a USD wallet. Ships a status widget: an in-flight call and how long it has run, session spend from the server's own billing figures, async-session progress in the dock, and a one-time notice when a call fails or the wallet blocks one.",
28
+ "shortDescription": "Real-world market data for your agents",
29
+ "longDescription": "Connect the hosted Prowl MCP server to give any agent 444 market data tools across 17 providers – search, ads, SEO, app stores, reviews, social, trends and finance. Each call is billed on its own from one USD wallet, every number comes back with the tool that returned it, and prowl_analyze composes a cross-checked report when one call is not enough. Ships a status widget: an in-flight call and how long it has run, session spend from the server's own billing figures, async-session progress in the dock, and a one-time notice when a call fails or the wallet blocks one.",
29
30
  "developerName": "Prowl",
30
31
  "category": "Research",
31
32
  "capabilities": [
@@ -37,10 +38,10 @@
37
38
  "termsOfServiceURL": "https://prowl.chat/terms/",
38
39
  "defaultPrompt": [
39
40
  "List the Prowl tools available",
40
- "Run a competitive analysis on a domain",
41
+ "Pull Google Trends and news for a keyword",
41
42
  "Pull SERP and keyword data for a topic"
42
43
  ],
43
- "brandColor": "#00ff41",
44
+ "brandColor": "#3f7d5f",
44
45
  "screenshots": []
45
46
  }
46
47
  }
@@ -4,7 +4,7 @@
4
4
  "command": "sh",
5
5
  "args": [
6
6
  "-lc",
7
- "TOKEN=\"${PROWL_MCP_TOKEN:-}\"; if [ -z \"$TOKEN\" ] && [ -f \"$HOME/.prowl/prowl_mcp_token\" ]; then TOKEN=\"$(cat \"$HOME/.prowl/prowl_mcp_token\")\"; fi; if [ -z \"$TOKEN\" ] && [ -f \"$HOME/.codex/prowl_mcp_token\" ]; then TOKEN=\"$(cat \"$HOME/.codex/prowl_mcp_token\")\"; fi; exec npx -y mcp-remote https://prowl.chat/mcp --header \"Authorization: Bearer $TOKEN\" --transport http-first --silent"
7
+ "TOKEN=\"$(printf %s \"${PROWL_MCP_TOKEN:-}\" | tr -d \"[:space:]\")\"; if [ -z \"$TOKEN\" ] && [ -f \"$HOME/.prowl/prowl_mcp_token\" ]; then TOKEN=\"$(tr -d \"[:space:]\" < \"$HOME/.prowl/prowl_mcp_token\")\"; fi; if [ -z \"$TOKEN\" ] && [ -f \"$HOME/.codex/prowl_mcp_token\" ]; then TOKEN=\"$(tr -d \"[:space:]\" < \"$HOME/.codex/prowl_mcp_token\")\"; fi; if [ -z \"$TOKEN\" ]; then echo 'prowl: no API key; the MCP server will not start.' >&2; echo 'prowl: store one with: npx @prowl-ai/prowl-skill token' >&2; echo 'prowl: or set PROWL_MCP_TOKEN in the environment.' >&2; echo 'prowl: not falling back to OAuth - browser consent cannot finish inside MCP startup.' >&2; exit 78; fi; exec npx -y mcp-remote https://prowl.chat/mcp --header \"Authorization: Bearer $TOKEN\" --transport http-first --silent"
8
8
  ]
9
9
  }
10
10
  }
@@ -1,16 +1,18 @@
1
1
  ---
2
2
  name: prowl
3
- description: Connects this agent to the Prowl MCP — a single MCP endpoint exposing 448 market-intelligence tools (SEO, backlinks, ads, SERP, web scraping, AI) plus the full Prowl analysis pipeline, billed pay-as-you-go from a USD wallet. Use when researching competitors, pulling SEO/SERP/keyword/backlink data, analyzing ad creative or spend, comparing pricing or funnels, validating a product idea, or any task that needs real market data instead of guesses.
3
+ description: Connects this agent to real-world market data through the Prowl MCP – one endpoint with 444 market data tools across 17 providers (search, ads, SEO, app stores, reviews, social, trends, finance), each call billed on its own from a USD wallet, plus prowl_analyze for a cross-checked report when one call is not enough. Use when a task needs real market data instead of guesses – SERP, keyword, backlink or AI-search data, ad creative or spend, app store listings and reviews, social or trend signals, stock quotes and market news, competitor pricing or funnels, or validating a product idea.
4
4
  license: MIT
5
5
  compatibility: Requires network access to prowl.chat and a Prowl API token; speaks MCP protocol 2025-06-18 over Streamable HTTP; the bundled MCP config runs `npx mcp-remote` (needs Node.js 18+).
6
6
  metadata:
7
7
  author: prowl.chat
8
- version: "0.4.3"
8
+ version: "0.5.0"
9
9
  ---
10
10
 
11
- # Prowl — market intelligence for your agent
11
+ # Prowl – real-world market data for your agents
12
12
 
13
- Prowl is a single MCP endpoint that exposes **448 market-intelligence API tools** across 15 providers (DataForSEO, SearchAPI, SerpApi, SpyFu, Majestic, Foreplay, Firecrawl, Exa, Perplexity, Gemini, …) plus the full Prowl pipeline — `prowl_analyze`, async research sessions, recurring schedules, artifacts and exports. Call real data instead of guessing.
13
+ Prowl is a single MCP endpoint that exposes **444 market data tools** across 17 providers (DataForSEO, SearchAPI, SerpApi, Moz, SpyFu, Majestic, Keywords Everywhere, Foreplay, Firecrawl, Exa, Perplexity, Gemini, …): search, ads, SEO, app stores, reviews, social, trends and finance. The agent calls what it needs, each call is billed on its own from one USD wallet, and every number comes back with the tool that returned it.
14
+
15
+ One call for one number; a report when one call is not enough. `prowl_analyze` plans many calls, cross-checks numeric claims against independent tools and composes a report (up to 16 intelligence modules, 8 without a subscription). Async sessions, recurring schedules, artifacts and exports build on it. People without an agent of their own use Prowl Agent on [prowl.chat](https://prowl.chat), which runs on the same tools.
14
16
 
15
17
  Prefer the sibling `prowl-cli` skill when the work belongs in a shell script or a CI job; use this one when the agent should call Prowl as MCP tools inside its own tool loop.
16
18
 
@@ -22,12 +24,14 @@ Prefer the sibling `prowl-cli` skill when the work belongs in a shell script or
22
24
 
23
25
  Prowl API keys (`prowl_...`) are billing-bearing — every metered call debits a USD wallet. Treat the key as a secret; never commit it to a public repo.
24
26
 
25
- 1. The human signs up at [https://prowl.chat](https://prowl.chat) (gets $5 starter credit), optionally tops up the wallet, and generates a `prowl_...` key (shown once) under **MCP Home → API keys & config**.
27
+ 1. The human signs up at [https://prowl.chat](https://prowl.chat) (gets $15 starter credit, no card), optionally tops up the wallet, and generates a `prowl_...` key (shown once) under **MCP Home → API keys & config**.
26
28
  2. Provide the key to this plugin via either:
27
29
  - environment variable `PROWL_MCP_TOKEN`, or
28
30
  - a token file at `~/.prowl/prowl_mcp_token` (`mkdir -p ~/.prowl && printf '%s' "prowl_YOUR_KEY" > ~/.prowl/prowl_mcp_token && chmod 600 ~/.prowl/prowl_mcp_token`).
29
31
  3. The bundled `.mcp.json` reads the token automatically and connects via `mcp-remote`.
30
32
 
33
+ Without a key the server does not start: it names both ways to supply one and exits `78`. That is deliberate — it will not fall through to OAuth, because browser consent cannot finish inside an MCP startup. If the agent reports the `prowl` server as failed, read its stderr: the remedy is in it.
34
+
31
35
  For manual per-client setup (Cursor `.cursor/mcp.json`, Claude Code `claude mcp add`, Codex `config.toml`, generic MCP), see the hosted playbook: [https://prowl.chat/mcp/install.md](https://prowl.chat/mcp/install.md).
32
36
 
33
37
  ## Core tools
@@ -40,7 +44,7 @@ For manual per-client setup (Cursor `.cursor/mcp.json`, Claude Code `claude mcp
40
44
  | `prowl_search_tools` | Semantic search over the catalog | free |
41
45
  | `prowl_tool_info` | JSON input schema + estimated cost for one tool | free |
42
46
  | `prowl_call_tool` | Invoke any single tool | metered |
43
- | `prowl_analyze` | Full multi-agent research report in one shot | metered, sized by `execution_mode` |
47
+ | `prowl_analyze` | A report when one call is not enough: plans the calls, cross-checks numeric claims, composes the modules | metered, sized by `execution_mode` |
44
48
  | `prowl_get_wallet` | Balance, and which `execution_mode`s this key can really run | free |
45
49
  | `prowl_list_playbooks` | The 8 fixed, persona-tuned report shapes | free |
46
50
  | `prowl_start_session` / `prowl_session_status` / `prowl_get_session` / `prowl_list_sessions` | Async deep research: kick off, poll, read back | metered |
@@ -55,7 +59,7 @@ costs about 4k tokens and is returned only for `names=true` or a single
55
59
  `category`. Reach for `prowl_search_tools` to find a tool by intent; it is the
56
60
  cheap path and ranks by relevance.
57
61
 
58
- Recommended flow: `prowl_search_tools` → `prowl_tool_info` → `prowl_call_tool` for one fact; `prowl_analyze` for a complete strategy report. Pass a stable `session_id` across calls to keep the report cache and conversation memory scoped to one conversation — `prowl_generate_artifact` and `prowl_export_report` read the report cached against that session, so they need a prior `prowl_analyze` on the same id.
62
+ Recommended flow: `prowl_search_tools` → `prowl_tool_info` → `prowl_call_tool` for one number; `prowl_analyze` when the task needs a report rather than one call. Pass a stable `session_id` across calls to keep the report cache and conversation memory scoped to one conversation — `prowl_generate_artifact` and `prowl_export_report` read the report cached against that session, so they need a prior `prowl_analyze` on the same id.
59
63
 
60
64
  Full reference: [https://prowl.chat/mcp/skill.md](https://prowl.chat/mcp/skill.md)
61
65
 
@@ -81,7 +85,7 @@ had not.
81
85
  | `execution_mode` | Use for | Calls per run | Time | Requires |
82
86
  |------|---------|--------------:|------|----------|
83
87
  | `basic` | One question, fast turnaround | 20–100 | 30–90s | — |
84
- | `deep` | Full competitive report, evidence-verified | 40–300 | 3–5 min | Exploit+ subscription |
88
+ | `deep` | Full report, evidence-verified | 40–300 | 3–5 min | Exploit+ subscription |
85
89
  | `max` | Exhaustive, claims adversarially checked | 60–400 | 5–10 min | Blackops+ subscription |
86
90
 
87
91
  **A key without the subscription is not refused — it is downgraded.** `deep` and
@@ -102,7 +106,7 @@ Call `prowl_list_playbooks` (free) for what each one covers.
102
106
  ## Verify
103
107
 
104
108
  1. List MCP tools; confirm `prowl_list_tools`, `prowl_tool_info`, `prowl_call_tool`, `prowl_analyze`.
105
- 2. Run `prowl_list_tools` (free) → category counts summing to `total_tools: 448`. (It returns counts, not names — pass `names=true` for the full list.)
109
+ 2. Run `prowl_list_tools` (free) → category counts summing to `total_tools: 444`. (It returns counts, not names — pass `names=true` for the full list.)
106
110
  3. Run `prowl_get_wallet` (free) → the key is valid, and the balance and available modes come back.
107
111
  4. Connectivity check (no auth): `curl https://prowl.chat/mcp/health`. It answers
108
112
  `status`, `server`, `version`, `transport` and `endpoint` — and nothing else, so
@@ -185,7 +189,7 @@ is a place an attacker can write.
185
189
 
186
190
  ## When to use
187
191
 
188
- Competitive/market intelligence, SEO/SERP/keyword/backlink research, ad creative & spend research, pricing/funnel analysis, review mining, AI-search (GEO/AEO) visibility, product-idea validation — anything needing real numbers.
192
+ Any task that needs real market data: market research and analytics, marketing and ads (creative and spend), SEO and AI search (SERP, keywords, backlinks, GEO/AEO visibility), social media, creative research, trends, investing context (stock quotes, market movers, ticker search, news and search interest – data, never advice), product development and idea validation, e-commerce, local businesses and reviews, competitor pricing and funnels.
189
193
 
190
194
  ## When not to use
191
195
 
@@ -2,8 +2,8 @@
2
2
  "$schema": "https://json.schemastore.org/claude-code-plugin-manifest.json",
3
3
  "name": "prowl-cli",
4
4
  "displayName": "Prowl CLI",
5
- "description": "Prowl CLI skill: drive the 448-tool Prowl market-intelligence catalog from the shell with @prowl-ai/cli — no MCP server required.",
6
- "version": "0.2.6",
5
+ "description": "Prowl CLI skill: real-world market data from the shell – drive the 444-tool Prowl market data catalog with @prowl-ai/cli, no MCP server required.",
6
+ "version": "0.3.0",
7
7
  "author": {
8
8
  "name": "Prowl",
9
9
  "email": "support@prowl.chat",
@@ -2,8 +2,8 @@
2
2
  "$schema": "https://json.schemastore.org/claude-code-plugin-manifest.json",
3
3
  "name": "prowl-cli",
4
4
  "displayName": "Prowl CLI",
5
- "version": "0.2.6",
6
- "description": "Prowl CLI skill: drive the 448-tool Prowl market-intelligence catalog from the shell with @prowl-ai/cli — no MCP server required.",
5
+ "version": "0.3.0",
6
+ "description": "Prowl CLI skill: real-world market data from the shell – drive the 444-tool Prowl market data catalog with @prowl-ai/cli, no MCP server required.",
7
7
  "author": {
8
8
  "name": "Prowl",
9
9
  "email": "support@prowl.chat",
@@ -15,8 +15,8 @@
15
15
  "keywords": [
16
16
  "prowl",
17
17
  "cli",
18
- "market-intelligence",
19
- "competitive-analysis",
18
+ "market-data",
19
+ "market-research",
20
20
  "seo",
21
21
  "serp",
22
22
  "ads"
@@ -24,7 +24,7 @@
24
24
  "skills": "./skills/",
25
25
  "interface": {
26
26
  "displayName": "Prowl CLI",
27
- "shortDescription": "448 market-intelligence tools from the shell",
27
+ "shortDescription": "444 market data tools from the shell",
28
28
  "longDescription": "Teaches the agent the Prowl command-line client (@prowl-ai/cli): install and key handling, the free catalog commands, metered tool calls, analyze tiers with hard cost caps, playbooks, JSON output and exit codes. Useful wherever a shell is available and no MCP server is configured.",
29
29
  "developerName": "Prowl",
30
30
  "category": "Research",
@@ -37,10 +37,10 @@
37
37
  "termsOfServiceURL": "https://prowl.chat/terms/",
38
38
  "defaultPrompt": [
39
39
  "Search the Prowl tool catalog for backlink tools",
40
- "Run prowl analyze on a competitor domain",
40
+ "Pull Google Trends for a keyword from the shell",
41
41
  "Check my Prowl wallet balance"
42
42
  ],
43
- "brandColor": "#00ff41",
43
+ "brandColor": "#3f7d5f",
44
44
  "screenshots": []
45
45
  }
46
46
  }
@@ -1,20 +1,20 @@
1
1
  ---
2
2
  name: prowl-cli
3
- description: Drives the Prowl CLI (`@prowl-ai/cli`) — a shell client for Prowl exposing 448 market-intelligence tools (SEO, backlinks, 60+ SERP engines, ads, web scraping, AI) plus the full Prowl research pipeline, billed pay-as-you-go from a USD wallet. Use when a shell is available and market data is needed in a script, a CI job or a one-off command — competitor research, SERP and keyword data, backlink profiles, ad creative research, pricing and demand validation — without configuring an MCP server.
3
+ description: Drives the Prowl CLI (`@prowl-ai/cli`) – a shell client for real-world market data, exposing 444 market data tools across 17 providers (search with 102 SearchAPI engines, ads, SEO and backlinks, app stores, reviews, social, trends, finance) plus `prowl analyze` for a report when one call is not enough, each call billed from a USD wallet. Use when a shell is available and market data is needed in a script, a CI job or a one-off command – SERP and keyword data, backlink profiles, ad creative research, trends, stock quotes and news, competitor pricing and demand validation – without configuring an MCP server.
4
4
  license: MIT
5
5
  compatibility: Requires Node.js 18+, the `@prowl-ai/cli` npm package (installed globally or run via npx) and a Prowl API key; speaks MCP protocol 2025-06-18 to prowl.chat over the network.
6
6
  metadata:
7
7
  author: prowl.chat
8
- version: "0.2.6"
8
+ version: "0.3.0"
9
9
  # The @prowl-ai/cli release this page describes. NOT the plugin version above:
10
10
  # they are different things that happened to both read 0.2.x, and nothing
11
11
  # compared them until scripts/check-cli.js did.
12
- documents_cli: "0.2.1"
12
+ documents_cli: "0.3.0"
13
13
  ---
14
14
 
15
- # Prowl CLI — market intelligence from the shell
15
+ # Prowl CLI – real-world market data from the shell
16
16
 
17
- `@prowl-ai/cli` is the command-line client for [Prowl](https://prowl.chat): one binary that reaches **448 market-intelligence tools** across 15 providers, plus the Prowl analysis pipeline. Every metered call debits a USD wallet.
17
+ `@prowl-ai/cli` is the command-line client for [Prowl](https://prowl.chat): one binary that reaches **444 market data tools** across 17 providers – search, ads, SEO, app stores, reviews, social, trends and finance – plus `analyze`, which plans many calls and composes a cross-checked report when one call is not enough. Every metered call debits a USD wallet, and every number comes back with the tool that returned it.
18
18
 
19
19
  Use this skill when a shell is available. Use the sibling `prowl` plugin instead when the agent should call Prowl as MCP tools inside its own tool loop.
20
20
 
@@ -26,7 +26,7 @@ Prowl API keys (`prowl_...`) are **billing-bearing** — treat them as secrets a
26
26
  npm install -g @prowl-ai/cli
27
27
  ```
28
28
 
29
- **This page documents CLI `0.2.1`**, which is what npm serves as `latest`. On `0.1.1` or
29
+ **This page documents CLI `0.3.0`**, which is what npm serves as `latest`. On `0.1.1` or
30
30
  older only `auth`, `tools`, `call`, `analyze`, `wallet` and `version` exist and
31
31
  everything else answers `Unknown command` — `prowl version` says which you have.
32
32
 
@@ -93,7 +93,7 @@ redirect the report instead: `prowl session get <id> > report.md`.
93
93
  Global flags: `--json` (one machine-readable JSON document on stdout — always use this when parsing), `--key <k>`, `--quiet`, `-h`.
94
94
  Environment: `PROWL_API_KEY`, `PROWL_BASE_URL`, `PROWL_MCP_URL`, `PROWL_TIMEOUT_MS`.
95
95
 
96
- Recommended flow: `tools search` → `tools info` (check the cost) → `call`. Reach for `analyze` when the goal is a full report rather than one data point. Pass a stable `--session <id>` across consecutive calls to keep the report cache, history and spend scoped to one investigation; `artifact` and `export` read the report cached against that session, so they need a prior `analyze` on the same id.
96
+ Recommended flow: `tools search` → `tools info` (check the cost) → `call`. Reach for `analyze` when one call is not enough and the goal is a report rather than one number. Pass a stable `--session <id>` across consecutive calls to keep the report cache, history and spend scoped to one investigation; `artifact` and `export` read the report cached against that session, so they need a prior `analyze` on the same id.
97
97
 
98
98
  `tools list` returns category **counts**, not names — pass `--names` or `--category <c>` for names, or prefer `tools search`, which is cheaper and ranks by relevance.
99
99
 
@@ -104,14 +104,15 @@ Recommended flow: `tools search` → `tools info` (check the cost) → `call`. R
104
104
  | Tier | Use for | Calls per run | Time | Requires |
105
105
  |------|---------|--------------:|------|----------|
106
106
  | `basic` | one question, fast turnaround | 20–100 | 30–90s | — |
107
- | `deep` | full competitive report, evidence-verified | 40–300 | 3–5 min | Exploit+ subscription |
107
+ | `deep` | full report, evidence-verified | 40–300 | 3–5 min | Exploit+ subscription |
108
108
  | `max` | exhaustive, claims adversarially checked | 60–400 | 5–10 min | Blackops+ subscription |
109
109
 
110
- `prowl --help` additionally states hard provider-cost caps of $2.50, $8.00 and $18.00 per
111
- mode. This page does not repeat them as fact: no tool schema, no server response and no
112
- public endpoint carries them, and `prowl.chat/pricing` — which the CLI source cites as
113
- their origin — is a `404`. Treat them as the CLI author's figures until a server
114
- response confirms them.
110
+ `prowl --help` additionally states hard provider-cost caps of $5.00, $8.00 and $18.00 per
111
+ mode, and wallet holds of $15, $24 and $54 – the figures
112
+ [prowl.chat/docs/running-your-first-report](https://prowl.chat/docs/running-your-first-report/)
113
+ publishes. No tool schema and no server response carries them, so they can move on the
114
+ server before this page or the CLI does: read that page when the exact figure matters,
115
+ and confirm with the human before a run whose hold the wallet may not cover.
115
116
 
116
117
  **A key without the subscription is not refused — it is downgraded to `basic`, and the run executes and bills as `basic`.** Nothing in the output announces this loudly.
117
118
 
@@ -185,7 +186,7 @@ into another program is a place a competitor's page can reach, so quote it, neve
185
186
 
186
187
  ## When to use
187
188
 
188
- Competitor and market research, SEO/SERP/keyword data, backlink profiles, ad creative and spend research, pricing and demand validation — from a script, a CI job, or a shell one-liner.
189
+ Market data from a script, a CI job or a shell one-liner: market research, SEO/SERP/keyword data, backlink profiles, ad creative and spend research, trends, stock quotes and market news, app store and review data, competitor pricing and demand validation.
189
190
 
190
191
  ## When not to use
191
192