Skip to main content
Glama

BotSpot: AI Trading, Backtests and Bots

Create or read a strategy share link

strategy_share_link
Idempotent

action="create" creates or refreshes a private bearer share link for a strategy; a new link shares backtest results and gets a generated password returned once unless password or noPassword: true is passed. action="get" reads its current sharing status without creating one.

Set "action" to choose the operation. Only send the fields listed for that action.

No other fields required. Creates a private bearer link for one strategy; anyone who receives or forwards it can access the granted capabilities until it is revoked. A new link shares the owner's backtest results by default (allowPerformanceView: false turns that off); an existing link keeps its stored backtest setting. Code access and cloning are denied unless explicitly enabled. A brand-new link is password protected by default: BotSpot generates a strong password, builds it into the returned link as #pwd= (Zoom style, so the full link opens directly), and returns it once (stored only as a hash). Pass password to choose it, or noPassword: true (or password: null) to share with no password. For public marketplace listing, use publish_to_marketplace instead.

action="get": Get sharing status for a strategy

No other fields required. Returns the current sharing status for a strategy — whether it has an active private share link, when it was last shared, the share URL if available, and sharing settings (code view, clone permissions). Also reports marketplace listing status. Does NOT create a share if none exists — use strategy_share_link(action="create") to create one.

Input Schema

NameRequiredDescriptionDefault
actionYesWhich operation to run: "create", "get". See the tool description for each one.
passwordNoOptional password, 8 to 128 characters. Omit it to get a generated one on a new link. null shares with no password. Used with action="create".
accountIdNoaction="create": Optional account used only as this strategy publication data source | action="get": Optional selected performance account Used with action="create", action="get".
allowCloneNoCan viewers clone/fork the strategy? Default false Used with action="create".
noPasswordNotrue shares the link with no password instead of generating one. Used with action="create".
strategyIdNoThe Strategy entity ID Used with action="create", action="get".
aiStrategyIdNoaction="create": The AiStrategy entity ID (alternative to strategyId) | action="get": The AiStrategy entity ID Used with action="create", action="get".
allowCodeViewNoCan viewers see the strategy code? Default false Used with action="create".
forceRegenerateNoGenerate a new token even if one exists. Default false Used with action="create".
allowPerformanceViewNoCan viewers see the owner's backtest results? Default true for a new link; an existing link keeps its setting. Used with action="create".

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior5/5

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

The description goes well beyond the annotations by explaining that the bearer link grants access until revoked, that a new link shares backtest results by default while an existing link keeps its stored setting, and that code/clone access is denied unless enabled. It also discloses the password lifecycle: generated once, stored as a hash, embedded as #pwd=, and replaceable via password or noPassword.

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 structure is front-loaded with a one-line summary and then splits into action="create" and action="get" sections, which fits a 10-parameter dual-action tool. It is appropriately sized overall, though phrases like 'No other fields required' and repeated password details introduce mild redundancy.

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?

Given 10 parameters and no output schema, the description covers both operations, create-time defaults and password behavior, and get-time return information such as sharing status, last shared time, share URL, code/clone settings, and marketplace listing status. An agent has enough context to choose the action and understand key side effects.

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 100%, so parameter definitions are already strong, but the description adds action-specific meaning: password/noPassword behavior, allowPerformanceView defaults for new versus existing links, and allowCodeView/allowClone default denial. It does not add comparable clarification for accountId, forceRegenerate, or aiStrategyId, which remain schema-only.

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 clearly states that the tool creates or reads a private bearer share link for a strategy and separates action="create" from action="get". It also distinguishes the public case by directing marketplace listings to publish_to_marketplace. However, it does not address the sibling private_share_link, so sibling differentiation is strong but incomplete.

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?

Usage is explicit: action="create" creates or refreshes a link, action="get" only reads status and does not create one. It tells the agent to use strategy_share_link(action="create") when no share exists and to use publish_to_marketplace for public marketplace listing.

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.