Skip to main content
Glama

GrowSurf

Get Mobile SDK Guide

growsurf_mobile_sdk_guide
Read-onlyIdempotent

Get Markdown implementation guidance for native iOS/Android SDK 0.10.1 or React Native SDK 0.2.1, including attribution, shareUrl sharing, trackShare, and the native GrowSurf Window. Choose platform and participantState to tailor the guide; includeInstallSnippets controls installation examples. Does not install an SDK or create a participant token. Use growsurf_client_snippets for browser JavaScript or growsurf_api_library_snippets for backend token-creation code.

Input Schema

NameRequiredDescriptionDefault
platformNo`both` renders the native iOS and Android SDKs. `react_native` renders the React Native SDK for bare React Native apps and Expo development builds.both
campaignIdNo
mobilePublicKeyNo
participantStateNoboth
attributionProviderNoall
includeInstallSnippetsNo
serverVerifiedQualifyingActionNo

Output Schema

NameRequiredDescriptionDefault
markdownNoThe generated guidance as a markdown document.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • addedInput schema / properties / platform / description
      Added value: +"`both` renders the native iOS and Android SDKs. `react_native` renders the React Native SDK for bare React Native apps and Expo development builds."
    • changedInput schema / properties / platform / enum
      Previous value: -[
      -  "ios",
      -  "android",
      -  "both"
      -]New value: +[
      +  "ios",
      +  "android",
      +  "both",
      +  "react_native"
      +]
    • changedOutput schema / description
      Previous value: -"Native iOS/Android SDK guidance, as a markdown document."New value: +"Native iOS/Android or React Native SDK guidance, as a markdown document."
  2. First observed

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive/closed-world, so the safety bar is low, and the description still adds real signal: the return is Markdown guidance and the call performs no installation and mints no token. That negative-side-effect statement is exactly the kind of context annotations cannot express. Minor gap: nothing about guide length, version selection behavior if SDK versions advance, or whether output is cached/idempotent in practice.

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?

Four sentences, front-loaded with the verb, resource, and versions before moving to tailoring knobs, then exclusions, then alternatives — a logical order. Slightly dense with backtick-heavy enumerations, but nearly every clause carries information; the exclusion and alternative sentences both earn their place.

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

Completeness4/5

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

Output schema exists, annotations cover the safety profile, and all seven parameters are optional with defaults, so a zero-argument call is viable and the description tells the agent what to expect back. The residual gap is the undocumented parameters (notably attributionProvider and serverVerifiedQualifyingAction), which limits how well an agent can tailor the guide rather than whether it can call it at all.

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

Parameters2/5

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

Schema description coverage is only 14%, so the description must carry the load, and it does so for just three of seven parameters — and thinly: `platform` and `participantState` are said to 'tailor the guide' without explaining how the output changes, and `includeInstallSnippets` is explained almost tautologically. Four parameters (campaignId, mobilePublicKey, attributionProvider with its six providers, serverVerifiedQualifyingAction defaulting to true) get no meaning anywhere — an agent cannot reason about which attribution providers to request or what server verification implies.

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 and resource ('Get Markdown implementation guidance') and pins the exact scope by SDK family and version (native iOS/Android 0.10.1, React Native 0.2.1). It also enumerates the topics covered (attribution, `shareUrl`, `trackShare`, native GrowSurf Window), so an agent knows precisely what comes back and can distinguish it from siblings without opening the schema.

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

Usage Guidelines4/5

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

Explicitly routes two adjacent cases elsewhere: `growsurf_client_snippets` for browser JavaScript and `growsurf_api_library_snippets` for backend token creation. It also pre-empts a likely mistaken invocation by saying it 'Does not install an SDK or create a participant token' (the latter mapping to growsurf_create_mobile_participant_token). It stops short of a positive 'use this when integrating a mobile app' trigger statement, so it is not a full when/when-not pair.

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.