Skip to main content
Glama

Tracklution

get_installation_scripts

Return paste-safe tracking snippets, webhook templates, recommended events, common mistakes, and verification instructions for the given framework. Sensitive: the response includes a _sensitive_webhook block — only structuredContent carries the live URL. Every response includes _request_id in structuredContent.

APPLY EVERY RELEVANT SNIPPET: the response's framework_snippets keys are typically init, page_view, purchase, lead, contact_info. Apply ALL that match the project's surface:

  • init — always required (loads the tracker).

  • page_view — always required (the first signal of installation).

  • purchase — when the project has a checkout/order success flow (has_checkout=true).

  • lead — when the project is a lead-gen funnel.

  • contact_info — when the project has an authenticated user view (has_login=true). SKIPPING contact_info causes verify_and_score.scoring_complete to stay false indefinitely; the user will see 'almost done' forever.

READ common_mistakes[] PER SNIPPET: the Tracklution tracking engine is intentionally robust (deduplicates repeat Purchases, accepts late ContactInfo, absorbs React Strict Mode double-fires), so the common_mistakes are framed as OPTIMAL-vs-acceptable, not breakage warnings. Follow them when you can; their absence does NOT break tracking, but their presence makes the developer's network log cleaner.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
frameworkYes
has_loginNo
auth_tokenNoSENSITIVE: JWT from register_and_provision. Optional when `container_hash` is supplied — the MCP server then auto-attaches the JWT cached at register time. Pass this explicitly when you have it from structuredContent.
event_goalNo
server_nameNoWhich connected Tracklution server the container lives on (the server name shown at Connect time, e.g. `Main`). Required when this MCP session is connected to more than one server; pass the SAME server_name on every follow-up installation call for the container — the MCP fills it into `next_action.args` / `next_steps[].tool_args` for you. Ignored when only one server is connected.
app_dir_pathNosrc/app
container_idYes
has_checkoutNo
container_hashNoSECRET: 32-char hash from register_and_provision's data.container.hash. Required ONLY when auth_token is omitted; lets the MCP server look up the cached JWT without exposing it on the wire.
nextjs_versionNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
dataNo
fieldNo
errorsNo
statusNo
detailsNo
warningsNo
rate_limitNo
_request_idNo
http_statusNo
next_actionNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.1/5.0
Behavior5/5

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

With no annotations provided, the description carries the full disclosure burden and delivers substantially: it reveals that the response includes a _sensitive_webhook block where only structuredContent carries the live URL, that every response embeds _request_id, and that the tracking engine deduplicates repeat Purchases, accepts late ContactInfo, and absorbs React Strict Mode double-fires — reframing common_mistakes as optimization hints rather than breakage warnings. This is exactly the kind of behavioral context an agent cannot infer from the schema.

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

Conciseness5/5

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

The description is long but uniformly dense and front-loaded: purpose first, then sensitive-handling warnings, then per-snippet conditions, then the common_mistakes interpretation. Every section carries unique, actionable information an agent needs before invoking, so the length is justified rather than padded.

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?

Given high complexity (10 parameters, conditional snippet generation, sensitive output handling) and zero annotations, the description covers purpose, sensitive-block behavior, snippet selection conditions, and downstream verification consequences; an output schema exists so return-value detail is not required. The single gap is flow positioning — it never states where this call belongs in the sequence relative to register_and_provision, select_installation_method, or verify_and_score.

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

Parameters4/5

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

Schema coverage is only 30%, and the description compensates for the decision-critical parameters by mapping has_checkout=true to the purchase snippet, has_login=true to contact_info, and lead-gen to the lead snippet, giving behavioral meaning to the boolean/enum fields. Remaining parameters like container_id, framework, app_dir_path, and nextjs_version get no description-side explanation, though several are largely self-descriptive by name.

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 opening sentence names a specific verb ('Return') and a precise resource set (paste-safe snippets, webhook templates, recommended events, common mistakes, verification instructions) scoped by framework, which inherently separates it from query-style siblings like list_containers or query_events. However, it never explicitly contrasts itself with the installation-flow siblings it neighbors (select_installation_method, verify_and_score, get_next_steps), so differentiation is conveyed by content rather than stated.

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?

The description provides exceptionally explicit post-call application rules: init and page_view are always required, purchase applies only when has_checkout=true, lead for lead-gen funnels, and contact_info when has_login=true, with a concrete consequence warning that skipping contact_info leaves verify_and_score.scoring_complete false. But there is zero when-to-call guidance versus alternatives — no mention of when to prefer select_installation_method, get_next_steps, or register_and_provision instead — so tool selection itself is left to inference.

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