Skip to main content
Glama

BotSpot: AI Trading, Backtests and Bots

Test Schwab broker connection

test_schwab_broker_connection

One-stop MCP smoke test for an authenticated user's saved Schwab broker connection. If brokerCredentialId is omitted and exactly one active Schwab credential exists, this selects it automatically. The tool checks sanitized token-refresh readiness and, by default, requests one immediate no-trade broker snapshot run through the normal Vault-backed runtime-secret path. Set includeDiagnostics=true to also return sanitized snapshot/Bot Manager diagnostics. Raw Schwab tokens, account numbers, Vault ids, runtime secret ARNs, API keys, raw runtime configuration, and secret values are never accepted or returned.

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": "test_schwab_broker_connection"
  }
}

Input Schema

NameRequiredDescriptionDefault
logLimitNo
includeLogsNo
runSnapshotNo
brokerCredentialIdNo
includeDiagnosticsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.9/5.0
Behavior4/5

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

Annotations mark this as non-readOnly, open-world, non-idempotent, so the description usefully discloses the actual side effect (an immediate no-trade broker snapshot run through the Vault-backed runtime-secret path) rather than repeating annotation language. It also states the sanitization boundary for what is never accepted or returned, which is real behavioral context. It does not mention API-quota or rate-limit cost of running a snapshot.

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?

Purpose is front-loaded in the first sentence, with the credential-selection rule, default side effect, and diagnostics opt-in following in a logical sequence. The closing data-exclusion list is long but carries genuine security value; some enumeration could be tightened.

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?

For a five-parameter tool with no output schema, the description covers the main behavior, defaults, and safety boundary, and hints at what is returned (snapshot run results, optionally sanitized diagnostics). The gap is the unexplained logging parameters (includeLogs, logLimit) and no indication of response shape or how failures are surfaced.

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 0%, so the description carries the full burden. It adds meaning for brokerCredentialId (auto-selection rule), includeDiagnostics (what it returns), and implicitly runSnapshot (default true, causing a snapshot run), but includeLogs and logLimit are never explained anywhere, leaving two of five parameters opaque.

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?

States a specific composite action: a smoke test that validates token-refresh readiness for a saved Schwab broker credential and, by default, executes one no-trade snapshot run. That composite scope differentiates it from narrower siblings like get_broker_token_refresh_status or get_broker_account_snapshot, though no sibling is named explicitly.

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?

Gives actionable conditions: omit brokerCredentialId when exactly one active Schwab credential exists and it is auto-selected; set includeDiagnostics=true only when sanitized snapshot/Bot Manager diagnostics are needed; snapshot run happens by default. It lacks an explicit 'use X instead when...' exclusion, so it falls short of a 5.

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.