cited-cli 0.3.15__tar.gz → 0.5.0__tar.gz
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.
- {cited_cli-0.3.15 → cited_cli-0.5.0}/PKG-INFO +4 -4
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/core/pyproject.toml +1 -1
- cited_cli-0.5.0/packages/core/src/cited_core/__init__.py +1 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/core/src/cited_core/api/endpoints.py +8 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/mcp/pyproject.toml +2 -2
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/mcp/src/cited_mcp/plan_gating.py +17 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/mcp/src/cited_mcp/tool_changelog.yaml +158 -0
- cited_cli-0.5.0/packages/mcp/src/cited_mcp/tools/business.py +477 -0
- cited_cli-0.5.0/packages/mcp/src/cited_mcp/tools/hq.py +799 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/mcp/src/cited_mcp/tools/recommend.py +20 -1
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/mcp/tests/test_plan_gating.py +1 -1
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/mcp/tests/test_tools.py +60 -2
- {cited_cli-0.3.15 → cited_cli-0.5.0}/pyproject.toml +4 -4
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/commands/business.py +104 -0
- cited_cli-0.5.0/src/cited_cli/commands/hq.py +578 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/tests/test_feature_parity.py +20 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/tests/test_mcp_server.py +18 -0
- cited_cli-0.3.15/packages/core/src/cited_core/__init__.py +0 -1
- cited_cli-0.3.15/packages/mcp/src/cited_mcp/tools/business.py +0 -273
- cited_cli-0.3.15/packages/mcp/src/cited_mcp/tools/hq.py +0 -93
- cited_cli-0.3.15/src/cited_cli/commands/hq.py +0 -125
- {cited_cli-0.3.15 → cited_cli-0.5.0}/.github/workflows/changelog-guard.yml +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/.github/workflows/ci.yml +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/.github/workflows/release.yml +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/.gitignore +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/CLAUDE.md +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/DEMO.md +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/FUTURE.md +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/LICENSE +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/README.md +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/TEST_RUNBOOK.md +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/cited-plugins/.claude-plugin/marketplace.json +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/cited-plugins/.claude-plugin/plugin.json +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/cited-plugins/.mcp.json +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/cited-plugins/CLAUDE_DESKTOP_SETUP.md +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/cited-plugins/agents/geo-analyst.md +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/cited-plugins/commands/audit.md +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/cited-plugins/commands/recommend.md +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/cited-plugins/commands/status.md +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/cited-plugins/settings.json +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/cited-plugins/skills/business-setup/SKILL.md +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/cited-plugins/skills/explore/SKILL.md +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/cited-plugins/skills/geo-audit/SKILL.md +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/cited-plugins/skills/geo-recommend/SKILL.md +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/core/src/cited_core/api/__init__.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/core/src/cited_core/api/client.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/core/src/cited_core/auth/__init__.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/core/src/cited_core/auth/oauth_server.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/core/src/cited_core/auth/store.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/core/src/cited_core/config/__init__.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/core/src/cited_core/config/constants.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/core/src/cited_core/config/manager.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/core/src/cited_core/errors.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/mcp/README.md +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/mcp/SKILL.md +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/mcp/src/cited_mcp/__init__.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/mcp/src/cited_mcp/__main__.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/mcp/src/cited_mcp/auth_provider.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/mcp/src/cited_mcp/context.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/mcp/src/cited_mcp/remote.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/mcp/src/cited_mcp/server.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/mcp/src/cited_mcp/tool_manager.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/mcp/src/cited_mcp/tools/__init__.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/mcp/src/cited_mcp/tools/_helpers.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/mcp/src/cited_mcp/tools/action_plan.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/mcp/src/cited_mcp/tools/agent.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/mcp/src/cited_mcp/tools/analytics.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/mcp/src/cited_mcp/tools/audit.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/mcp/src/cited_mcp/tools/auth.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/mcp/src/cited_mcp/tools/billing.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/mcp/src/cited_mcp/tools/changelog.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/mcp/src/cited_mcp/tools/job.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/mcp/src/cited_mcp/tools/solution.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/mcp/tests/conftest.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/packages/mcp/tests/test_auth_provider.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/scripts/dev-install.sh +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/scripts/mcp_test_harness.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/__init__.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/__main__.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/api/__init__.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/api/client.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/api/endpoints.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/app.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/auth/__init__.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/auth/oauth_server.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/auth/store.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/commands/__init__.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/commands/agent.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/commands/analytics.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/commands/audit.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/commands/auth.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/commands/config_cmd.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/commands/job.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/commands/mcp_cmd.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/commands/named_audit.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/commands/recommend.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/commands/solution.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/config/__init__.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/config/constants.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/config/manager.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/mcp/__init__.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/mcp/context.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/mcp/server.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/mcp/tools/__init__.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/mcp/tools/_helpers.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/mcp/tools/audit.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/mcp/tools/auth.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/mcp/tools/business.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/mcp/tools/job.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/mcp/tools/recommend.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/mcp/tools/solution.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/output/__init__.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/output/formatter.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/output/progress.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/output/tables.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/utils/__init__.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/utils/errors.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/src/cited_cli/utils/interactive.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/tests/__init__.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/tests/conftest.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/tests/test_api_client.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/tests/test_auth.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/tests/test_config.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/tests/test_live_pipeline.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/tests/test_mcp_tools.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/tests/test_output.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/tests/test_pipeline.py +0 -0
- {cited_cli-0.3.15 → cited_cli-0.5.0}/tests/test_version.py +0 -0
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: cited-cli
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.5.0
|
|
4
4
|
Summary: CLI for the Cited GEO platform
|
|
5
5
|
Author-email: Cited <support@youcited.com>
|
|
6
6
|
License-Expression: LicenseRef-Proprietary
|
|
7
7
|
License-File: LICENSE
|
|
8
8
|
Requires-Python: >=3.11
|
|
9
|
-
Requires-Dist: cited-core>=0.
|
|
9
|
+
Requires-Dist: cited-core>=0.5.0
|
|
10
10
|
Requires-Dist: rich>=13.0.0
|
|
11
11
|
Requires-Dist: typer>=0.15.0
|
|
12
12
|
Provides-Extra: dev
|
|
13
|
-
Requires-Dist: cited-mcp>=0.
|
|
13
|
+
Requires-Dist: cited-mcp>=0.5.0; extra == 'dev'
|
|
14
14
|
Requires-Dist: mypy>=1.10; extra == 'dev'
|
|
15
15
|
Requires-Dist: pytest>=8.0; extra == 'dev'
|
|
16
16
|
Requires-Dist: respx>=0.21; extra == 'dev'
|
|
17
17
|
Requires-Dist: ruff>=0.4; extra == 'dev'
|
|
18
18
|
Requires-Dist: types-pyyaml>=6.0; extra == 'dev'
|
|
19
19
|
Provides-Extra: mcp
|
|
20
|
-
Requires-Dist: cited-mcp>=0.
|
|
20
|
+
Requires-Dist: cited-mcp>=0.5.0; extra == 'mcp'
|
|
21
21
|
Description-Content-Type: text/markdown
|
|
22
22
|
|
|
23
23
|
# Cited CLI
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "0.5.0"
|
|
@@ -23,6 +23,7 @@ BUSINESS = "/businesses/{business_id}"
|
|
|
23
23
|
BUSINESS_LOGO = "/businesses/{business_id}/logo"
|
|
24
24
|
HEALTH_SCORES = "/businesses/{business_id}/health-scores"
|
|
25
25
|
HEALTH_SCORES_BREAKDOWN = "/businesses/{business_id}/health-scores/breakdown"
|
|
26
|
+
PROFILE_COMPETITORS = "/businesses/{business_id}/profile-competitors"
|
|
26
27
|
|
|
27
28
|
# Business Crawl
|
|
28
29
|
CRAWL_DATA = "/businesses/{business_id}/crawl-data"
|
|
@@ -77,9 +78,16 @@ HQ_PRIORITY_STATUS = "/businesses/{business_id}/hq/priority/{action_id}/status"
|
|
|
77
78
|
HQ_PRIORITY_SUMMARY = "/businesses/{business_id}/hq/priority/summary"
|
|
78
79
|
HQ_EXPORT_PDF = "/businesses/{business_id}/hq/export/pdf"
|
|
79
80
|
HQ_RECOMPUTE = "/businesses/{business_id}/hq/recompute"
|
|
81
|
+
HQ_OVERVIEW_REFRESH_AUDIT = "/businesses/{business_id}/overview/refresh-audit"
|
|
82
|
+
HQ_OVERVIEW_REFRESH_RECS = "/businesses/{business_id}/overview/refresh-recommendations"
|
|
83
|
+
HQ_OVERVIEW_REFRESH_ALL = "/businesses/{business_id}/overview/refresh-all"
|
|
84
|
+
HQ_AGENT_BRIEF = "/businesses/{business_id}/agent-brief"
|
|
80
85
|
PERSONAS = "/businesses/{business_id}/personas"
|
|
86
|
+
PERSONA = "/businesses/{business_id}/personas/{persona_id}"
|
|
81
87
|
PRODUCTS = "/businesses/{business_id}/products"
|
|
88
|
+
PRODUCT = "/businesses/{business_id}/products/{product_id}"
|
|
82
89
|
BUYER_INTENTS = "/businesses/{business_id}/buyer-intents"
|
|
90
|
+
BUYER_INTENT = "/businesses/{business_id}/buyer-intents/{intent_id}"
|
|
83
91
|
AGENTIC_READINESS = "/businesses/{business_id}/agentic-readiness"
|
|
84
92
|
TRUST_SIGNALS = "/businesses/{business_id}/trust-signals"
|
|
85
93
|
|
|
@@ -4,14 +4,14 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "cited-mcp"
|
|
7
|
-
version = "0.
|
|
7
|
+
version = "0.5.0"
|
|
8
8
|
description = "MCP server for the Cited GEO platform"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
license = "LicenseRef-Proprietary"
|
|
11
11
|
requires-python = ">=3.11"
|
|
12
12
|
authors = [{ name = "Cited", email = "support@youcited.com" }]
|
|
13
13
|
dependencies = [
|
|
14
|
-
"cited-core>=0.
|
|
14
|
+
"cited-core>=0.5.0",
|
|
15
15
|
"mcp>=1.27.0",
|
|
16
16
|
"PyJWT>=2.8.0",
|
|
17
17
|
"PyYAML>=6.0",
|
|
@@ -43,6 +43,18 @@ _SCALE_TOOLS: set[str] = {
|
|
|
43
43
|
"mark_action_done",
|
|
44
44
|
"dismiss_action",
|
|
45
45
|
"get_action_progress",
|
|
46
|
+
"set_profile_competitors",
|
|
47
|
+
"create_persona",
|
|
48
|
+
"update_persona",
|
|
49
|
+
"delete_persona",
|
|
50
|
+
"create_product",
|
|
51
|
+
"update_product",
|
|
52
|
+
"delete_product",
|
|
53
|
+
"create_buyer_intent",
|
|
54
|
+
"update_buyer_intent",
|
|
55
|
+
"delete_buyer_intent",
|
|
56
|
+
"recompute_health_scores",
|
|
57
|
+
"refresh_business_overview",
|
|
46
58
|
}
|
|
47
59
|
|
|
48
60
|
# Tools restricted to pro+ tier
|
|
@@ -54,6 +66,7 @@ _PRO_TOOLS: set[str] = {
|
|
|
54
66
|
"get_semantic_health",
|
|
55
67
|
"buyer_fit_query",
|
|
56
68
|
"get_business_hq",
|
|
69
|
+
"get_agent_brief",
|
|
57
70
|
"get_analytics_trends",
|
|
58
71
|
"get_analytics_dashboard",
|
|
59
72
|
"compare_audits",
|
|
@@ -156,6 +169,10 @@ _BASE_TOOLS: set[str] = {
|
|
|
156
169
|
"get_business",
|
|
157
170
|
"crawl_business",
|
|
158
171
|
"get_health_scores",
|
|
172
|
+
"list_profile_competitors",
|
|
173
|
+
"list_personas",
|
|
174
|
+
"list_products",
|
|
175
|
+
"list_buyer_intents",
|
|
159
176
|
"list_audit_templates",
|
|
160
177
|
"get_audit_template",
|
|
161
178
|
"start_audit",
|
|
@@ -21,6 +21,164 @@
|
|
|
21
21
|
# this file.
|
|
22
22
|
|
|
23
23
|
versions:
|
|
24
|
+
- version: "0.5.0"
|
|
25
|
+
released: "2026-05-11"
|
|
26
|
+
# Three new read-only list_* tools to enable persona/product/buyer-intent
|
|
27
|
+
# CRUD flows (agents need IDs before they can call update/delete), plus a
|
|
28
|
+
# significant parameter-schema expansion on update_business / create_business
|
|
29
|
+
# to cover the full canonical BusinessUpdate/CreateRequest field set. Also
|
|
30
|
+
# fixes a latent bug: update_business previously sent HTTP PUT against a
|
|
31
|
+
# backend PATCH route. Bumps minor (not patch) because update_business /
|
|
32
|
+
# create_business signature changes shift parameter ordering and clients
|
|
33
|
+
# diffing the fingerprint should pick this up as non-additive.
|
|
34
|
+
fingerprint: "5bef45100c53"
|
|
35
|
+
tools_added:
|
|
36
|
+
- name: list_personas
|
|
37
|
+
description: |
|
|
38
|
+
List buyer personas declared on the business profile. Required
|
|
39
|
+
before update_persona / delete_persona since the agent has no
|
|
40
|
+
other way to discover persona_ids.
|
|
41
|
+
- name: list_products
|
|
42
|
+
description: |
|
|
43
|
+
List products / service offerings declared on the business
|
|
44
|
+
profile. Required before update_product / delete_product to
|
|
45
|
+
discover product_ids.
|
|
46
|
+
- name: list_buyer_intents
|
|
47
|
+
description: |
|
|
48
|
+
List buyer-intent entries declared on the business profile.
|
|
49
|
+
Use before recommending a new create_buyer_intent to avoid
|
|
50
|
+
overlapping entries.
|
|
51
|
+
- name: update_buyer_intent
|
|
52
|
+
description: |
|
|
53
|
+
Update a buyer-intent entry (question, intent_type, priority,
|
|
54
|
+
is_answered, answering_page_url — all optional). Closes the
|
|
55
|
+
persona/product CRUD symmetry. Requires the cited backend with
|
|
56
|
+
PATCH /businesses/{id}/buyer-intents/{intent_id} (added in
|
|
57
|
+
companion backend PR).
|
|
58
|
+
- name: delete_buyer_intent
|
|
59
|
+
description: |
|
|
60
|
+
Delete a buyer intent. Confirm with the user before calling —
|
|
61
|
+
there's no undo. Requires the cited backend with
|
|
62
|
+
DELETE /businesses/{id}/buyer-intents/{intent_id}.
|
|
63
|
+
tools_changed:
|
|
64
|
+
- name: update_business
|
|
65
|
+
change_summary: |
|
|
66
|
+
Parameter set expanded from 4 fields (name, website, description,
|
|
67
|
+
industry) to the full BusinessUpdateRequest schema: adds
|
|
68
|
+
one_line_description, primary_customer, problem_solved,
|
|
69
|
+
offering_type, primary_market, service_areas,
|
|
70
|
+
headquarters_country, goals, discovery_channels,
|
|
71
|
+
success_definition, plus primary-location fields (address, city,
|
|
72
|
+
region, country). All new params are optional and keyword-only.
|
|
73
|
+
Also fixes a method bug: now sends PATCH (was PUT) to match the
|
|
74
|
+
backend @router.patch route.
|
|
75
|
+
- name: create_business
|
|
76
|
+
change_summary: |
|
|
77
|
+
Parameter set expanded to the full BusinessCreateRequest schema:
|
|
78
|
+
description is now optional (server composes from structured
|
|
79
|
+
fields if omitted); adds one_line_description, primary_customer,
|
|
80
|
+
problem_solved, offering_type, primary_market, service_areas,
|
|
81
|
+
headquarters_country, goals, discovery_channels,
|
|
82
|
+
success_definition. Existing 4-field callers unaffected
|
|
83
|
+
(description was already accepted; making it optional is
|
|
84
|
+
backward-compatible).
|
|
85
|
+
|
|
86
|
+
- version: "0.4.0"
|
|
87
|
+
released: "2026-05-08"
|
|
88
|
+
# 12 new tools + docstring/parameter-schema edits on 4 existing tools —
|
|
89
|
+
# significant surface expansion, so the minor version bumps to 0.4.0
|
|
90
|
+
# to signal a non-additive-only release for clients that diff the
|
|
91
|
+
# fingerprint.
|
|
92
|
+
fingerprint: "8197f97dcd06"
|
|
93
|
+
tools_added:
|
|
94
|
+
- name: get_agent_brief
|
|
95
|
+
description: |
|
|
96
|
+
Single-call composite "what should I focus on right now?" —
|
|
97
|
+
top priority actions, quick wins, failing deterministic checks,
|
|
98
|
+
and recent citation-rate movement. Designed to replace
|
|
99
|
+
chained get_business_hq + get_quick_wins + check_status calls
|
|
100
|
+
in opening-turn agent flows.
|
|
101
|
+
- name: list_profile_competitors
|
|
102
|
+
description: |
|
|
103
|
+
List the user-declared competitors on a business profile.
|
|
104
|
+
These bypass third-party domain filtering and rank ahead of
|
|
105
|
+
citation-only picks in head-to-head comparisons.
|
|
106
|
+
- name: set_profile_competitors
|
|
107
|
+
description: |
|
|
108
|
+
Replace the full list of profile competitors (max 10).
|
|
109
|
+
Pass [{name, website}] entries; PUT replaces. Use when the
|
|
110
|
+
user reports an obviously-relevant rival missing from H2H.
|
|
111
|
+
- name: recompute_health_scores
|
|
112
|
+
description: |
|
|
113
|
+
Force a fresh recomputation of business health scores after
|
|
114
|
+
profile/HQ edits — no crawl, no audit, just re-derive from
|
|
115
|
+
existing data.
|
|
116
|
+
- name: refresh_business_overview
|
|
117
|
+
description: |
|
|
118
|
+
Refresh cached audit / recommendation overview projections
|
|
119
|
+
for a business. scope ∈ {audit, recommendations, all}.
|
|
120
|
+
- name: create_persona
|
|
121
|
+
description: Create a target buyer persona on a business.
|
|
122
|
+
- name: update_persona
|
|
123
|
+
description: Update a persona (partial — only changed fields).
|
|
124
|
+
- name: delete_persona
|
|
125
|
+
description: Delete a persona.
|
|
126
|
+
- name: create_product
|
|
127
|
+
description: Create a product/service offering on a business.
|
|
128
|
+
- name: update_product
|
|
129
|
+
description: Update a product (partial).
|
|
130
|
+
- name: delete_product
|
|
131
|
+
description: Delete a product.
|
|
132
|
+
- name: create_buyer_intent
|
|
133
|
+
description: |
|
|
134
|
+
Create a buyer-intent entry tying personas to products
|
|
135
|
+
through specific decision moments — drives audit question
|
|
136
|
+
generation and per-intent coverage scoring.
|
|
137
|
+
tools_changed:
|
|
138
|
+
- name: get_business_hq
|
|
139
|
+
change_summary: |
|
|
140
|
+
New include flags ``include_agentic_readiness`` and
|
|
141
|
+
``include_trust_signals`` add the agentic-readiness summary
|
|
142
|
+
and trust-signal evidence to the dashboard payload. Existing
|
|
143
|
+
callers are unaffected — both default to false.
|
|
144
|
+
- name: get_competitive_comparison
|
|
145
|
+
change_summary: |
|
|
146
|
+
Docstring now describes the new ``analysis_status`` and
|
|
147
|
+
``last_analysis_run_at`` freshness fields on the response
|
|
148
|
+
(added in cited backend commit 2c716be). Tool behavior is
|
|
149
|
+
unchanged — these were already passed through; the docstring
|
|
150
|
+
was previously silent about them.
|
|
151
|
+
- name: get_recommendation_check_status
|
|
152
|
+
change_summary: |
|
|
153
|
+
Updated for Validation Engine Tier 4: now runs 72
|
|
154
|
+
deterministic checks (was 62). New checks fill
|
|
155
|
+
monitoring_adaptation and original_research domains
|
|
156
|
+
(knowledge_graph_linkage, aggregate_rating_present,
|
|
157
|
+
author_bio_on_blog_posts, sitemap_lastmod_freshness,
|
|
158
|
+
outbound_authority_citations, hreflang_and_lang_consistency,
|
|
159
|
+
well_known_agent_discovery). Response shape unchanged.
|
|
160
|
+
- name: crawl_business
|
|
161
|
+
change_summary: |
|
|
162
|
+
Docstring now notes the post-crawl auto-fill side effect:
|
|
163
|
+
empty business-profile fields (description, founding year,
|
|
164
|
+
NAICS, sameAs links) are populated from JSON-LD / meta tags
|
|
165
|
+
found on the homepage. User-supplied values are never
|
|
166
|
+
overwritten. (cited backend CIT-148.)
|
|
167
|
+
tools_removed: []
|
|
168
|
+
behavior_changed:
|
|
169
|
+
- area: plan_gating
|
|
170
|
+
change_summary: |
|
|
171
|
+
Tier assignments for the new tools:
|
|
172
|
+
- base (all tiers): ``list_profile_competitors``
|
|
173
|
+
- scale: ``set_profile_competitors``,
|
|
174
|
+
``create/update/delete_persona``,
|
|
175
|
+
``create/update/delete_product``,
|
|
176
|
+
``create_buyer_intent``,
|
|
177
|
+
``recompute_health_scores``,
|
|
178
|
+
``refresh_business_overview``
|
|
179
|
+
- pro: ``get_agent_brief`` (matches the ``get_business_hq``
|
|
180
|
+
tier — same composite-dashboard semantics).
|
|
181
|
+
|
|
24
182
|
- version: "0.3.15"
|
|
25
183
|
released: "2026-05-05"
|
|
26
184
|
# Fingerprint unchanged from 0.3.14 image runtime — pure observability +
|