@proxies-sx/mcp-server
This server enables AI agents to autonomously purchase, configure, and manage mobile proxies (real 4G/5G carrier IPs) via an API key or on-chain USDC payments (x402), with no human intervention required.
Account & Billing
Get account summary (balance, email, slot & traffic usage), detailed usage breakdowns, live pricing, and volume discounts
Purchase shared or private traffic GB from account balance
Create, list, and cancel crypto payment orders (BTC, ETH, USDT, 50+ coins via CoinGate)
Port Management
List, create, inspect, reconfigure, update credentials, and delete proxy ports
Target specific countries, cities, and carriers
Set OS fingerprint spoofing (Windows, macOS, iOS, Android)
Proxy Status & Utilities
Check if a port is online/offline, get its current public IP, ping for latency, and run speed tests
Generate ready-to-use HTTP/SOCKS5 connection strings in multiple formats
List available countries, carriers, and OS fingerprint options
IP Rotation
Rotate a port to a new IP on demand, check rotation availability (cooldowns), configure automatic scheduled rotation, view rotation history, and get public no-auth rotation URLs
Customer Support
Create, list, view, reply to, and close support tickets
x402 Session Management (on-chain purchased sessions)
Retrieve session details and associated ports, check per-port status and traffic usage
Recover sessions by wallet address
Replace offline/broken ports for free (up to 3 per session)
Calculate and execute session top-ups (add traffic or duration)
x402 Autonomous Proxy Purchasing (no account needed)
Buy a dedicated mobile proxy by paying USDC on-chain (Base or Solana) — returns live credentials instantly
Get pricing quotes, check wallet USDC balance, rotate IP via rotation token
Browse available countries, cities, and carriers; check service health status
x402 Pool Gateway
Purchase a single DSL credential providing access to mobile proxies across multiple countries
Check remaining pool GB credit, top up traffic, regenerate pool credentials, and view tier pricing
Allows AI agents to purchase and manage mobile proxies autonomously by paying with USDC on the Solana blockchain through the x402 protocol.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@@proxies-sx/mcp-serverCreate a new US mobile proxy with 2 GB and rotate the IP."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
@proxies-sx/mcp-server
MCP (Model Context Protocol) server for AI agents to manage mobile proxy infrastructure on Proxies.sx.
This server enables AI assistants like Claude to manage your proxy ports, rotate IPs, purchase resources, and more through natural language commands. Learn more about MCP integration and x402 autonomous payments.
Two Authentication Modes
1. API Key Mode (Account Required)
Use your Proxies.sx account and API key to manage existing subscriptions.
2. x402 Payment Mode (No Account Needed)
AI agents can autonomously purchase proxies using USDC on Base or Solana networks - no account required! See our x402 documentation for details.
Related MCP server: Fluora MCP
Features
Account Management: Check balance, usage, and resource allocation
Port Management: Create, configure, delete proxy ports
IP Rotation: Manual and automatic rotation with customizable settings
Status Monitoring: Check port status, IP addresses, latency, speed
Billing: Purchase slots and traffic using account balance
Crypto Payments: Top up balance with BTC, ETH, USDT, and 50+ cryptocurrencies
x402 Autonomous Payments: AI agents pay with USDC - no account needed
Reference Data: List available countries, carriers, and cities
Installation
Option 1: npx (Recommended - No Install)
The easiest way to use this MCP server - no installation required:
npx @proxies-sx/mcp-serverOption 2: npm Install (Global)
Install globally to use the proxies-sx-mcp command anywhere:
npm install -g @proxies-sx/mcp-serverAfter installation, run with:
proxies-sx-mcpOption 3: npm Install (Local Project)
Add to your project as a dependency:
npm install @proxies-sx/mcp-serverThen run with:
npx proxies-sx-mcpOption 4: From Source
git clone https://github.com/bolivian-peru/proxies-sx-mcp-server.git
cd mcp-server
npm install
npm run build
npm startWhat Gets Installed
When you run npm install @proxies-sx/mcp-server:
@proxies-sx/mcp-server (904 KB)
├── @modelcontextprotocol/sdk (MCP protocol implementation)
├── viem (Ethereum/Base wallet operations)
└── zod (Input validation)
Total: ~88 MB with all dependenciesPackage contents:
dist/- Compiled JavaScript + TypeScript definitionsREADME.md- DocumentationLICENSE- MIT Licensellm.txt- AI agent discovery document
Verify Installation
After installing, verify the package works:
# Check version
npm list @proxies-sx/mcp-server
# Test loading (should show "70 tools available" - the API-key set; 89 total with the 19 x402 wallet tools)
node -e "const t = require('@proxies-sx/mcp-server/dist/tools'); console.log(t.allToolDefinitions.length + ' tools available')"Configuration
Environment Variables
Variable | Mode | Required | Description |
| API Key | Yes | Your Proxies.sx API key |
| x402 | Yes | Private key for USDC payments (Base or Solana) |
| Both | No | Custom API URL (default: |
Mode 1: API Key Authentication
Log in to client.proxies.sx
Go to Account Settings
Create a new API key with scopes:
ports:read,ports:write,ports:rotate- Port managementbilling:read,billing:write- Purchasesaccount:read- Account infotraffic:read- Usage data
Mode 2: x402 Autonomous Payments
No account needed! The agent uses a crypto wallet to pay directly:
Create a wallet on Base or Solana network
Fund it with USDC (minimum $0.40 for 0.1 GB, or $4.00 for 1 GB)
Add a small amount of ETH (Base) or SOL (Solana) for gas fees (~$0.01)
Set
AGENT_WALLET_KEYto your private key
Usage with Claude Desktop
API Key Mode
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"proxies-sx": {
"command": "npx",
"args": ["-y", "@proxies-sx/mcp-server"],
"env": {
"PROXIES_API_KEY": "psx_your_api_key_here"
}
}
}
}x402 Payment Mode (Autonomous)
{
"mcpServers": {
"proxies-sx": {
"command": "npx",
"args": ["-y", "@proxies-sx/mcp-server"],
"env": {
"AGENT_WALLET_KEY": "0x_your_private_key_here"
}
}
}
}Then restart Claude Desktop.
x402 Protocol - Autonomous AI Payments
The x402 protocol enables machine-to-machine payments using HTTP 402 Payment Required.
How It Works
┌─────────────────────────────────────────────────────────────────────────────┐
│ x402 PAYMENT FLOW │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ 1. Agent requests proxy │
│ ┌─────────────────────┐ ┌──────────────────────────────────────┐ │
│ │ MCP Server │──────▶│ api.proxies.sx/v1/x402/proxy │ │
│ │ @proxies-sx/mcp │ │ │ │
│ └─────────────────────┘ │ Returns 402 Payment Required │ │
│ │ with payment requirements │ │
│ └──────────────────────────────────────┘ │
│ │ │
│ 2. Agent signs USDC payment ▼ │
│ ┌─────────────────────┐ ┌──────────────────────────────────────┐ │
│ │ Agent Wallet (viem) │ │ Payment Requirements: │ │
│ │ Signs ERC-20 permit │ │ - Amount: $4.00 USDC (1GB) │ │
│ └──────────┬──────────┘ │ - Network: Base or Solana │ │
│ │ │ - Recipient: Proxies.sx wallet │ │
│ ▼ └──────────────────────────────────────┘ │
│ 3. Payment settled via x402.org facilitator │
│ ┌─────────────────────┐ ┌──────────────────────────────────────┐ │
│ │ Retry request with │──────▶│ Payment verified & settled on-chain │ │
│ │ payment signature │ │ (Base L2 or Solana) │ │
│ └──────────┬──────────┘ └──────────────────────────────────────┘ │
│ │ │
│ ▼ │
│ 4. Proxy credentials returned │
│ ┌─────────────────────────────────────────────────────────────────────┐ │
│ │ PROXY CREDENTIALS │ │
│ │ - HTTP: http://user:pass@server:8500 │ │
│ │ - SOCKS5: socks5://user:pass@server:5500 │ │
│ │ - Session token for management │ │
│ │ - Rotation URL for IP changes │ │
│ └─────────────────────────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────────────┘x402 Pricing
Duration is always FREE — you only pay for traffic.
Tier | Port Price | Traffic Price | Min Purchase |
Shared | FREE | $4.00/GB | 0.1 GB ($0.40) |
Available countries (live, measured against /v1/x402/countries): US, GB, FR, NL, PL, GE (Georgia, not Germany — same 6 countries as the Pool Gateway mbl tier; dynamic based on device availability)
Supported Networks
Network | USDC Address | Recipient |
Base |
|
|
Solana |
|
|
x402 Tools (Detailed)
Tool | What It Does |
| Purchase a mobile proxy automatically. Sends USDC on-chain, waits for confirmation, returns proxy credentials (host, port, username, password, session token, rotation token). Specify country and traffic in GB. |
| Get current pricing — $4/GB. Shows minimum purchase (0.1 GB), duration rules, and available countries with live device counts. |
| List all active proxy sessions for your wallet. Shows session ID, traffic used/remaining, expiration, port count, and status. |
| Get detailed session info by ID — includes all port credentials, traffic stats, and expiration. Use this to retrieve your proxy details. |
| Check your USDC balance on Base or Solana. Shows available funds and whether you have enough for a purchase. |
| Rotate to a new IP address using the rotation token from your proxy purchase. Free, no payment needed. Returns the new IP. |
| List countries where proxies are available with live device counts. Currently: US, GB, FR, NL, PL, GE (Georgia). |
| List available cities within a specific country. |
| List mobile carriers available in a country (e.g., AT&T, Verizon, T-Mobile for US). |
| Extend a session's duration for FREE (duration-only top-up, no USDC sent). Accepts a session ID or the x402s_ session token. All active ports in the session are extended. For more traffic (paid, $4/GB) use |
| Health check — verifies the x402 service is running and accepting payments. |
x402 Pool Gateway Tools (Detailed)
Wallet-only Pool Gateway access: pay USDC, get ONE credential that reaches every country in your tier via the username DSL (e.g. psx_xxx-mbl-us, -mbl-pl, ...). HTTP proxy on port 7000. v1 tier is mbl ($4/GB, metered, production ProxySmart modems, 6 countries: US/GB/FR/NL/PL/GE).
Tool | What It Does |
| Buy Pool Gateway access with USDC (Base or Solana). Returns one credential valid for every country in the tier, plus a session token (cached locally) for the manage tools below. |
| Check remaining pool credit (allocated/used/remaining GB, enabled state, expiry). Uses the cached session token if none is provided. |
| Add GB (paid, $4/GB) and/or duration (FREE) to a pool session. Pays USDC automatically when traffic is added. |
| Rotate the pool credential secret (new password, same username). Use if the credential leaked. |
| Re-emit the full pool proxy credentials (host, port, username, password) for recovery. |
| Get per-day bandwidth usage (MB) for a pool session over the last N days (default 30, max 365), gap-filled with zeroes. |
| Get the Pool Gateway tier catalog: tiers, $/GB, min purchase, networks, and the username DSL. No auth or wallet needed. |
| Public Pool Gateway stock: online endpoint counts per country (no IPs). No auth needed. |
API Key Mode Tools
Account Tools
Tool | Description |
| Get account balance and resource usage |
| Get detailed traffic breakdown |
Port Tools
Tool | Description |
| List all proxy ports with filters |
| Get detailed port information |
| Create a new proxy port |
| Delete a proxy port |
| Update port login/password |
| Set OS fingerprint spoofing |
| Change port location |
Status Tools
Tool | Description |
| Check if port is online |
| Get current public IP |
| Test connectivity and latency |
| Measure download/upload speed |
Rotation Tools
Tool | Description |
| Rotate to new IP |
| Check if rotation is available |
| Set up automatic rotation |
| View rotation history |
| Get public rotation URL |
Billing Tools
Tool | Description |
| Get current pricing with volume discounts and slot tiers |
| Calculate price for a specific GB amount with volume discounts |
| Buy shared traffic in GB ($4/GB base). Auto-upgrades slot tier! |
Crypto Payment Tools
Tool | Description |
| Create crypto payment order ($10-$1000) |
| Check payment status by order ID |
| List all pending payments |
| Cancel a pending payment |
| Supported currencies info |
Supported: BTC, ETH, USDT, USDC, LTC, DOGE, TRX, XRP, ADA, SOL, MATIC, AVAX, DOT, LINK, UNI, SHIB, and 50+ more.
Reference Tools
Tool | Description |
| List available countries with live device counts |
Utility Tools
Tool | Description |
| Generate connection string |
| Get all proxy formats |
| List OS fingerprint options |
Support Tools
Tool | Description |
| Submit a ticket to contact human support |
| List all your support tickets |
| Get ticket details with conversation history |
| Reply to an existing ticket |
| Close a resolved ticket |
Pool Gateway Tools
For resellers and gateway users: check stock, build proxy URLs with the username token DSL, manage your own pool credentials, and manage Pool Access Keys (pak_). Minting/listing/topping-up/updating/regenerating/revealing/deleting keys and reading their usage/audit requires a reseller-role API key.
Tool | Description |
| Live Pool Gateway availability - online endpoint counts per country (no auth needed) |
| Build a ready-to-use gateway proxy URL from a reseller proxyUsername + a customer |
| List live Pool Gateway sessions (traffic stats, exit IP, country). Pass |
| Close one live gateway session by its sessionKey |
| Get your own pool proxyUsername + ready-to-use HTTP/SOCKS5 connect strings |
| Get your own pool usage (traffic, active connections) + aggregated pool health |
| Set or update your proxy authentication password (separate from your account login password, min 6 chars) |
| Mint a new Pool Access Key ( |
| List your Pool Access Keys (masked) |
| Update a key's label/enabled/trafficCapGB/expiresAt/qualityTier (pass |
| Top up a |
| Rotate a key's secret |
| Reveal the full |
| Delete a Pool Access Key |
| Daily in/out MB bandwidth time-series for one key (default 30 days, max 365) |
| Forensic audit log for one key: create/update/topup/regenerate/reveal/delete/gateway auth events |
Ops Tools (Admin)
For internal ops agents. These require an admin API key with ops:* scopes - they do nothing with a regular customer key. All write actions are capped, rate-limited, audit-logged, and require a reason; large credits go to human approval.
Tool | Description |
| Customer 360 view: balance, gateway usage, ports, farmer note |
| Recent ops-agent actions taken on a user |
| Read-only Stripe-vs-DB payment view for a user |
| List support tickets (admin view, optional status filter) |
| Post an admin reply to a ticket, optionally emailing the customer |
| Set a user's shared/private port slot limits (capped) |
| Credit a user's balance in USD (capped per-action + daily budget) |
| Send a personalized email to one user (hourly rate-capped) |
| List farmer AI notes (shared operational memory) |
| Farmer fleet funnel (total/online/verified/listed/routable) + AI note |
| Write/append a farmer AI note shared with future AI sessions |
X402 Session Management Tools
For agents who purchase via x402 protocol. Use X-Session-Token header for authentication.
Tool | What It Does |
| Retrieve full session details — all port credentials (host, http_port, socks_port, username, password), traffic used/remaining, expiration, active status. Uses your X-Session-Token from the purchase response. |
| List every port in your session with online/offline status, current IP, and traffic consumed per port. |
| Check a single port's detailed status — online/offline, current public IP, traffic used, device info, and expiration time. |
| List all sessions (active and expired) for your wallet address. Useful for recovering session tokens or reviewing history. |
| Quick status check — is the session active, how much traffic remains, when does it expire. |
| Replace an offline or broken port with a new one on a different device. Completely free, max 3 replacements per session. The failed device is excluded from selection. Use when your proxy stops working. |
| Preview the cost of extending your session. Specify |
| Pay USDC to extend your session with more traffic or duration. Requires a new on-chain payment. All active ports in the session are automatically extended. Replay-protected (each tx hash can only be used once). |
Peer Marketplace — Earn USDC
AI agents can earn USDC by sharing their internet bandwidth as peer proxy nodes.
Two prices, never confuse them. Everywhere above, $4/GB is the SELL price — what you PAY to use a proxy. The rates below are the PAYOUT — what you EARN for sharing bandwidth. They are not the same number and should never be conflated.
Earnings by IP Type (PAYOUT — what you earn for sharing, net, no platform fee):
Mobile IPs: $1.80/GB (AT&T, Verizon, T-Mobile, Vodafone)
Residential IPs: $1.20/GB (Comcast, Spectrum, Cox)
Datacenter IPs: $0.30/GB (AWS, GCP, Azure, VPNs)
Payout rates are configurable in admin settings (
system_settingspeer_rates) — these are current defaults, not a contractual guarantee. Check the liveearningsPerGBfield in the registration response for the rate at registration time.
How it works:
Register:
POST https://api.proxies.sx/v1/peer/agents/registerGet JWT token + device ID
Connect to WebSocket relay:
wss://relay.proxies.sxwithSec-WebSocket-Protocol: token.{JWT}headerRoute proxy_request messages through your connection
Respond to heartbeat with heartbeat_ack
Earn automatically per GB routed
Minimum payout: $5.00 USDC on Solana Full docs: https://agents.proxies.sx/peer/skill.md
Example Conversations
x402: Get a Proxy (Autonomous)
User: I need a US mobile proxy for web scraping
Claude: [Uses x402_get_pricing to calculate cost]
Claude: [Uses x402_get_proxy with country=US, duration=3600, traffic=1]
I've purchased a US mobile proxy for 1 hour with 1GB traffic.
Cost: $4.00 USDC (paid from your agent wallet on Base)
Connection Details:
HTTP: http://x402_abc123:xyz789@tmcal1.ddns.net:8500
SOCKS5: socks5://x402_abc123:xyz789@tmcal1.ddns.net:5500
Session ID: 695abc123...
Expires: in 1 hourCheck Account Status
User: What's my account status?
Claude: [Uses get_account_summary]
Your account balance is $45.00. You have 5/10 shared slots used and 2.5/10 GB traffic remaining.Create a Proxy Port
User: Create a new shared proxy in Poland
Claude: [Uses list_available_countries to find Poland's ID]
Claude: [Uses create_port with countryId and type=shared]
Port created! Here are your connection details:
HTTP: http://user123:pass456@proxy.example.com:8080
SOCKS5: socks5://user123:pass456@proxy.example.com:1080Rotate IP
User: Rotate the IP on my main proxy
Claude: [Uses list_ports to find the port]
Claude: [Uses rotate_port]
IP rotated successfully! New IP: 185.123.xxx.xxxTop Up Balance with Crypto
User: I need to add $50 to my balance using crypto
Claude: [Uses create_crypto_payment with amount=50]
I've created a crypto payment order for $50. Here's your payment link:
https://pay.coingate.com/invoice/abc123
Supported: BTC, ETH, USDT, and 50+ more cryptocurrencies.
Balance will be credited automatically once confirmed.x402: Check Session Status
User: How much traffic have I used on my session?
Claude: [Uses get_x402_session with sessionToken]
Your x402 session status:
Status: Active
Traffic: 0.35/1.0 GB used (35%)
Expires: in 45 minutes
Ports:
- Proxy US-1: http://x402_abc:xyz@tmcal1.ddns.net:8500
Rotation URL: https://api.proxies.sx/rotate/tok_...Contact Human Support
User: I'm having issues with my proxy not connecting, can you open a ticket?
Claude: [Uses create_support_ticket]
I've created a support ticket for you:
Ticket ID: 695abc...
Subject: Proxy Connection Issues
Status: Open
The Proxies.sx support team will respond as soon as possible.
You can use `get_ticket` to check for updates.API Endpoints
x402 Endpoints (No Auth Required)
Method | Endpoint | Description |
GET/POST |
| Service health check |
GET/POST |
| Get pricing info |
GET/POST |
| Calculate cost |
GET/POST |
| Purchase proxy (402 flow) |
GET |
| Get session by ID |
GET |
| Get session by tx hash |
GET |
| List sessions by wallet |
GET |
| Get session status |
x402 Session Management (Session Token Auth)
Use X-Session-Token header with the token from purchase response:
Method | Endpoint | Description |
GET |
| Get session details + ports |
GET |
| Check remaining credit |
GET |
| List all ports in session |
GET |
| Get detailed port status |
POST |
| Recreate deleted port |
POST |
| Replace offline port (free, max 3) |
GET |
| Preview top-up cost |
POST |
| Pay to extend session |
API Key Endpoints
Method | Endpoint | Description |
GET |
| List all ports |
POST |
| Create port |
GET |
| Get port details |
DELETE |
| Delete port |
POST |
| Rotate port |
GET |
| Get account info |
Full API documentation: proxies.sx/docs
Development
# Install dependencies
npm install
# Run in development mode
npm run dev
# Build for production
npm run build
# Run tests
npm test
# Lint code
npm run lintLinks
Proxies.sx
Website: proxies.sx - Premium mobile 4G/5G proxy service
Customer Portal: client.proxies.sx - Manage your proxies and account
API Documentation: proxies.sx/docs - Complete REST API reference
MCP Integration: proxies.sx/mcp - AI agent integration guide
x402 Payments: proxies.sx/x402 - Autonomous USDC payment protocol
Support Tickets: client.proxies.sx/tickets - Get help from our team
Contact & Support
Email: maya@proxies.sx
Telegram: @proxies_sx
x402 Protocol
x402 Specification: x402.org - HTTP 402 payment protocol
x402 Registry: x402scan.com - Discover x402 services
Troubleshooting
"Authentication required" Error
This is expected behavior when no credentials are provided:
Failed to start MCP server: Authentication required. Set one of:
Mode 1 (API Key):
- PROXIES_API_KEY: Your API key from https://client.proxies.sx/account
Mode 2 (x402 Wallet):
- AGENT_WALLET_KEY: Your wallet private key for USDC paymentsSolution: Provide authentication via environment variable:
# With API key
PROXIES_API_KEY=psx_your_key npx @proxies-sx/mcp-server
# With x402 wallet
AGENT_WALLET_KEY=0x_your_private_key npx @proxies-sx/mcp-serverNode.js ExperimentalWarning
If you see this warning on Node.js 23+:
ExperimentalWarning: CommonJS module ... is loading ES Module ... using require()This is harmless - it's a Node.js warning about ESM/CommonJS interop, not an error. To suppress:
NODE_NO_WARNINGS=1 npx @proxies-sx/mcp-servernpm Install Fails
If npm install fails:
# Clear npm cache
npm cache clean --force
# Try installing again
npm install @proxies-sx/mcp-server
# Or use a specific registry
npm install @proxies-sx/mcp-server --registry https://registry.npmjs.orgPackage Not Found
If you get "package not found" error:
# Check if package exists
npm view @proxies-sx/mcp-server
# Update npm
npm install -g npm@latest
# Try again
npm install @proxies-sx/mcp-serverVerify Package Integrity
# Check installed version
npm list @proxies-sx/mcp-server
# Verify package loads correctly
node -e "require('@proxies-sx/mcp-server/dist/tools')" && echo "OK"
# Check tool count (should be 70 - the API-key set; x402 wallet tools add 19 more for 89 total)
node -e "console.log(require('@proxies-sx/mcp-server/dist/tools').allToolDefinitions.length)"Claude Desktop Not Detecting MCP Server
Ensure config file is in correct location:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
Verify JSON syntax is valid
Restart Claude Desktop completely (quit and reopen)
Check Claude Desktop logs for errors
About Proxies.sx
Proxies.sx provides premium mobile 4G/5G proxy infrastructure for web scraping, ad verification, social media automation, and more. Our MCP server enables seamless integration with AI assistants, and our x402 protocol support allows AI agents to autonomously purchase and manage proxies without human intervention.
License
MIT License - see LICENSE file.
Built with love by Proxies.sx
Available Tools
44 toolscalculate_priceA
Calculate the price for a specific GB amount with volume discounts applied
| Name | Required | Description | Default |
|---|---|---|---|
| amount | Yes | Amount of traffic in GB to calculate price for | |
| isPrivate | No | true for private traffic ($8/GB base), false for shared ($4/GB base) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Mentions volume discounts, but no annotation coverage; could disclose read-only nature or error handling. Basic transparency but room for improvement.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One concise sentence with no extraneous information; front-loaded with the core action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequately covers the tool's purpose for a simple 2-param tool, but missing detail on return value format (e.g., number vs. object, currency).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear parameter descriptions. The description adds 'volume discounts applied' but doesn't add significant meaning beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb (calculate), resource (price), and specific scope (GB amount with volume discounts). It distinguishes from siblings like purchase_private_traffic and get_pricing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied (calculating price before purchase), but no explicit guidance on when to use vs. alternatives like get_pricing, or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculate_x402_topupA
Calculate the cost to top up a session with additional traffic and/or duration. Duration extensions are free, traffic costs $4/GB (shared) or $8/GB (private).
| Name | Required | Description | Default |
|---|---|---|---|
| sessionToken | Yes | Session token from purchase response | |
| addTrafficGB | No | Additional traffic in GB (min 0.1) | |
| addDurationSeconds | No | Additional duration in seconds (min 3600 = 1 hour) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses pricing model (free duration, $4/$8 per GB). Does not explicitly state read-only nature, return format, or error conditions. Without annotations, more transparency would be beneficial.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, zero waste. Front-loaded with purpose, efficient delivery of key pricing detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Lacks output format description, which is crucial for a calculation tool. Also missing prerequisites and error handling. Adequate but not fully comprehensive for use without additional context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema already covers parameters with descriptions (100% coverage). Description adds pricing context but does not deepen understanding of individual parameters beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it calculates top-up cost for additional traffic/duration. Distinct from sibling tools like topup_x402_session (which likely performs the top-up) and calculate_price (for new purchases).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implied usage: use before performing actual top-up with topup_x402_session. However, no explicit when-to-use, when-not-to-use, or mention of alternatives. Agent must infer from context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cancel_crypto_paymentB
Cancel a pending crypto payment order. Only orders with "new" status (awaiting payment) can be canceled.
| Name | Required | Description | Default |
|---|---|---|---|
| orderId | Yes | The order ID to cancel |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description only states the valid status for cancellation. Does not disclose irreversible nature, authentication needs, rate limits, or what happens if status is not 'new'. This is minimal behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, front-loaded with purpose and condition. No redundant information, perfectly concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter and no output schema, the description covers the essential behavior and constraint. Lacks error handling or return value info, but is adequate given low complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a description for the single parameter. The tool description adds no extra meaning beyond the schema, so it meets the baseline without additional value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the verb (cancel) and resource (pending crypto payment order), and specifies a status condition. It implicitly differentiates from siblings like create_crypto_payment and check_crypto_payment_status, but does not explicitly mention alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides a specific condition for usage (only orders with 'new' status can be canceled), but does not include when not to use or reference alternative tools like check_crypto_payment_status for verifying order state.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_crypto_payment_statusB
Check the status of a crypto payment order
| Name | Required | Description | Default |
|---|---|---|---|
| orderId | Yes | The order ID to check (e.g., topup_abc123_1702134567890) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must convey behavioral traits. It states only 'Check the status', omitting what statuses are returned, whether the operation is read-only, or any side effects. The lack of detail is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that directly states the tool's purpose with no extraneous content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter tool with no output schema, the description is minimally adequate but fails to explain what 'status' entails (e.g., possible values). Given sibling tools exist, more context would help.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a description for orderId that includes an example. The description adds no further meaning beyond the schema, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb ('Check') and resource ('crypto payment order'), and distinguishes from sibling tools like create_crypto_payment, cancel_crypto_payment, and get_crypto_payment_info by focusing on status checking.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as get_crypto_payment_info or get_pending_crypto_payments. It does not mention conditions, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_rotation_availabilityA
Check if a port can be rotated right now (cooldown, circuit breaker status)
| Name | Required | Description | Default |
|---|---|---|---|
| portId | Yes | The port ID to check |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that the tool checks cooldown and circuit breaker status, but does not describe the return value (e.g., boolean, object with details), side effects, or required permissions. For a simple read-only check, the description is adequate but not thorough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no unnecessary words. It is front-loaded with the core purpose and includes specific details (cooldown, circuit breaker status) in parentheses.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with one parameter and no output schema, but the description does not mention what the output looks like (e.g., returns a boolean or a status object). This omission leaves the agent guessing about the return format, which is a gap for a check-style tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter `portId` is described in the schema as 'The port ID to check', and the description does not add additional meaning beyond that. With 100% schema coverage, a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Check') and the resource ('port rotation availability'), and specifies what is checked ('cooldown, circuit breaker status'). It effectively distinguishes from sibling tools like `rotate_port` (which performs the rotation) and `get_rotation_history` (which shows past rotations).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage (check before rotating) but does not explicitly state when to use this tool versus alternatives, nor does it provide conditions for when not to use it. No direct guidance on prerequisites or follow-up actions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
close_ticketA
Close a support ticket when your issue is resolved
| Name | Required | Description | Default |
|---|---|---|---|
| ticketId | Yes | The ticket ID to close |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It only states the action without disclosing behavioral traits such as irreversibility, required permissions, or side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence with no wasted words, front-loading the key action and condition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the tool is simple, the description lacks information about return values or expected outcomes, which would help an agent verify success.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the parameter description in the schema is clear; the tool description adds no additional meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Close' and the resource 'support ticket', distinguishing it from sibling tools like create, get, list, and reply.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a context 'when your issue is resolved' but does not explicitly state when not to use the tool or mention alternatives, leaving some ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
configure_auto_rotationB
Configure automatic rotation settings for a port
| Name | Required | Description | Default |
|---|---|---|---|
| portId | Yes | The port ID to configure | |
| enabled | Yes | Enable or disable auto-rotation | |
| intervalMinutes | No | Rotation interval in minutes (5-1440) | |
| matchCarrier | No | Only rotate to devices with the same carrier | |
| matchCity | No | Only rotate to devices in the same city |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but only states 'Configure' without disclosing side effects: whether settings overwrite existing ones, what happens when disabled, or if it affects active rotations. Minimal behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence is concise and front-loaded. However, it lacks structure (e.g., bullet points for constraints) and could be more informative without adding verbosity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 5 parameters (2 required) and no output schema or annotations, the description is too sparse. It does not explain return behavior, result format, or constraints beyond the schema, leaving the agent with insufficient information.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with each parameter documented. The description adds no additional meaning beyond what the schema already provides, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Configure automatic rotation settings for a port' clearly states the action (configure), the resource (auto rotation settings), and the target (a port). It effectively distinguishes from sibling tools like 'rotate_port' (which performs an immediate rotation) and 'check_rotation_availability' (which checks feasibility).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like 'rotate_port' or 'check_rotation_availability'. There is no mention of prerequisites, context, or exclusions, leaving the agent without decision support.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_crypto_paymentA
Create a crypto payment order to top up balance. Returns a payment URL where the user can pay with BTC, ETH, USDT, and 50+ other cryptocurrencies. After payment, balance is credited automatically.
| Name | Required | Description | Default |
|---|---|---|---|
| amount | Yes | Amount to top up in USD (10-1000) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. Description discloses return of payment URL and automatic balance credit but omits details on expiration, fees, or failure handling.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences front-load the purpose and workflow with no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter tool with related siblings, the description adequately explains the creation-to-payment flow, though it could mention amount range (already in schema) and prerequisites.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with description for amount. The tool description adds 'to top up balance' which is already implied, providing no extra meaning beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool creates a crypto payment order to top up balance, and distinguishes from siblings like cancel_crypto_payment and check_crypto_payment_status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for topping up balance but provides no guidance on when not to use or how it compares to alternative payment methods like calculate_x402_topup.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_portA
Create a new proxy port in a specific country. Requires available slots and optionally carrier/city targeting.
| Name | Required | Description | Default |
|---|---|---|---|
| countryId | Yes | Country ID for the port (use list_available_countries to get IDs) | |
| type | Yes | Port type (shared or private) | |
| carrierId | No | Optional carrier ID for specific carrier targeting | |
| cityId | No | Optional city ID for specific city targeting | |
| expiresInDays | No | Port expiration in days (1-365, default: 30) | |
| osFingerprint | No | Optional OS fingerprint spoofing |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses the need for available slots and optional targeting but does not mention creation side effects (e.g., port ID generation), error handling, or costs. Some transparency is present but incomplete.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the primary purpose. Every phrase adds value, with no extraneous content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the 6 parameters and no output schema, the description could provide more context about the creation outcome (e.g., returns port ID), error conditions, or required permissions. It covers the main constraints but lacks full completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the description does not add additional meaning beyond what the schema already provides. The baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Create' and the resource 'proxy port', with specific details about country, available slots, and optional targeting. This distinguishes it from sibling tools like delete_port, get_port, list_ports, etc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions 'Requires available slots' as a precondition, implying the agent should check slot availability. However, it does not explicitly state when to use this tool versus alternatives or provide any when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_support_ticketA
Submit a support ticket to contact human support. Use this when you need help from the Proxies.sx team, encounter issues you cannot resolve, or have billing/account questions.
| Name | Required | Description | Default |
|---|---|---|---|
| subject | Yes | Brief description of the issue (5-200 characters) | |
| message | Yes | Detailed description of your issue or question (20-5000 characters) | |
| category | No | Ticket category (default: technical) | |
| priority | No | Issue priority (default: medium) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must cover behavioral transparency. It states that the tool submits a ticket to human support, indicating a non-destructive create action. However, it does not disclose details like authentication requirements, rate limits, or expected response time.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and efficient, consisting of two short sentences that convey the essential information without any wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of output schema and annotations, the description covers the tool's purpose and usage context well. However, it omits what happens after submission (e.g., whether a ticket ID is returned), which could be important for the agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage with descriptions for all 4 parameters. The description does not add additional meaning beyond what the schema already provides, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Submit a support ticket to contact human support.' It distinguishes itself from sibling tools like close_ticket and reply_to_ticket by focusing on ticket creation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly advises when to use the tool: 'Use this when you need help from the Proxies.sx team, encounter issues you cannot resolve, or have billing/account questions.' While it doesn't explicitly state when not to use it, the context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_portB
Delete a proxy port by ID. This will remove the port from the proxy server.
| Name | Required | Description | Default |
|---|---|---|---|
| portId | Yes | The port ID to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. The description only states it removes the port, but does not disclose irreversibility, side effects, or authorization requirements for this destructive action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences with no wasted words. Efficiently communicates the core purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the destructive nature and lack of annotations, the description should include more behavioral details (e.g., permanence, effects, response) to be complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already describes the parameter. The description adds no extra meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'Delete' and the resource 'proxy port', distinguishing it from siblings like create_port or get_port.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool, prerequisites, or alternatives. Implied usage but lacks explicit context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_account_summaryA
Get account summary including balance, email, and resource usage (slots and traffic for shared/private categories)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses the output fields but does not mention read-only nature, authentication requirements, or rate limits. With no annotations, the burden falls on the description; it is adequate but lacking in behavioral depth.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single 16-word sentence that front-loads the purpose. No redundant or unnecessary information, achieving maximal conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read tool with no parameters and no output schema, the description covers the key output fields. Could be slightly improved by specifying 'current balance' or 'cumulative usage', but overall sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters, so the description does not need to clarify parameters. Baseline score of 4 is appropriate as it adds no ambiguity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves an account summary including balance, email, and resource usage. It differentiates from sibling tools like get_account_usage and get_pricing by listing specific fields.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention exclusions or context, leaving the agent to infer from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_account_usageA
Get detailed traffic usage breakdown by category (shared vs private)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must cover behavioral traits; it only states purpose without mentioning auth needs, rate limits, or side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence directly states purpose with no wasted words; perfectly front-loaded and concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequately explains what the tool outputs but lacks details on format, time period, or potential aggregations; sufficient for basic selection.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Zero parameters, so baseline is 4; description adds value by detailing the output breakdown (shared vs private), which is not in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource ('Get detailed traffic usage breakdown by category (shared vs private)'), clearly differentiating from siblings like get_account_summary.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool vs alternatives, but the context implies it's for traffic breakdown; lacks exclusion criteria or alternative suggestions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_all_proxy_formatsC
Get all common proxy formats for a port (useful for different applications)
| Name | Required | Description | Default |
|---|---|---|---|
| portId | Yes | The port ID to generate formats for | |
| serverHost | Yes | The proxy server hostname (required) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so description must carry full burden. It only states the function but does not disclose whether this is a read-only operation, any side effects, or the nature of the returned formats. Agent lacks key behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is a single, concise sentence that directly states the tool's purpose. No extraneous information. Slightly more detail could improve completeness without sacrificing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given simple parameters and no output schema, the description is minimally adequate. However, it lacks detail about what 'common proxy formats' entails and does not hint at the return structure, which could help the agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so both parameters are already described in the schema. The description adds no extra meaning beyond what the schema provides, earning a baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it retrieves 'all common proxy formats' for a port and notes usefulness for different applications. Verb 'get' and resource 'proxy formats' are specific. While it doesn't explicitly differentiate from sibling tool 'get_proxy_connection_string', the distinction is inferable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description gives no guidance on when to use this tool versus alternatives like get_proxy_connection_string, nor does it mention prerequisites or restrictions. The phrase 'useful for different applications' is vague.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_crypto_payment_infoA
Get information about crypto payment availability and supported currencies
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden. It implies a read-only operation but does not disclose authentication needs, rate limits, or specifics of 'availability'. Adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, concise sentence that front-loads the purpose. No redundant words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of parameters and output schema, the description provides a reasonable high-level explanation of the returned information (availability and currencies). It is sufficient for a simple info tool, though mentioning output structure could improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so no parameter descriptions are needed. The description adds no param info, but that's acceptable since none exist. Baseline for 0 params is 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves information about crypto payment availability and supported currencies. It uses a specific verb ('get') and resource, and distinguishes from sibling tools like check_crypto_payment_status and create_crypto_payment.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives (e.g., check_crypto_payment_status, get_pending_crypto_payments). It simply describes the functionality without context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_os_fingerprint_optionsA
Get available OS fingerprint options for spoofing
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description bears full burden. It only states 'Get' which implies a read operation, but offers no details on rate limits, data freshness, or any other behavioral traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with 7 words, no redundant information. It is front-loaded and concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no parameters, no output schema, and no annotations, the description is adequate for a simple list retrieval. However, it could optionally describe the return format or range of options to improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and schema coverage is 100% by default. The description does not need to add parameter semantics, earning a baseline of 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'OS fingerprint options', and specifies the purpose 'for spoofing'. It distinguishes from sibling tool update_os_fingerprint which modifies the setting.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage before update_os_fingerprint, but provides no explicit guidance on when to use or when not. No alternatives or prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_pending_crypto_paymentsB
Get all pending crypto payments (new, pending, or confirming status)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must convey behavioral traits. It states what statuses are included but does not disclose whether the operation is read-only, the response structure, or any other side effects. For a simple read operation, this is minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no unnecessary words. It efficiently communicates the tool's purpose and the relevant statuses.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool (no parameters, no output schema), the description sufficiently covers what the tool does and the scope of results. It lacks details about the return format, but that is acceptable for such a straightforward tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters and is fully covered (100%). Since there are no parameters, the description cannot add additional meaning beyond the schema. The baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that the tool retrieves all pending crypto payments with the statuses 'new', 'pending', or 'confirming'. This is specific and distinct from sibling tools like 'get_crypto_payment_info' which likely returns details of a single payment, but it does not explicitly differentiate itself.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as 'check_crypto_payment_status' or 'get_crypto_payment_info'. The agent must infer usage from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_portB
Get detailed information about a specific port by ID
| Name | Required | Description | Default |
|---|---|---|---|
| portId | Yes | The port ID to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description says 'Get detailed information' but does not specify what fields or data are returned. Without an output schema or annotations, the agent lacks details on the response structure, permissions, or potential errors.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that immediately conveys the action and object. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no output schema, the description should at least summarize the type of detail returned (e.g., configuration, status, IP, etc.). It does not, leaving the agent uninformed about what to expect from the response.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already describes the single parameter 'portId' as 'The port ID to retrieve'. The description adds no additional semantic meaning, so the baseline score of 3 (given 100% schema coverage) is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves detailed information about a specific port by ID. It is distinct from sibling tools like 'list_ports' (which lists all) and 'get_port_status' (which gets only status).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No usage context is provided; the description does not explain when to use this tool versus alternatives like 'list_ports' or 'get_port_status'. There is no guidance on prerequisites or caveats.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_port_ipB
Get the current public IP address of a port
| Name | Required | Description | Default |
|---|---|---|---|
| portId | Yes | The port ID to check |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It only implies a read operation but does not disclose permissions, latency, or side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no extraneous information, fully front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read operation with one parameter, the description meets minimal requirements. However, it lacks context about the port concept and output shape, making it adequate but not comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single parameter, which already includes a description. The tool description adds no additional parameter context or examples, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves the current public IP address for a given port, using a specific verb and resource. However, it does not explicitly differentiate from sibling tools like get_port_status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as ping_port or get_port_status. Given multiple port-related siblings, this omission is significant.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_port_statusA
Check if a port is online or offline on the proxy server
| Name | Required | Description | Default |
|---|---|---|---|
| portId | Yes | The port ID to check |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must disclose behavioral traits. It implies a read-only query but does not mention authentication, error handling, or side effects. Minimal transparency beyond purpose.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, zero waste, directly states purpose. Efficient and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity (1 param, no output schema), the description explains what the tool does but does not hint at return format or behavior when port doesn't exist. Slightly incomplete for full contextual understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline is 3. Description adds no additional meaning about the portId parameter beyond what schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool checks if a port is online or offline on the proxy server, using specific verb and resource. It distinguishes from siblings like get_port (retrieves details), list_ports (lists all), and ping_port (connectivity test).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool compared to alternatives like ping_port or get_port. Does not mention prerequisites or typical usage scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_pricingA
Get current pricing including base prices ($4/GB shared, $8/GB private), volume discounts (10-40%), slot tiers, and your current tier progression. Slots are FREE and unlock based on cumulative GB purchases.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, description discloses key behaviors: includes pricing details, mentions slots are free and how they unlock. Doesn't cover auth or side effects, but for a read-only tool this is sufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no wasted words. Front-loaded with the core purpose, then adds specific details. Perfectly concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Comprehensive for a zero-parameter info tool: covers pricing components and unlock mechanics. No output schema, but description adequately describes return content. Could mention output format, but not critical.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, so schema coverage is 100%. Description adds value by explaining what the tool returns (base prices, discounts, tiers, progression), which is not in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states action (get) and resource (current pricing), listing specific details (base prices, discounts, tiers). Distinguishes from sibling 'calculate_price' as it retrieves the current pricing structure rather than computing a custom price.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies usage for viewing current pricing, but doesn't explicitly contrast with 'calculate_price' or other tools. The description clearly indicates it's for retrieving static pricing info, so usage is still clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_proxy_connection_stringB
Generate a ready-to-use proxy connection string for a port (HTTP or SOCKS5)
| Name | Required | Description | Default |
|---|---|---|---|
| portId | Yes | The port ID to generate connection string for | |
| protocol | No | Protocol to use (default: http) | |
| serverHost | Yes | The proxy server hostname (required) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It mentions generating a connection string but does not clarify if it validates the port, requires the port to exist, or what happens on error. The term 'generate' could be misleading if it merely retrieves a pre-existing string.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that front-loads the key purpose. No extraneous information, but some structure like lists or sections could improve readability without adding length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description does not explain the format of the returned connection string, nor does it cover error conditions or limitations. It covers the basic purpose but lacks completeness for a tool with three parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% as all three parameters have descriptions. The description adds no extra meaning beyond the schema; it only repeats the protocol enum values. Baseline is 3 for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Generate' and clearly identifies the resource as a proxy connection string for a port, with explicit mention of protocols HTTP and SOCKS5. This clearly distinguishes it from sibling tools that manage ports but do not generate connection strings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, such as get_port or other proxy-related tools. It lacks preconditions, exclusions, or hints about scenarios where this tool is appropriate or not.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_rotation_historyB
Get the rotation history for a port
| Name | Required | Description | Default |
|---|---|---|---|
| portId | Yes | The port ID to get history for | |
| limit | No | Maximum number of entries to return (default: 10) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Only states it's a read operation but lacks details on pagination, rate limits, or what 'rotation history' entails. Minimal behavioral disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence is concise and front-loaded. However, it could be expanded to include behavioral context without losing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with 2 params and no output schema, the description is minimal. It does not explain the content of the history response or any usage constraints. Lacks completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so schema already documents both parameters. Description adds no extra meaning beyond the schema, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the action ('Get'), resource ('rotation history'), and scope ('for a port'). It distinguishes from siblings like 'rotate_port' and 'check_rotation_availability'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives (e.g., 'rotate_port', 'check_rotation_availability'). The description only states what it does, not when it's appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_rotation_token_urlA
Get the public rotation URL for a port (can be used without authentication)
| Name | Required | Description | Default |
|---|---|---|---|
| portId | Yes | The port ID to get rotation URL for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses the key behavioral trait that no authentication is required. For a simple read-only getter, this is sufficient, though it could mention idempotency or the nature of the URL (e.g., temporary).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that contains all essential information: what the tool does and a key behavioral note. Every word earns its place with no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter, no output schema), the description is fairly complete. It explains the purpose and the no-auth requirement. It could mention the return value format, but overall it is adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage with a description for the only parameter 'portId'. The tool description does not add any additional meaning beyond what is already in the schema, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'public rotation URL for a port'. It also distinguishes itself by noting that it can be used without authentication, differentiating it from sibling tools like 'rotate_port' that likely require auth.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implicitly tells when to use the tool: when you need the rotation URL for a port and want to do so without authentication. It does not explicitly mention when not to use it, but context from sibling tools makes it clear that this is for obtaining the URL rather than performing the rotation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_sessions_by_walletB
List all x402 sessions associated with your wallet address. Useful for recovering session info.
| Name | Required | Description | Default |
|---|---|---|---|
| walletAddress | Yes | Your wallet address (EVM 0x... or Solana base58) | |
| status | No | Filter by status (default: active) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavioral traits. It only states 'List all...' without mentioning side effects, permissions, rate limits, or error behavior. For a read operation, it implicitly suggests safety but doesn't confirm.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with two sentences, no redundant information. The second sentence adds utility context without being overly verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description could detail return values or pagination. However, the tool's complexity is low (2 params, no nested objects), so the minimal description is adequate but lacks completeness for an agent needing full context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description does not add new meaning beyond what the schema already provides; it merely restates the parameter context ('your wallet address').
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'List all x402 sessions associated with your wallet address.' It uses a specific verb ('list') and resource ('x402 sessions'), distinguishing it from sibling tools like get_session_status or list_x402_ports.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description includes 'Useful for recovering session info,' which gives a hint of use case but lacks explicit guidance on when to use this tool versus alternatives, no when-not-to-use, and no prerequisites or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_session_statusB
Get quick status check for a session including traffic usage and expiration
| Name | Required | Description | Default |
|---|---|---|---|
| sessionId | Yes | The session ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided so description must disclose behavior. Only says 'quick status check' without specifying read-only nature, permissions, or side effects. Insufficient for a mutating-context tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, 11 words, front-loaded with key information. No fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema and no annotations; description covers returned info (traffic usage, expiration) but lacks format, error handling, or additional context. Adequate but not thorough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a single parameter described as 'The session ID'. Tool description adds no extra semantic meaning beyond the schema, so baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the action (Get), the resource (session status), and what it includes (traffic usage and expiration). Distinct from sibling tools like get_account_usage or get_port_status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like get_x402_session or get_sessions_by_wallet. Missing context for decision-making.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_ticketA
Get details of a specific support ticket including all replies
| Name | Required | Description | Default |
|---|---|---|---|
| ticketId | Yes | The ticket ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool retrieves details and replies, implying a read operation, but does not disclose whether there are side effects, authorization requirements, rate limits, or error behaviors. It is factually correct but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of 11 words, with no fluff. It is optimally concise and front-loaded with key information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read operation with one parameter and no output schema, the description is adequate but leaves room for improvement. It tells the user what they get (details and replies) but does not mention the return format, possible error states, or pagination behavior. Slightly under-informative for a standalone tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single parameter (ticketId), so the schema already provides its meaning. The description adds no further semantics for the parameter beyond what the schema states. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get details of a specific support ticket including all replies' clearly states the verb (Get), the resource (a specific support ticket), and the scope (including all replies). It effectively distinguishes from sibling tools like 'list_my_tickets' (which lists tickets) and 'close_ticket' or 'reply_to_ticket'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when needing full details of a single ticket, but it does not explicitly state when to use this tool over alternatives like 'list_my_tickets' (for summaries) or provide exclusion criteria. No guidance on prerequisites or limitations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_x402_port_statusB
Get detailed status of a specific port including traffic usage and connection info
| Name | Required | Description | Default |
|---|---|---|---|
| sessionToken | Yes | Session token from purchase response | |
| portId | Yes | The port ID to check |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It states a read operation (get status) but does not disclose any behavioral traits such as permissions, side effects, or response format. Minimal transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of 14 words, efficiently conveying the core purpose. It is front-loaded and contains no unnecessary information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read tool with two parameters and no output schema, the description is adequate but lacks important context such as usage guidelines and behavioral details. It covers the basics but has clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with both parameters described. The description adds no additional meaning beyond the schema, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (Get) and the resource (detailed status of a specific port) with specifics (traffic usage and connection info). However, it does not differentiate from sibling tools like get_port, get_port_status, which may cause confusion about when to use this tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. With many sibling tools for port status (get_port, get_port_status, get_port_ip), a clear usage context is missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_x402_sessionA
Get details of your x402 session including all ports. Use this after purchase to retrieve your proxy credentials and session info. Requires the session token from the purchase response.
| Name | Required | Description | Default |
|---|---|---|---|
| sessionToken | Yes | Session token from purchase response (starts with x402s_) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, description carries full burden. It discloses that it retrieves proxy credentials and session info, requiring a token. No side effects or auth details beyond token are needed. Adequate for a read operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences, front-loaded with purpose, then usage guidance. Every sentence adds value with no extraneous words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read tool with one parameter and no output schema, description covers purpose, when to use, what it returns (proxy credentials, session info, ports). Lacks explicit return format but sufficient for the complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for sessionToken. Description reinforces the parameter's origin ('from purchase response') but adds no new semantic meaning beyond that. Meets baseline for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states verb 'Get details' and resource 'x402 session' with scope 'including all ports'. Effectively distinguishes from sibling tools like get_x402_port_status (single port) and list_x402_ports (list).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says 'Use this after purchase' and notes the required session token from the purchase response. Provides clear context for when to use, though does not enumerate exclusions or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_available_countriesA
List countries where proxy ports can be created (only shows countries with available devices)
| Name | Required | Description | Default |
|---|---|---|---|
| isPrivate | No | Filter for private devices (true) or shared devices (false). Default: false (shared) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. Description adds the behavioral detail that only countries with available devices are shown, but does not disclose other traits like authentication needs, rate limits, or specifics of availability criteria.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence that is perfectly front-loaded and contains no extraneous information. Every word adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with one optional parameter and no output schema, the description covers the core functionality. It could mention output format or content, but is largely adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the parameter is fully documented in the schema. The description does not add any additional meaning beyond what the schema already provides, earning a baseline score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the verb 'List' and resource 'countries where proxy ports can be created', with an additional filter 'only shows countries with available devices'. This distinguishes it from a generic country list, though no explicit comparison to sibling tools is provided.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies usage when needing countries for port creation with device availability. Does not specify when not to use or mention alternative tools among siblings, leaving the agent to infer context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_my_ticketsA
List all your support tickets to check status and responses from support team
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavior. It correctly identifies this as a read-only list operation but omits details like ordering, pagination, or authentication requirements. Adequate for a simple tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence front-loaded with the verb. Every word is meaningful; no wasted text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless list tool with no output schema, the description adequately covers the purpose. It does not mention potential limits like pagination, but that is acceptable for such a simple operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so the description does not need to add parameter meaning. Baseline score of 4 is appropriate; no additional information required.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('List'), the resource ('your support tickets'), and the purpose ('to check status and responses'). It effectively distinguishes from siblings like 'get_ticket' (single ticket) and 'close_ticket'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for checking ticket status and responses but does not explicitly state when not to use or mention alternatives like 'get_ticket' for a specific ticket. Usage context is clear but lacking exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_portsA
List all proxy ports with optional filters. Returns port names, types, status, locations, and expiration.
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | Filter by port type | |
| status | No | Filter by port status | |
| countryId | No | Filter by country ID | |
| carrierId | No | Filter by carrier ID | |
| limit | No | Maximum number of ports to return (default: 50) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It correctly describes the read-only behavior and output fields, but lacks details on pagination, ordering, or rate limits. The default limit (50) is only in the schema, not the description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the main action and includes key return fields. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a list tool with 5 optional parameters and no output schema, the description adequately explains the purpose and output. It could mention the default limit, but otherwise complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with all parameters described. The description does not add additional meaning beyond the schema, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists all proxy ports with optional filters, and specifies the returned fields (names, types, status, locations, expiration). It distinguishes from sibling tools like get_port, create_port, delete_port by being a list operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use or alternatives are provided. The context implies usage for listing ports, but no guidance on when to use this vs. other port tools (e.g., get_port for a single port).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_x402_portsA
List all ports in your x402 session with connection strings and expiration times
| Name | Required | Description | Default |
|---|---|---|---|
| sessionToken | Yes | Session token from purchase response |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears full responsibility for behavioral disclosure. It implies a read-only list operation, which is adequate, but does not explicitly state idempotency, safety, or any side effects. For a simple list, this is minimally sufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence of 12 words, front-loaded with the verb and resource, no unnecessary information. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the low complexity (one parameter, no output schema, no nested objects), the description is complete: it states the action, scope, and what is returned. It could optionally mention the output format, but that is not critical for a list tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (the single parameter 'sessionToken' is described as 'Session token from purchase response'). The tool description adds no additional meaning to the parameter beyond what the schema provides, so baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it lists all ports in an x402 session and specifies the included information (connection strings, expiration times). This distinguishes it from sibling tools like 'list_ports' which may list ports generally.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use (to see ports in an x402 session) but does not provide explicit guidance on when not to use or mention alternatives like 'list_ports' or 'get_port'. No exclusions or conditionals are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ping_portB
Test the connectivity and latency of a port
| Name | Required | Description | Default |
|---|---|---|---|
| portId | Yes | The port ID to ping |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description must disclose behavioral traits. It mentions testing connectivity and latency but fails to specify whether the tool is read-only, destructive, or what side effects (if any) occur. The implication of a test is non-destructive, but this is not explicit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with no wasted words. Front-loaded with the core action. Efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with one parameter and no output schema. The description covers the basic purpose but omits what the output (e.g., latency values, success/failure) looks like. Could be more complete for an AI agent to fully understand the result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with one parameter. The description does not add meaning beyond the schema's parameter description, which already says 'The port ID to ping'. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Test' and the resource 'a port', specifying connectivity and latency. While it distinguishes from generic status checks, it could more explicitly differentiate from sibling 'speed_test_port'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like 'speed_test_port' or 'get_port_status'. The description does not mention prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
purchase_private_trafficA
Purchase private traffic in GB using account balance. Buying traffic also unlocks more FREE slot capacity based on tier thresholds.
| Name | Required | Description | Default |
|---|---|---|---|
| quantityGB | Yes | Amount of traffic in GB to purchase |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It discloses the side effect of unlocking free slot capacity, but omits details like cost deduction, error conditions (e.g., insufficient balance), or return value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences, first focusing on primary action, second on a notable benefit. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers main action and key side effect for a simple one-parameter tool. Could mention outcome details (e.g., traffic added) but sufficient given no output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema already describes quantityGB. Description adds context that it is in GB and payment uses account balance, improving understanding beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the verb 'Purchase', resource 'private traffic in GB', and payment method 'using account balance'. Distinguishes from sibling 'purchase_shared_traffic' by specifying 'private'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use or when-not-to guidance. While 'private traffic' suggests a specific use case, it does not compare with alternatives like 'purchase_shared_traffic' or mention prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reconfigure_portB
Reconfigure a port to use a different location (country, carrier, city)
| Name | Required | Description | Default |
|---|---|---|---|
| portId | Yes | The port ID to reconfigure | |
| countryId | Yes | New country ID | |
| carrierId | No | Optional new carrier ID | |
| cityId | No | Optional new city ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description must cover behavioral traits. It only says 'reconfigure' without disclosing side effects, required permissions, or consequences like downtime or data loss.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, front-loaded with the action and resource, no extraneous words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no output schema, the description lacks details on what happens after reconfiguration, whether the port is reset, or how to confirm success.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with parameter descriptions. The description adds minimal value beyond the schema, simply restating that location components (country, carrier, city) are involved.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (reconfigure) and resource (port) with specific fields (country, carrier, city), distinguishing it from siblings like rotate_port or update_port_credentials.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for changing port location but does not provide explicit when-to-use, when-not-to-use, or alternative tools. No guidance on prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
replace_x402_portA
Replace an offline/broken proxy port with a new one on a different device. Free, max 3 replacements per session. The broken port is deleted and a new port is created on a different device.
| Name | Required | Description | Default |
|---|---|---|---|
| sessionToken | Yes | Session token from purchase response (starts with x402s_) | |
| portId | No | Specific port ID to replace (optional - defaults to first offline port) | |
| country | No | Country code for new port (e.g., US) | |
| city | No | City code for new port | |
| carrier | No | Carrier code for new port |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full behavioral burden. It discloses that the operation deletes the old port and creates a new one on a different device, and includes a session limit (max 3). This gives adequate transparency about the destructive nature and constraints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences that front-load the core purpose and key constraints. Every sentence adds value without redundancy or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema is provided, and the description does not mention what the tool returns (e.g., new port details). While it covers the operation well, it lacks information about the response, leaving the agent to guess. With no output schema, this gap reduces completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline is 3. The description adds context about the overall operation but does not provide additional parameter-specific details beyond what the schema already provides. No improvement over baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses specific verbs ('replace', 'delete', 'create') and resources ('offline/broken proxy port', 'new port on a different device'). It clearly differentiates from sibling tools like delete_port (only deletes), create_port (only creates), and reconfigure_port (modifies settings) by combining deletion and creation in one operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use: when a port is offline/broken. Also provides constraints: free, max 3 replacements per session. However, it does not explicitly mention when not to use or list alternatives, though the context implies it's for replacement scenarios only.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reply_to_ticketB
Reply to an existing support ticket
| Name | Required | Description | Default |
|---|---|---|---|
| ticketId | Yes | The ticket ID to reply to | |
| message | Yes | Your reply message (10-5000 characters) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It only says 'reply' without mentioning permissions, effects (e.g., does it notify the ticket owner?), constraints (e.g., can you reply to a closed ticket?), or idempotency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. However, given the lack of behavioral guidance, a bit more detail could be added without harming conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter tool with no output schema, the description is very brief. It lacks essential behavioral context (e.g., effect on ticket status, required permissions) that would help an agent use the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the parameters are already well-documented. The description adds no extra meaning beyond what the schema provides, meeting the baseline expectation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('reply') and resource ('existing support ticket'), distinguishing it from siblings like 'create_support_ticket' or 'close_ticket'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs. alternatives (e.g., when to reply vs. create a new ticket), nor any exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rotate_portA
Rotate a port to a new modem/device. This changes the IP address while keeping port credentials and settings.
| Name | Required | Description | Default |
|---|---|---|---|
| portId | Yes | The port ID to rotate |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It correctly discloses that the tool changes the IP and preserves credentials/settings. However, it omits important behavioral details such as whether the action causes downtime, requires the port to be active, or affects existing sessions. Some transparency is present but incomplete.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, consisting of just two sentences that immediately convey the core action and its effect. There is no unnecessary information, and the key points are front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter and no output schema, the description provides sufficient context about what the tool does and its effect. It explains the outcome (IP change, preservation of credentials) adequately. Minor gaps like missing usage guidelines prevent a perfect score.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The only parameter (portId) is fully described in the schema (coverage 100%), and the description adds no additional meaning or constraints beyond what the schema already provides. Thus, a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('rotate a port to a new modem/device') and the resource ('port'). It explains what changes (IP address) and what stays the same (credentials and settings), distinguishing it from sibling tools like reconfigur_port or update_port_credentials.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide explicit guidance on when to use this tool versus alternatives. It lacks context about prerequisites, scenarios, or conditions that would help an agent decide to choose this tool over others like reconfigure_port.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
speed_test_portB
Run a speed test on a port to measure download/upload speeds
| Name | Required | Description | Default |
|---|---|---|---|
| portId | Yes | The port ID to test |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses that the tool measures speeds but does not mention if it is read-only, if it requires permissions, or any side effects (e.g., network load). The behavioral profile is incomplete.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no wasted words. It is front-loaded with the verb and resource. Slightly more detail could improve it, but it is efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter tool with no output schema, the description provides adequate understanding. However, it lacks usage guidelines and behavioral disclosure, which are important for an agent to select and invoke correctly among siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the description adds minimal value beyond the schema. It mentions 'download/upload speeds' but does not elaborate on portId further. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it runs a speed test on a port to measure download/upload speeds, specifying a verb and resource. It distinguishes from siblings like ping_port (ping) or get_port_status (status check).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when speed measurement is needed, but provides no explicit guidance on when to use this tool versus alternatives like ping_port or get_port_status. No exclusions or prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
topup_x402_sessionA
Top up a session with additional traffic and/or duration. Requires a Payment-Signature (tx hash) for traffic top-ups. Duration-only extensions are free.
| Name | Required | Description | Default |
|---|---|---|---|
| sessionToken | Yes | Session token from purchase response | |
| paymentSignature | Yes | Blockchain tx hash (Solana signature or Base tx hash) | |
| addTrafficGB | No | Additional traffic in GB | |
| addDurationSeconds | No | Additional duration in seconds |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden. It discloses the requirement of a payment signature for traffic additions and that duration-only extensions are free, which is critical behavioral information. However, it lacks details on return behavior, error conditions, idempotency, or what happens if the session is expired.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no fluff. The first sentence states the purpose concisely, and the second adds essential condition information. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (4 parameters, no output schema), the description covers core functionality and a key condition. It does not explain return values or operational prerequisites (e.g., session must exist), but it is largely sufficient for a focused mutation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds value beyond the schema by explaining that 'paymentSignature' is required only for traffic top-ups (though the schema marks it required unconditionally), and clarifies that 'addTrafficGB' and 'addDurationSeconds' are optional. This nuance aids the agent in understanding parameter relationships.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Top up a session with additional traffic and/or duration.' It uses a specific verb ('top up') and resource ('session'), distinguishing it from sibling tools like 'get_x402_session' (retrieval) and 'calculate_x402_topup' (calculation).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear guidance on when to use this tool: it notes that payment signature is required for traffic top-ups and that duration-only extensions are free. This helps the agent understand the payment condition, though it does not explicitly contrast with alternatives or specify when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_os_fingerprintA
Update the OS fingerprint (p0f) for a port to spoof the operating system
| Name | Required | Description | Default |
|---|---|---|---|
| portId | Yes | The port ID to update | |
| osFingerprint | Yes | OS fingerprint value (empty string to disable) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It indicates a mutation ('Update') but does not disclose side effects, authorization requirements, error conditions (e.g., if port does not exist), or whether the change is immediate. This leaves significant behavioral ambiguity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that immediately conveys the tool's purpose. No redundant or irrelevant information is included.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 2 parameters and no output schema or annotations, the description is adequate but incomplete. It lacks information about return values, error handling, or preconditions (e.g., port must exist and be owned by user). The sibling tools like 'get_port' could supplement, but the description does not reference them.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with both parameters described. The description adds context by explaining that the fingerprint is used to 'spoof the operating system', which clarifies the intent of the osFingerprint parameter beyond the enum list. It does not elaborate on the format (e.g., 'os:version'), but the enum values are self-descriptive.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Update' and the resource 'OS fingerprint (p0f) for a port', specifying the action 'to spoof the operating system'. It effectively distinguishes from sibling tools like 'update_port_credentials' or 'reconfigure_port' by focusing on the OS fingerprint.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The sibling set includes 'get_os_fingerprint_options', which could be used to retrieve available values before updating, but the description does not mention prerequisites or when to choose this tool over others.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_port_credentialsB
Update the login and/or password for a proxy port
| Name | Required | Description | Default |
|---|---|---|---|
| portId | Yes | The port ID to update | |
| proxyLogin | No | New proxy login username | |
| proxyPassword | No | New proxy password |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses the mutation (update) but does not elaborate on side effects, such as whether updating credentials invalidates existing sessions or requires specific permissions. It is minimal and lacks behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence that immediately conveys the action and resource. It is front-loaded and contains no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple update tool with no output schema, the description is mostly adequate but lacks explicit mention that at least one of proxyLogin or proxyPassword should be provided, and does not cover error scenarios (e.g., port not found). It is incomplete for a mutation tool without annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents the parameters. The description adds marginal value by confirming that login and/or password can be updated, but does not provide additional meaning beyond the schema, meeting the baseline for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Update' and the resource 'login and/or password for a proxy port', distinguishing it from sibling tools like 'create_port' or 'delete_port'. It is specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives (e.g., 'reconfigure_port' for other settings) or prerequisites (e.g., port must exist). The description only states what it does, not when or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
Most tools have clear, distinct purposes, but there is some overlap between status-checking tools (get_port_status, ping_port, speed_test_port) and info retrieval tools (get_port, get_port_ip, get_proxy_connection_string) that could cause minor confusion.
All tools follow a consistent verb_noun snake_case pattern (e.g., create_port, get_port, list_ports, rotate_port). The naming is predictable and easy to navigate.
44 tools is a large surface area for an MCP server. While the variety of operations (ports, billing, support, sessions) justifies many tools, the count feels heavy and could benefit from consolidation of some related actions.
The tool set covers the full port lifecycle (create, read, update, delete, rotate, test) along with billing, tickets, and x402 sessions. Minor gaps exist (e.g., no bulk operations or advanced analytics), but core workflows are well-represented.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
No-KYC crypto VPS AI agents rent & run over MCP — 57 tools, pay USDC/USDT on Base/Eth/Polygon/Solana
Native Solana staking for AI agents. 26 MCP tools, one-shot signing, webhooks.
Pay-per-use tool marketplace for AI agents. Search, price-check, and call APIs via MCP.
Give AI agents real phone numbers, messages, and voice calls via MCP.
Related MCP Servers
- AlicenseAqualityDmaintenanceProvides AI agents with access to a global residential proxy network covering over 190 countries for web fetching and scraping. It enables pay-per-request transactions using USDC on the Base network via the x402 protocol.3962MIT

Fluora MCPofficial
FlicenseNot gradedqualityDmaintenanceEnables AI agents to discover and pay for monetized services such as PDF processing and DeFi operations using USDC on the Base blockchain. It provides automatic payment processing and secure local wallet management for seamless integration with MCP-compatible clients.23- AlicenseAqualityDmaintenanceThe MCP gateway that lets any AI agent discover and pay metered APIs on Base or Solana — without the user wiring payments themselves.3151Apache 2.0
- AlicenseAqualityCmaintenanceEnables AI agents to discover, inspect, and pay for paid HTTP and MCP services using USDC on Solana with a self-custodial wallet.4395Inno Setup
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/bolivian-peru/proxies-sx-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server