Skip to main content
Glama

Set integrations

set_integrations
DestructiveIdempotent

Set analytics and verification ids, rendered as real tags on published pages: GA4, GTM, Search Console, Meta Pixel, Google Ads, TikTok, LinkedIn, Pinterest, Clarity, Hotjar, Plausible, Fathom, Umami, chat widgets. Third-party snippets go in site.json inject; the site's own code is a , {% javascript %} or assets/*.js file. Guide: get_style_reference({ topic: "integrations" }).

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "set_integrations"
  }
}

Input Schema

NameRequiredDescriptionDefault
idNoSite id.
tawkNotawk.to propertyId/widgetId (chat).
crispNoCrisp website id (chat).
tidioNoTidio public key (chat).
umamiNoUmami website id.
fathomNoFathom site id.
hotjarNoHotjar site id.
privacyNoSee the integrations guide.
intercomNoIntercom app id (chat).
googleAdsNoAW-XXXXXXXXXX. Needed for per-action google-ads conversions.
metaPixelNoMeta Pixel id.
plausibleNoPlausible id (after /js/pa-).
umamiHostNoSelf-hosted Umami server.
hubspotChatNoHubSpot hub id (chat).
tiktokPixelNoTikTok Pixel id.
pinterestTagNoPinterest Tag id.
plausibleHostNoSelf-hosted Plausible server.
intercomRegionNous, eu or au. Default us.
googleAnalyticsNoGA4 id, G-XXXXXXXXXX.
linkedinInsightNoLinkedIn partner id.
googleTagManagerNoGTM-XXXXXXX.
microsoftClarityNoClarity project id.
googleSearchConsoleNoVerification content value only, not the meta tag.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / privacy
      Added value: +{
      +  "description": "See the integrations guide.",
      +  "type": "object"
      +}
  2. Changed16 schema fields changed
    • addedInput schema / properties / crisp
      Added value: +{
      +  "description": "Crisp website id (chat).",
      +  "maxLength": 128,
      +  "type": "string"
      +}
    • addedInput schema / properties / fathom
      Added value: +{
      +  "description": "Fathom site id.",
      +  "maxLength": 128,
      +  "type": "string"
      +}
    • addedInput schema / properties / hotjar
      Added value: +{
      +  "description": "Hotjar site id.",
      +  "maxLength": 128,
      +  "type": "string"
      +}
    • addedInput schema / properties / hubspotChat
      Added value: +{
      +  "description": "HubSpot hub id (chat).",
      +  "maxLength": 128,
      +  "type": "string"
      +}
    • addedInput schema / properties / intercom
      Added value: +{
      +  "description": "Intercom app id (chat).",
      +  "maxLength": 128,
      +  "type": "string"
      +}
    • addedInput schema / properties / intercomRegion
      Added value: +{
      +  "description": "us, eu or au. Default us.",
      +  "maxLength": 128,
      +  "type": "string"
      +}
    • addedInput schema / properties / linkedinInsight
      Added value: +{
      +  "description": "LinkedIn partner id.",
      +  "maxLength": 128,
      +  "type": "string"
      +}
    • addedInput schema / properties / microsoftClarity
      Added value: +{
      +  "description": "Clarity project id.",
      +  "maxLength": 128,
      +  "type": "string"
      +}
    • addedInput schema / properties / pinterestTag
      Added value: +{
      +  "description": "Pinterest Tag id.",
      +  "maxLength": 128,
      +  "type": "string"
      +}
    • addedInput schema / properties / plausible
      Added value: +{
      +  "description": "Plausible id (after /js/pa-).",
      +  "maxLength": 128,
      +  "type": "string"
      +}
    • addedInput schema / properties / plausibleHost
      Added value: +{
      +  "description": "Self-hosted Plausible server.",
      +  "maxLength": 128,
      +  "type": "string"
      +}
    • addedInput schema / properties / tawk
      Added value: +{
      +  "description": "tawk.to propertyId/widgetId (chat).",
      +  "maxLength": 256,
      +  "type": "string"
      +}
    • addedInput schema / properties / tidio
      Added value: +{
      +  "description": "Tidio public key (chat).",
      +  "maxLength": 128,
      +  "type": "string"
      +}
    • addedInput schema / properties / tiktokPixel
      Added value: +{
      +  "description": "TikTok Pixel id.",
      +  "maxLength": 128,
      +  "type": "string"
      +}
    • addedInput schema / properties / umami
      Added value: +{
      +  "description": "Umami website id.",
      +  "maxLength": 128,
      +  "type": "string"
      +}
    • addedInput schema / properties / umamiHost
      Added value: +{
      +  "description": "Self-hosted Umami server.",
      +  "maxLength": 128,
      +  "type": "string"
      +}
  3. Changed1 schema field changed
    • changedInput schema / properties / id / description
      Previous value: -"Site id. Pass it on every call."New value: +"Site id."
  4. First observed

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true and idempotentHint=true, so the safety profile is partly covered. The description adds useful behavior: these IDs render as real tags on published pages. It does not clarify whether omitted parameters are preserved or cleared, which matters for a destructive 23-parameter configuration tool.

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?

The action and effect are front-loaded, and the provider list is dense but useful for recognition. The guide pointer is actionable and compact. There is little wasted text, though the long provider enumeration adds some bulk.

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

Completeness3/5

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

The description covers the broad purpose, provider categories, snippet placement, and guide reference, which is adequate for a 23-parameter tool with full schema coverage and annotations. It stops short of explaining update semantics for partial payloads and does not mention the chat-related sibling, so an agent may still hesitate in edge cases.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already explains each parameter, including formats like G-XXXXXXXXXX and AW-XXXXXXXXXX. The description groups the parameters into analytics, verification, and chat widgets and points to the integrations guide. It adds only modest meaning beyond the schema.

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

Purpose4/5

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

The description gives a specific verb and resource: setting analytics and verification IDs that render as real tags on published pages. It lists representative providers and chat widgets, making the scope clear. It does not distinguish this tool from nearby siblings such as set_site_chat, so it falls short of a 5.

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

Usage Guidelines3/5

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

Usage is implied by the provider list and the note that third-party snippets belong in site.json inject, while the site's own code is a script or asset file. That provides some boundaries on when not to use this tool. However, it never explicitly names an alternative tool or states when to choose set_site_chat versus this integration setter.

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.

Resources