Skip to main content
Glama

Build proxy connection string

build_proxy_config
Read-only

Builds ready-to-use proxy URLs or host:port:user:pass lines with location, protocol, and sticky-session targeting; uses env-var password placeholders by default to keep secrets out of code.

Instructions

Build a ready-to-use proxy URL or host:port:user:pass line with targeting, plus code snippets. By default the password is an environment-variable placeholder so secrets never land in code; set password_mode to 'plain' only when the user explicitly wants it.

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

Input Schema

NameRequiredDescriptionDefault
cityNoExit city within the country, e.g. 'New York' (residential/datacenter only).
formatNourl
stickyNoGenerate a random session ID when session is not set.
countryNoTwo-letter exit country, e.g. us, de, gb.
gatewayNoEntry gateway closest to you. It does not choose the exit country.eu
sessionNoSticky session ID. Reuse it to keep the same exit IP.
protocolNohttp
usernameNoCredential to use. Defaults to DOUBLEDATA_PROXY_USERNAME or the first enabled credential of proxy_type.
proxy_typeNoProduct to use when no username is given. Defaults to residential.
ttl_minutesNoSticky session lifetime, 1-120 minutes. Requires session.
password_modeNoenv

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, and the description adds genuine security-relevant behavior beyond them: the password defaults to an environment-variable placeholder 'so secrets never land in code', and plaintext requires an explicit opt-in. It also discloses that output includes code snippets, which the annotations do not reveal. It does not describe the shape of those snippets or any failure modes, keeping it out of 5 territory.

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?

Two sentences, zero filler, with the primary output form front-loaded and the security default stated immediately after. Every clause carries information an agent would otherwise have to guess.

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 an 11-parameter, zero-required builder with no output schema, the description covers the essential contract: what is produced, that targeting applies, and the secret-handling default. The main residual gap is that the return value (URL string plus code snippets, presumably as a structured payload) is only named, not characterized, and no interaction between gateway and exit-country is mentioned — though the schema already documents that gateway 'does not choose the exit country'.

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 coverage is 73%, so the schema carries most of the load and the baseline is 3. The description meaningfully explains password_mode (env placeholder by default versus plain, with the security rationale), which the schema leaves undocumented, and 'with targeting' gestures at country/city. But format and protocol, both undocumented in the schema, are only loosely implied by 'URL or host:port:user:pass line'.

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 verb and resource: 'Build a ready-to-use proxy URL or host:port:user:pass line with targeting, plus code snippets.' An agent can tell this is a string-construction tool rather than a request-execution or listing tool (e.g., proxy_request, export_proxy_list). It stops short of explicitly contrasting itself with any sibling, so it lands at 4 rather than 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 context is only implied — you call this when you need a connection string — and there is no statement of when NOT to use it or which sibling to prefer for live proxying versus config generation. The one explicit conditional ('set password_mode to plain only when the user explicitly wants it') is guidance about a parameter, not about tool selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.