feat(plugins): add Peec AI plugin
Adds a first-party Peec AI plugin that proxies Peec's hosted MCP server (https://api.peec.ai/mcp, 56 read and 50 write tools). Agents can read AI-search visibility, the sources answers cite, query fanouts, AI crawler visits and Peec's recommended actions instead of scraping the Peec UI in a browser pane.
Connector: peec_mcp
- OAuth 2.0, dynamic client. Peec publishes protected-resource and authorization-server metadata under the
/mcppath (/.well-known/oauth-protected-resource/mcp,/.well-known/oauth-authorization-server/mcp), supports dynamic client registration (no client id metadata document), PKCE S256, and the singledefaultscope. - Personal access token. For headless setups. Peec accepts it as the same bearer token.
- Identity. Peec has no userinfo endpoint and no whoami tool.
list_projectsreturns columnar JSON ({columns, rows}), so account and user are the first project's id and name. This is the same first-container approachneon_mcpuses.
Skills
diagnose-ai-visibility(read-only): for each lost prompt, reads the answers and their cited sources, maps the question to our own page, and picks one cause (technical, missing, weak, or third-party) with one fix. It never proposes a new page when a weak page exists.work-peec-actions: works through Peec Actions with site fixes first, flags scanner-probe "missing pages" as false positives, and logs shipped work as completed actions with the real ship date so Peec's Impact view can measure before and after. Every write shows the change list and waits for a yes.
Also
Catalog entry, a theme-following glyph icon (desktop + marketing), peec.ai link unfurl, marketing plugins card with translations for all locales, and a docs page.
Verification
bun run check:plugins: all plugins valid and published (peec@1.0.0).bun run check:i18n: passes. The new string is translated in all 16 locales.- New test
peec_mcp reads the first project from a columnar result. I checked that it fails when the probe tool name is wrong. Connector, plugin, shared and CLI plugin suites pass (200 + 52 + 16 tests). tsc --noEmitis clean for shared, trpc and marketing. Desktop shows only the pre-existing errors from generated files missing in a fresh worktree (routeTree.gen), none in touched files.- Not verified: a live OAuth connect against Peec. It needs this on a deployed API. Peec's discovery and registration endpoints answer as described above. The
list_projectsresponse shape comes from Peec's docs, and a mismatch would show up as a clear identity-probe error with the result's shape.
Summary by cubic
Adds a first-party Peec AI plugin that proxies Peec's hosted MCP server (https://api.peec.ai/mcp), so agents can read AI-search visibility, cited sources, query fanouts, AI crawler visits, and Peec's recommended actions instead of scraping the Peec UI.
New Features
peec_mcpconnector supports OAuth 2.0 with dynamic client registration and personal access tokens; identity reads the first project fromlist_projectssince Peec has no userinfo endpoint.diagnose-ai-visibilityskill diagnoses lost prompts and picks one cause with one fix.work-peec-actionsskill triages Peec Actions and logs shipped work with the real ship date so Peec's Impact view can measure it.- Adds catalog entry, glyph icon for desktop and marketing,
peec.ailink unfurl, marketing card with translations in all 16 locales, and a docs page.
Migration: Approval flow is not guaranteed; OAuth connect against Peec was not verified live and needs a deployed API.
Summary by CodeRabbit
- New Features
- Added Peec AI to the plugin marketplace, desktop app, and plugin directory under Data & APIs. Connect your Peec AI account to track brand visibility in AI search, investigate visibility issues, and review recommended actions and their results.
- Documentation
- Added a Peec AI guide covering its capabilities, connection options, and project access requirements.
- Localization
- Added translations for the brand visibility tagline in supported languages.