Skip to main content
Glama
softglaze-browser-mcp

softglaze-browser-mcp

List profiles

list_profiles
Read-onlyIdempotent

Lists browser profiles newest first with group, tags, proxy country/status, and running state; filter by group, tag, status, or search, with pagination for quick read-only lookup.

Instructions

Lists profiles you can see, newest first, with group, tags, proxy (country and status, never credentials) and whether each is running. Filter by group (id or name), tag, status (running, stopped) or a search over names and notes. Paged: page and pageSize (max 100). Read-only.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "list_profiles"
  }
}

Input Schema

NameRequiredDescriptionDefault
tagNo
pageNo
groupNoGroup id or exact name.
searchNoMatches profile names and notes.
statusNoDefault any.
pageSizeNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false, so the 'Read-only' sentence is partly redundant. Beyond that, the description adds real behavior: newest-first ordering, the guarantee that proxy credentials are never returned, and a hard pageSize cap of 100.

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

Conciseness4/5

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

Tight and front-loaded: what is returned, then how to filter, then paging. Every clause carries information, though the trailing 'Read-only.' restates readOnlyHint and the second sentence could fold into the first without loss.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a six-parameter list tool with no output schema, the description covers the meaningful return fields (including what is deliberately excluded), filtering, and pagination limits. It stops short of noting total-count or out-of-range page behavior, which an agent paging through large result sets would want.

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

Parameters4/5

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

With only 50% schema description coverage, the description does the compensating work: group accepts an id or exact name, search matches profile names and notes, status is running/stopped, and page/pageSize are explained with the 100 ceiling. Minor gap: the schema's 'any' status value and its default are not mentioned, so the agent must read the schema for that.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Specific verb+resource with shipped detail: lists profiles visible to the caller, newest first, returning group, tags, proxy country/status and running state. It is unmistakably different in kind from mutation siblings like move_profiles_to_group or start_profile, though it never names get_profile or list_groups as the single-item/group alternatives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied through the filter surface (group, tag, status, search) and paging, which tells an agent this is the browse/enumerate path. There is no explicit when-to-use or when-not-to-use guidance, e.g. that get_profile should be used once an id is known, so the agent must infer routing.

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