@typeroll/mcp-server 0.45.63 → 0.45.65

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/AGENTS.md CHANGED
@@ -139,7 +139,11 @@ maps to one HTTP endpoint; the actual logic runs in the customer's portal
139
139
  compatibility) through the same admin API key used for content
140
140
  and deploys. Read the schema before writing. Secret fields stay masked on
141
141
  reads and encrypted at rest; omitted fields preserve their current values.
142
- When `affects_build` is true, deploy after the update.
142
+ When `affects_build` is true, deploy after the update. Enabling Analytics
143
+ creates its Cloudflare Web Analytics site in the account that hosts the site;
144
+ `read_app` and `update_app` return `setup` with the result. A 409 from
145
+ `update_app` carries `code` and `details.next_step`: relay that step to the
146
+ person (for example approving Analytics access in Cloudflare) and retry.
143
147
 
144
148
  - **Extension installations.** `list_extension_installations`,
145
149
  `read_extension_installation`, and `update_extension_installation_config`
@@ -842,7 +846,7 @@ something is quietly wrong:
842
846
  page breaks at once.
843
847
  - **hosting adapter** (blocker) — without credentials, deploys return a job id
844
848
  and publish nothing, while reporting success.
845
- - verification origin, AI reconstruction, form notification email, and whether
849
+ - verification origin, content preservation, form notification email, and whether
846
850
  the target actually has a design to rebuild INTO (warnings).
847
851
 
848
852
  `ready: false` means STOP and report the blockers, each of which carries a
@@ -1010,7 +1014,9 @@ site that starts with a WordPress migration or an AI plan is one call with an
1010
1014
  organization key: `create_site_and_migrate` or `create_site_and_plan` (the two
1011
1015
  non-blank options on the portal's New site page). Migration needs verified
1012
1016
  organization import storage (`409 import_storage_required` otherwise; nothing
1013
- is created).
1017
+ is created). An AI plan needs the Organization's own AI key with site access
1018
+ `all` (`403 ai_not_enabled` otherwise; nothing is created): you can instead
1019
+ create a blank site and plan it yourself.
1014
1020
 
1015
1021
  ### "Give someone access" (keys, sharing, invites)
1016
1022
 
@@ -1028,6 +1034,19 @@ is created).
1028
1034
  a link; the person signs in and joins as an editor. Creating Organizations,
1029
1035
  switching Organization and redeeming invites remain signed-in portal actions.
1030
1036
 
1037
+ ### "Turn on the portal's AI assistant" (and why you don't need it)
1038
+
1039
+ You are the user's own agent: MCP and the API work on every Site you can
1040
+ reach, whatever this setting says. The built-in AI chat in the portal is
1041
+ separate. It uses the Organization's own Anthropic API key and appears only
1042
+ on the Sites an owner or admin chooses. `read_organization_ai_settings` shows
1043
+ whether a key is set (last four characters only) and `ai_enabled` per Site;
1044
+ `set_organization_ai_site_access` (`mode: "all"` or `"selected"` with
1045
+ `site_ids`), `set_organization_ai_key` and `remove_organization_ai_key` change
1046
+ it (organization key, owner/admin). Prefer that the person enters the key in
1047
+ the portal (Organization settings → AI assistant) so it never passes through
1048
+ your conversation; never repeat a key back.
1049
+
1031
1050
  ### "Connect GitHub or Cloudflare"
1032
1051
 
1033
1052
  `read_organization_publishing_connections` (organization key) reports both
@@ -1213,9 +1232,9 @@ preview.
1213
1232
  | **Discovery** | `get_site`, `create_site`, `create_site_and_migrate`, `create_site_and_plan` (org-scoped key only — see below), `update_site` (incl. `ai_scripts_enabled`, admin), `list_versions`, `read_site_settings` |
1214
1233
  | **Site lifecycle** | `archive_site`, `restore_site`, `purge_site_media` (archived sites only, irreversible). Owner-organization admin, as in the portal. |
1215
1234
  | **Workflows** | `list_workflows`, `start_workflow` (write; `rebuild_deploy` admin), `get_workflow`, `approve_workflow` (only `paused_for_review`, with the user's consent) |
1216
- | **Access** | `list_api_keys`, `revoke_api_key` (site admin), `list_organization_api_keys`, `revoke_organization_api_key` (organization key; new keys are created only in the portal), `list_site_shares`, `share_site`, `update_site_share`, `revoke_site_share` (site admin), `create_organization_invite` (organization key) |
1235
+ | **Access** | `list_api_keys`, `revoke_api_key` (site admin), `list_organization_api_keys`, `revoke_organization_api_key` (organization key; new keys are created only in the portal), `list_site_shares`, `share_site`, `update_site_share`, `revoke_site_share` (site admin), `create_organization_invite` (organization key), `read_organization_ai_settings`, `set_organization_ai_key`, `remove_organization_ai_key`, `set_organization_ai_site_access` (the portal AI chat's own key and Sites; organization key) |
1217
1236
  | **Organization publishing** | `read_organization_publishing_connections`, `diagnose_organization_github_connection`, `diagnose_organization_cloudflare_connection`, `disconnect_organization_publishing_provider`, `connect_organization_cloudflare`, `prepare_organization_media_storage`, `save_organization_media_access`, plus builds, Hosting Groups, domains and media migration tools (organization key) |
1218
- | **Insights** | `get_site_insights` — traffic, AI-assistant referrals, and first-party conversion events over 7/30/90 days. Read-only. Traffic is powered by Cloudflare Web Analytics; conversion rows come from validated Analytics attribution `click_event` targets and can be present even when the traffic provider is unavailable. |
1237
+ | **Insights** | `get_site_insights` — traffic, AI-assistant referrals, and first-party conversion events over 7/30/90 days. Read-only. Traffic is powered by Cloudflare Web Analytics in the account that hosts the site; a non-ok `status` carries a `reason` with the next step. Conversion rows come from validated Analytics attribution `click_event` targets and can be present even when the traffic provider is unavailable. |
1219
1238
  | **Pages — reads** | `list_pages`, `read_page`, `batch_read_pages` |
1220
1239
  | **Pages — writes** | `create_page`, `update_page`, `replace_page`, `batch_update_pages`, `delete_page`, `clone_page` |
1221
1240
  | **Pages — blocks** | `get_page_blocks`, `add_block`, `update_block`, `move_block`, `remove_block`, `duplicate_block`, `set_block_responsive`, `set_page_mode` (never converts HTML into blocks) |
package/README.md CHANGED
@@ -177,6 +177,11 @@ the full reference + concrete operation recipes.
177
177
  `create_organization_invite` (editor invite link). A share never reaches
178
178
  further than the caller. New API keys are created only in the portal, so the
179
179
  secret never passes through an agent conversation.
180
+ - **Portal AI assistant** — `read_organization_ai_settings`,
181
+ `set_organization_ai_key`, `remove_organization_ai_key` and
182
+ `set_organization_ai_site_access`: the Organization's own Anthropic key
183
+ (verified, encrypted, never returned) and the Sites that show the built-in
184
+ AI chat. Organization key, owner/admin. MCP itself never depends on it.
180
185
  - **Workflows** — `list_workflows`, `start_workflow` (migration, site planning,
181
186
  SEO/link/performance audits, content generation and improvement, schema
182
187
  markup, URL parity, rebuild & deploy), `get_workflow`, `approve_workflow`.