Skip to main content
Glama

Opus Growth, Ad Platforms MCP Connector

Manage Business Services

gbp_manage_services
Destructive

Manages the SERVICE LIST on a Google Business Profile (the "Services" block shown on Maps/Search) — the field gbp_location_details returns as services. This is what Google's Ask Maps AI reads when it answers "does this clinic do X?", so a complete list with descriptions is worth real visibility.

action: • add (default) — adds the given services; names that already exist are SKIPPED (idempotent, safe to re-run) • update — sets the DESCRIPTION of services that already exist; adds nothing • remove — deletes the given services by name • replace — makes the list EXACTLY what you pass (anything not listed is deleted)

services accepts any of: a list of names (["Fissür Örtücü", "Flor Uygulaması"]), "Name|description" entries, a newline/semicolon separated string, or dicts [{"name": …, "description": …}]. Descriptions are capped at 300 characters by Google — longer text is rejected with the offending service named.

Names are matched loosely (case, Turkish characters and text in parentheses are ignored), so "Diş Beyazlatma (Bleaching)" and "diş beyazlatma" count as the same service. If a name matches one of Google's predefined service types for the category it is written as a STRUCTURED item, otherwise as a FREE-FORM item under the primary category. Existing prices on services you do not touch are preserved.

SAFETY: confirm=false (default) returns a PREVIEW listing exactly what would be added/updated/removed and changes nothing; confirm=true applies. location = a gbp_list_locations value or the business name/domain (auto-matched).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
actionNoadd
confirmNo
locationYes
servicesNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added
  2. Removed
  3. Added
  4. Removed
  5. Added
  6. Removed
  7. Added
  8. Removed
  9. Added
  10. Removed
  11. Added
  12. Removed
  13. Added
  14. Removed
  15. Added
  16. Removed
  17. Added
  18. Removed
  19. Added
  20. Removed
  21. Added
  22. Removed
  23. Added
  24. Removed
  25. Added
  26. Removed
  27. Added
  28. Removed
  29. Added
  30. Removed
  31. Added
  32. Removed
  33. Added
  34. Removed
  35. Added
  36. Removed
  37. Added
  38. Removed
  39. Added

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already flag destructiveHint=true and readOnlyHint=false, but the description goes well beyond them: replace explicitly deletes anything not listed, add is idempotent and skips existing names, descriptions are capped at 300 characters and rejected with the offending name, names are matched loosely across case/Turkish characters/parentheses, and existing prices on untouched services are preserved. It also documents the preview/apply safety gate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Well front-loaded and structured with bullets and headers, with the action semantics and safety model given prominence. Most sentences earn their place given 0% schema coverage, but the 'Ask Maps AI reads this / worth real visibility' value pitch is promotional framing rather than invocation guidance and could be trimmed.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values needn't be explained, and the description still covers everything else an agent needs for a 4-parameter mutation tool: action semantics, input formats, matching rules, limits, location resolution, and the preview/apply safety gate. Nothing material is left ambiguous for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description carries the full burden and does: `services` accepts a name list, "Name|description" strings, newline/semicolon strings, or dicts; `action` enumerates all four modes with defaults; `confirm` semantics (preview vs apply); `location` accepts a gbp_list_locations value or business name/domain. Every one of the four raw parameters is documented with accepted formats.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource and scope: it manages the SERVICE LIST on a Google Business Profile, tying it to the exact field name gbp_location_details returns (`services`). No sibling tool in the list covers GBP services, and the description anchors itself to related tools the agent will recognize (gbp_location_details, gbp_list_locations) so the agent can distinguish it immediately.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives explicit per-action semantics for all four modes: add (default, skips existing), update (description only, adds nothing), remove (deletes by name), replace (list becomes exact, unlisted items deleted). It also states the confirm=false preview-first workflow and the location resolution rule, so the agent knows both when to pick each action and when to preview before applying.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.