Lists the organization's pack labels (the ones the pack library of the app uses to group packs), in their order: id, name, color and order. Their ids are what label_ids of seo_planner.packs.create and seo_planner.packs.update take (an id that is not here is ignored there). Labels are created and edited in the app. Requires view access to the SEO Planner.
Alcance
seo_planner:read
Permiso
Ver el módulo
Tool del MCP
seo_planner_packs_labels_listEn la superficie completa; en la compacta, mb_execute_operation con id: "seo_planner.packs.labels.list".
Costo declarado: hasta 200 lecturas y 0 escrituras por llamada (cuentan en el cupo diario).
Parámetros
limitintegerqueryopcional
How many items this page brings at most (see the maximum and the default in the schema).
Por defecto: 50
cursorstringqueryopcional
The next_cursor of the previous page, exactly as it came (only for the same list and filters); without it, the first page.
Lists SEO action packs: reusable plans of several actions spread over months (month_offset) that seo_planner.packs.apply turns into planner actions from a base month. source picks where from: all (default) = the organization's own, then its agency workspace's when the organization is an Account (read only), then the published packs of the MB Suite library; or org, parent, system. Each pack has name, description, icon_key, color, label_ids (seo_planner.packs.labels.list), item_count, month_span, source (and source_org_id for a workspace's) and who created it (created_by_id, created_by_name). Its actions are in seo_planner.packs.items.list. Paginated by cursor. Requires view access to the SEO Planner.
Alcance
seo_planner:read
Permiso
Ver el módulo
Tool del MCP
seo_planner_packs_listEn la superficie completa; en la compacta, mb_execute_operation con id: "seo_planner.packs.list".
Costo declarado: hasta 601 lecturas y 0 escrituras por llamada (cuentan en el cupo diario).
Parámetros
limitintegerqueryopcional
How many items this page brings at most (see the maximum and the default in the schema).
Por defecto: 50
cursorstringqueryopcional
The next_cursor of the previous page, exactly as it came (only for the same list and filters); without it, the first page.
sourceenumqueryopcional
all (default: the organization's, then its workspace's when it is an Account, then the published ones of the MB Suite library), org, parent or system.
Valores: all, org, parent, system · Por defecto: "all"
Returns one SEO action pack. Without source it looks in the organization's packs, then its workspace's (for an Account) and then the published packs of the MB Suite library; drafts of the library do not exist for an organization. 404 seo_pack_not_found otherwise. Requires view access to the SEO Planner.
Alcance
seo_planner:read
Permiso
Ver el módulo
Tool del MCP
seo_planner_packs_getEn la superficie completa; en la compacta, mb_execute_operation con id: "seo_planner.packs.get".
Costo declarado: hasta 3 lecturas y 0 escrituras por llamada (cuentan en el cupo diario).
Parámetros
pack_idstringrutarequerido
The pack id (id of an item of seo_planner.packs.list).
sourceenumqueryopcional
Where to look: org, parent (the workspace of an Account) or system (the MB Suite library). Without it, in that order.
Valores: org, parent, system
Respuesta
idstring
namestring
sourceenum
org (the organization's, editable), parent (its agency workspace's, read only) or system (the MB Suite library, read only: copy it with seo_planner.packs.clone_system).
Valores: org, parent, system
descriptionstring | null
icon_keystring | null
MDI icon name (mdiMagnify).
colorstring | null
Hex color.
ordernumber
Position in the organization's list.
label_idsarray<string>
Pack label ids (seo_planner.packs.labels.list).
item_countnumber
Actions in the pack (seo_planner.packs.items.list).
month_spannumber
Months it covers when applied (the highest month_offset + 1).
source_org_idstring | null
With source parent: the workspace the pack belongs to.
source_keystring | null
The key a script loaded the pack with (packs loaded in bulk), if any.
Lists the actions of a pack in order: title, subtitle, seo_type, description, month_offset (months after the base month when applied; 0 = the base month), icon, color and sub-actions (titles). Works for the organization's packs, its workspace's and the published library packs (same lookup as seo_planner.packs.get). Requires view access to the SEO Planner.
Alcance
seo_planner:read
Permiso
Ver el módulo
Tool del MCP
seo_planner_packs_items_listEn la superficie completa; en la compacta, mb_execute_operation con id: "seo_planner.packs.items.list".
Costo declarado: hasta 203 lecturas y 0 escrituras por llamada (cuentan en el cupo diario).
Parámetros
pack_idstringrutarequerido
The pack id (id of an item of seo_planner.packs.list).
limitintegerqueryopcional
How many items this page brings at most (see the maximum and the default in the schema).
Por defecto: 50
cursorstringqueryopcional
The next_cursor of the previous page, exactly as it came (only for the same list and filters); without it, the first page.
sourceenumqueryopcional
Where to look: org, parent (the workspace of an Account) or system (the MB Suite library). Without it, in that order.
Creates an empty SEO action pack at the end of the organization's list, owned by the caller: name, optional description, icon_key (an MDI name like mdiMagnify, the default), color (hex, default #3b82f6) and label_ids (pack labels from seo_planner.packs.labels.list; unknown ids are left out and returned in ignored_label_ids). Add its actions with seo_planner.packs.items.replace. Returns pack_id and the pack. Requires full access to the SEO Planner.
Alcance
seo_planner:write
Permiso
Editar en el módulo
Tool del MCP
seo_planner_packs_createEn la superficie completa; en la compacta, mb_execute_operation con id: "seo_planner.packs.create".
Costo declarado: hasta 51 lecturas y 1 escrituras por llamada (cuentan en el cupo diario).
Parámetros
namestringcuerporequerido
The pack's name (1 to 200 characters).
descriptionstringcuerpoopcional
What the pack is for.
icon_keystringcuerpoopcional
MDI icon name, e.g. mdiMagnify (the default).
colorstringcuerpoopcional
Hex color, default #3b82f6.
label_idsarray<string>cuerpoopcional
Pack label ids (seo_planner.packs.labels.list), up to 50; ids that do not exist are left out and returned in ignored_label_ids.
Respuesta
pack_idstring
packobject
ignored_label_idsarray<string>
The label_ids given that are not labels of the organization (seo_planner.packs.labels.list): they were left out.
Changes the name, description, icon_key, color or label_ids of one of the organization's packs, inside updates. A pack of the workspace or of the MB Suite library is 409 seo_pack_read_only (details.source parent or system), with the way to go: a library pack is copied with seo_planner.packs.clone_system and the copy is edited; a workspace pack is changed on the workspace. An id that does not exist anywhere is 404 seo_pack_not_found. Its actions change with seo_planner.packs.items.replace. Unknown fields are rejected; unknown label ids are left out and returned in ignored_label_ids. Returns the pack. Requires full access to the SEO Planner.
Alcance
seo_planner:write
Permiso
Editar en el módulo
Tool del MCP
seo_planner_packs_updateEn la superficie completa; en la compacta, mb_execute_operation con id: "seo_planner.packs.update".
Costo declarado: hasta 51 lecturas y 1 escrituras por llamada (cuentan en el cupo diario).
Parámetros
pack_idstringrutarequerido
The id of one of the organization's own packs (a workspace or library pack cannot be edited: copy it first).
updatesobjectcuerporequerido
The fields to change (at least one). Its actions change with seo_planner.packs.items.replace.
Respuesta
packobject
ignored_label_idsarray<string>
The label_ids given that are not labels of the organization (seo_planner.packs.labels.list): they were left out.
Deletes one of the organization's packs with all its actions. It goes to the 30-day trash and comes back whole (actions included). Planner actions already created from the pack are not touched. Outside the app it needs a dry run and a confirm_token, except a REST DELETE with a key allowed to delete. Requires full access to the SEO Planner.
Con una API key, este DELETE se ejecuta directo: el registro queda 30 días en la papelera y la respuesta trae su trash_item_id. Con un token OAuth, y por el MCP, pide dry_run → confirm_token.
Alcance
seo_planner:writey «Permitir eliminar» (seo_planner:delete en OAuth)
Permiso
Editar en el módulo
Tool del MCP
seo_planner_packs_deleteEn la superficie completa; en la compacta, mb_execute_operation con id: "seo_planner.packs.delete".
Costo declarado: hasta 1001 lecturas y 1001 escrituras por llamada (cuentan en el cupo diario).
Parámetros
pack_idstringrutarequerido
The id of one of the organization's own packs (source org in seo_planner.packs.list).
Respuesta
oktrue
trash_item_idstring
The trash item this deletion left: the item_id of platform.trash.restore (POST /trash/{item_id}/restore). Missing if nothing went to the trash.
trash_item_idsarray<string>
Only when the deletion left more than one copy: all of them, the first being trash_item_id.
trash_expires_atnumber
When the copy leaves the trash for good (epoch ms): 30 days after the deletion.
Copies one of the organization's packs with all its actions into a new pack named '<name> (Copy)' (the suffix in the caller's language: '(Copia)', '(Copy)' or '(Cópia)'), owned by the caller. Returns the new pack id. Requires full access to the SEO Planner.
Alcance
seo_planner:write
Permiso
Editar en el módulo
Tool del MCP
seo_planner_packs_duplicateEn la superficie completa; en la compacta, mb_execute_operation con id: "seo_planner.packs.duplicate".
Costo declarado: hasta 1001 lecturas y 1002 escrituras por llamada (cuentan en el cupo diario).
Parámetros
pack_idstringrutarequerido
The id of one of the organization's own packs (source org in seo_planner.packs.list).
Copies a published pack of the MB Suite library (an id from seo_planner.packs.list with source system) into the organization, actions included, so it can be edited. Drafts of the library cannot be copied (404 seo_pack_not_found). Returns the new pack id. Requires full access to the SEO Planner.
Alcance
seo_planner:write
Permiso
Editar en el módulo
Tool del MCP
seo_planner_packs_clone_systemEn la superficie completa; en la compacta, mb_execute_operation con id: "seo_planner.packs.clone_system".
Costo declarado: hasta 1002 lecturas y 1002 escrituras por llamada (cuentan en el cupo diario).
Parámetros
system_pack_idstringrutarequerido
The id of a published library pack (an item of seo_planner.packs.list with source system).
curl-X POST "https://api.mb-suite.com/v1/seo-planner/packs/system/{system_pack_id}/clone" \
-H"Authorization: Bearer $MB_API_KEY"
Probar con tu API key de prueba
Con una API key de prueba el pedido va siempre a tu organización de práctica: datos de ejemplo que puedes reiniciar.
curl-X POST "https://api.mb-suite.com/v1/seo-planner/packs/system/{system_pack_id}/clone" \
-H"Authorization: Bearer $MB_TEST_KEY"
POST/v1/seo-planner/packs/{pack_id}/items/replace
Replace the actions of an SEO action pack
seo_planner.packs.items.replace
EscrituraDesde 2026-11-01
Saves the whole ordered list of actions of one of the organization's packs (up to 100), like the pack editor: each one with title, seo_type, month_offset (0–60 months after the base month), optional subtitle, description, icon and color (default: those of its type), sub_actions (titles) and source_template_id. Actions that carry the item_id of an existing one keep that id; the rest are new; existing ones missing from the list are removed. item_count and month_span are recalculated. Returns the saved list. Requires full access to the SEO Planner.
Alcance
seo_planner:write
Permiso
Editar en el módulo
Tool del MCP
seo_planner_packs_items_replaceEn la superficie completa; en la compacta, mb_execute_operation con id: "seo_planner.packs.items.replace".
Costo declarado: hasta 1001 lecturas y 1101 escrituras por llamada (cuentan en el cupo diario).
Parámetros
pack_idstringrutarequerido
The id of one of the organization's own packs.
itemsarray<object>cuerporequerido
The WHOLE list of the pack's actions, in order (up to 100): it replaces the current one.
Creates one SEO Planner action per action of a pack (the organization's, its workspace's or a published library pack; without source, looked up in that order), each in the month base_month_key (YYYY-MM) + its month_offset, pending, with the pack action's title, subtitle, type and sub-actions, and linked to the pack (pack_id, pack_source, pack_item_id). items can leave some out (include: false). The pack is read on the server: nothing of its content comes from the caller. Up to 100 actions. Outside the app it requires a dry run (which lists the actions and their months) and a confirm_token. Requires full access to the SEO Planner.
Pide confirmación: primero dry_run: true (vista previa y confirm_token, que vale 10 minutos y una sola vez), después el mismo cuerpo con confirm_token. En unas pocas, solo con ciertos datos: la descripción dice cuándo. Por qué y cómo: Vista previa y confirmación.
Alcance
seo_planner:write
Permiso
Editar en el módulo
Tool del MCP
seo_planner_packs_applyEn la superficie completa; en la compacta, mb_execute_operation con id: "seo_planner.packs.apply".