aethyn-browser-mcp
OfficialClick 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., "@aethyn-browser-mcplaunch browser in Germany and go to amazon.de"
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.
Aethyn Browser MCP — residential-proxy browser control for AI agents (pick the country, one identity per task)
An MCP server that lets an AI agent drive a real browser through residential proxies, choosing the exit country / city, tier, and a sticky per-task session — at call time. The browser (Playwright Chromium) runs locally on your machine; you bring your own proxy credentials. Defaults to Aethyn residential proxies, and works with any HTTP proxy you configure.
The only browser MCP where the agent picks the country and holds one identity per task.
Why this exists
Playwright MCP drives a browser well, but its proxy is set once at server startup — one static exit for the whole session. The agent can't ask for a Japanese exit for one task and a German exit for the next.
Hosted "web scraping" MCPs hide the proxy and hand back JSON — no runtime control over geo or session identity, and it's their pool at their price.
This server gives the agent runtime, per-task, steerable geo + sticky identity as tools — exactly what browser agents need to pull country-specific data (pricing, SERPs, catalogs, availability) and feed it into a chart or pipeline.
Related MCP server: PixelCheck
Quickstart
Add the server to your MCP client — Claude Desktop (claude_desktop_config.json) or Cursor (~/.cursor/mcp.json):
{
"mcpServers": {
"aethyn-browser": {
"command": "npx",
"args": ["-y", "aethyn-browser-mcp"],
"env": {
"AETHYN_USERNAME": "aethyn-XXXXX",
"AETHYN_PASSWORD": "your-proxy-password",
"AETHYN_DEFAULT_TIER": "premium"
}
}
}
}Chromium is downloaded automatically on first install (~170 MB, one-time). If your environment blocks post-install scripts, run it yourself: npx playwright install chromium.
⚠️ Set the tier to match your plan.
AETHYN_DEFAULT_TIERdefaults topremium(port2099). If your account is Elite, set it toelite(port5499) — otherwise traffic hits the Premium port and the proxy returns 407 (auth rejected), even though the browser launched fine. The agent can also override per task withtier: "elite".
That's it. Ask your agent something like "Launch a browser in Japan, open example.co.jp, verify the exit IP is Japanese, and give me the page as markdown."
Tools
Tool | What it does |
| Launch local Chromium through a residential exit in a chosen |
| Go to a URL; waits for load and returns the HTTP status, final URL, and title. |
| Return the page cleaned for reading ( |
| Accessibility snapshot (roles, names, |
| Click by |
| Type into an input (optionally submit with Enter). |
| Fetch IP info through the session's proxy to verify the geo actually landed. |
| Rotate to a fresh exit IP (same country) and clear cookies. |
| Close the session's context and free memory. |
| Discover available countries (and Elite cities) at runtime. |
How it's different
Aethyn Browser MCP | Playwright MCP | Hosted scraping MCPs | |
Runs the browser | Local (yours) | Local | Their cloud |
Proxy geo chosen by the agent per task | ✅ at call time | ❌ fixed at startup | ❌ not exposed |
Sticky identity per task (pinned exit IP) | ✅ | ❌ | ❌ |
Verify the exit geo landed | ✅ | ❌ | ❌ |
Bring your own proxy | ✅ any HTTP proxy | one static proxy | ❌ |
No trash-talk — just the capability delta. (Playwright MCP is great; it just wasn't built for per-task geo.)
Bring your own proxy
Aethyn is the default, but any HTTP proxy works — point PROXY_HOST at it and describe its username format with a template. [ ... ] segments are dropped when empty, and {country} {city} {state} {session} {lifetime} are filled from the agent's call:
{
"mcpServers": {
"browser": {
"command": "npx",
"args": ["-y", "aethyn-browser-mcp"],
"env": {
"PROXY_HOST": "gate.your-provider.com",
"PROXY_PORT": "7000",
"PROXY_USERNAME": "your-user",
"PROXY_PASSWORD": "your-pass",
"PROXY_USERNAME_TEMPLATE": "{username}-country-{country}[-city-{city}]-session-{session}-lifetime-{lifetime}"
}
}
}
}For a plain fixed proxy with no geo in the username, use "PROXY_USERNAME_TEMPLATE": "{username}".
Configuration
Env var | Default | Notes |
| — | Your Aethyn proxy credentials (default provider). |
|
|
|
|
| Set |
|
| Oldest session is evicted past this cap. |
|
| Idle sessions auto-close after this many minutes. |
|
| Endpoint |
| — | Bring-your-own proxy (overrides the Aethyn default). |
HTTP proxies only — Chromium can't authenticate SOCKS5, so this server is HTTP-only by design.
Guardrails
This tool is for collecting public data. Please:
Respect
robots.txt, rate limits, and each site's terms and the law. Can reach ≠ should.No login/credential-wall automation, and no CAPTCHA solving — there's no such capability. If a site shows a challenge, read the page and stop rather than trying to bypass it.
Pace yourself. A residential IP firing dozens of requests per second is still obviously a bot.
Your credentials stay in your MCP config on your machine; the proxy password is never logged.
Get credentials
Need residential proxy credentials? The free trial needs no card:
→ Create an Aethyn account · Quickstart docs · Pricing
Contributing
PRs welcome — especially extending data/locations.json with more countries, cities, and states (single lowercase alphanumeric tokens), and new client examples. Keep it real and runnable; use placeholder credentials only.
License
MIT — free to use, copy, and adapt.
Available Tools
10 toolsaethyn_check_exit_ipVerify exit IP / geoA
Fetch IP info THROUGH the session's proxy so you can verify the exit country/city actually landed before trusting the page. Returns ip, country, city, org/ASN, and a best-effort is_residential flag.
| Name | Required | Description | Default |
|---|---|---|---|
| session_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Describes read-only behavior ('Fetch IP info') and lists return fields (ip, country, city, etc.). Does not explicitly state lack of side effects, but the verb 'fetch' strongly implies read-only. Sufficiently transparent for a simple query.
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 action and purpose, efficiently enumerates return fields. 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?
Covers action, purpose, and return values explicitly. For a one-parameter read-only tool without output schema, this is sufficient. Could mention prerequisite of an active session, but parameter name implies that.
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 has 0% parameter description coverage; the single required parameter 'session_id' is not described in the tool description. Parameter name is self-explanatory, but the description fails to add semantic context or guidance on how to obtain it, relying solely on agent inference.
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: 'Fetch IP info THROUGH the session's proxy' with specific verb and resource. Distinguishes from sibling tools like aethyn_navigate or aethyn_launch_browser by focusing on verification of proxy exit location.
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 implied usage context ('verify the exit country/city actually landed before trusting the page') but lacks explicit when-not-to-use or alternative tool references. No mention of alternatives among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aethyn_clickClickA
Click an element. Prefer a 'ref' from aethyn_snapshot (e.g. 'e12'); or pass a 'selector' (CSS, or Playwright role=/text= engine).
| Name | Required | Description | Default |
|---|---|---|---|
| ref | No | Element ref from aethyn_snapshot, e.g. 'e12'. | |
| selector | No | Fallback selector (CSS, role=..., or text=...). | |
| session_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must disclose behavioral traits. It only states 'Click an element' with no mention of side effects, error handling, waiting behavior, or actionability requirements.
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-loaded with purpose. No redundant words, efficient structure.
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?
Adequate for a click tool given sibling context, but lacks info on return value or error behavior (e.g., if element not found). No output schema, so more detail would be beneficial.
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?
Adds meaning beyond schema: explains priority of ref over selector, and details selector engine syntax. Schema description coverage is 67%, and description compensates with practical guidance.
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 ('Click an element') and specifies the two ways to identify the target (ref or selector). Distinguishes from sibling tools like aethyn_type or aethyn_navigate.
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 prefers 'ref' over 'selector' and details selector syntax (CSS, role=, text=). Lacks explicit when-not-to-use but provides clear guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aethyn_closeClose sessionA
Close the session's browser context and free memory. Call this when a task is done.
| Name | Required | Description | Default |
|---|---|---|---|
| session_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It clarifies the destructive nature (close, free memory) but doesn't mention session invalidation or side effects beyond the immediate 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, front-loaded with action and purpose, no extraneous 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 cleanup tool with one parameter and no output schema, it covers purpose and usage. Could mention session becomes unusable, but overall 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?
Only one parameter (session_id), schema has no description. The description implies session_id identifies the session, but doesn't specify format or origin. Baseline 3 since schema coverage is 0% and description adds only implied context.
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 ('Close the session's browser context and free memory') and resource, distinguishing it from sibling tools like aethyn_launch_browser.
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 'Call this when a task is done', giving clear usage context. No explicit alternatives or exclusions, but sibling differentiation is implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aethyn_get_contentGet page contentB
Return the current page's content cleaned for reading (markdown by default). Use after navigating to extract data.
| Name | Required | Description | Default |
|---|---|---|---|
| format | No | ||
| session_id | Yes |
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 default format ('markdown') and that content is 'cleaned for reading', but does not mention whether the tool is read-only, side effects, authentication needs, or rate limits. 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?
Two sentences, front-loaded with the main action and default behavior. 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 simple tool with 2 parameters and no output schema, the description adequately states the purpose and usage context. However, it leaves questions about what 'cleaned' means and the exact return format for each option.
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 0%. The description adds that markdown is the default format, which relates to the 'format' parameter, but does not explain 'session_id' or the meaning of other enum values. The description adds minimal value 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 it returns the current page's content cleaned for reading, with a default of markdown. It distinguishes from siblings like 'aethyn_navigate' (navigation) and 'aethyn_snapshot' (likely screenshot), but does not explicitly contrast with them.
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 after navigating to extract data,' providing a clear when-to-use recommendation. No mention of when not to use or alternatives, but the context is strong.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aethyn_launch_browserLaunch proxied browserA
Launch a local Chromium routed through a residential proxy exit in a chosen country (and city/state on the Elite tier). Returns a session_id the other aethyn_* tools use. Each session is one sticky identity — a pinned exit IP for the whole task.
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | City for Elite-tier targeting, e.g. 'tokyo'. Requires tier:'elite'. | |
| tier | No | Proxy tier. Elite unlocks city/state targeting. Default 'premium'. | |
| state | No | State/region for Elite-tier targeting. Requires tier:'elite'. | |
| country | Yes | ISO-3166-1 alpha-2 country code, e.g. 'jp', 'de', 'us'. | |
| session | No | Your task id. Reuse the same value to pin the same exit IP. Letters/digits/underscore only. Omit to auto-generate. | |
| headless | No | Run headless. Default true. | |
| lifetime_min | No | Sticky lifetime in minutes (1–1440, default 10). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries the full burden. It discloses the core behavior (launching a browser, proxy routing, sticky identity) but omits potential side effects like resource usage, failure modes (e.g., proxy unavailability), or the need to close the session. It does not mention headless mode or lifetime behavior beyond the schema.
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 two concise sentences that front-load the core action and outcome. Every word adds value; there is no fluff or repetition.
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 7 parameters, no output schema, and no annotations, the description covers the purpose and outcome but lacks details on return format, lifecycle (e.g., when the browser closes), and precise usage order. The mention of session_id is helpful but incomplete without specifying what other tools expect.
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 main description adds little beyond summarizing the country/city/state targeting. It does not enrich parameter meaning significantly over the already-detailed schema descriptions.
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 launches a local Chromium with residential proxy routing and returns a session_id for other aethyn_* tools. It distinguishes from siblings by specifying its role as the initializer of a sticky identity session.
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 this tool is used first to obtain a session_id for subsequent tools, and that sessions are sticky identities. It provides clear context but does not explicitly exclude alternatives or mention when not to use it. There is no direct comparison with sibling aethyn_new_identity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aethyn_list_countriesList countries / citiesA
List available exit countries (and Elite-tier cities where known). Discover geo options at runtime before launching.
| Name | Required | Description | Default |
|---|---|---|---|
| with_cities | No | Only return countries that have known cities. |
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 describes a read operation without side effects but lacks details on authentication, rate limits, or data freshness. For a simple list tool, this is adequate 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 two sentences, concise and front-loaded with the main action. Every word adds value, with no redundancy or filler.
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 low complexity and no output schema, the description covers the tool's purpose and usage context adequately. It could mention return format but is sufficient for an agent to decide when to use it.
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 schema has 100% coverage with one parameter 'with_cities' already described. The tool description adds no additional meaning beyond what the schema provides, 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 tool lists available exit countries and Elite-tier cities, using the verb 'List' with specific resource and scope. It distinguishes from siblings like aethyn_new_identity by focusing on discovery before launching.
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 suggests 'Discover geo options at runtime before launching', providing clear context for when to use the tool. However, it does not explicitly exclude alternatives or mention 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.
aethyn_new_identityRotate identityA
Rotate the session to a fresh residential exit (new IP, same country) and clear cookies. Use between independent tasks or after a soft-block.
| Name | Required | Description | Default |
|---|---|---|---|
| session_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses two key behaviors: rotating to a new IP (same country) and clearing cookies. This is transparent for a rotation tool, though it could mention if it preserves any session data beyond cookies.
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 consists of two well-structured sentences: the first explains the action, the second gives usage guidance. No extraneous 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?
For a simple tool with one parameter and no output schema, the description covers purpose, behavior, and usage. However, the lack of parameter documentation is a clear gap, making it merely adequate rather than fully 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?
The schema has one required parameter (session_id) with no description. The tool description mentions 'session' but does not explain what session_id is, how to obtain it, or any format constraints. Given 0% schema coverage, the description should compensate but does not.
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 rotates the session to a fresh residential exit (new IP, same country) and clears cookies. The verb 'rotate' and resource 'session' are specific, and the outcome (new IP, same country) distinguishes it from sibling tools like aethyn_check_exit_ip, which only checks the current IP.
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 says to use it 'between independent tasks or after a soft-block,' providing clear contextual guidance. However, it does not mention when not to use it or offer alternatives (e.g., just checking IP), which would make it a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aethyn_snapshotAccessibility snapshotB
Return a structured accessibility snapshot (roles, names, and [ref=..] handles) of the page. Pass those refs to aethyn_click / aethyn_type. No screenshots needed.
| Name | Required | Description | Default |
|---|---|---|---|
| session_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden for behavioral disclosure. It only states 'Return a structured accessibility snapshot' without mentioning side effects, prerequisites (e.g., page must be loaded), idempotency, or potential costs. The phrase 'No screenshots needed' provides a minor clarification but not enough to compensate for missing 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 highly concise with two sentences: the first states purpose and output contents, the second provides usage guidance and a clarifying note. Every sentence adds value with no redundancy, and the key information is 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?
There is no output schema, so the description should detail the return format. It mentions 'roles, names, and [ref=..] handles' but gives no structure, ordering, or examples. It also does not mention prerequisites like having an active session or browser page, which are implied by sibling tools but not stated.
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 sole parameter 'session_id' has no description in the schema (0% coverage) and the tool description does not mention it at all. The agent receives no information about what session_id represents or how to obtain it, which is critical for correct invocation.
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 returns a structured accessibility snapshot with roles, names, and ref handles. It explicitly distinguishes from screenshot tools by saying 'No screenshots needed' and connects to sibling tools aethyn_click and aethyn_type, making the purpose specific and distinct.
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 explicit guidance on how to use the output: 'Pass those refs to aethyn_click / aethyn_type.' It implies the snapshot should be used when interaction handles are needed, but does not elaborate on when not to use it or contrast with all sibling tools, which prevents a score of 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aethyn_typeType textA
Type text into an input. Prefer a 'ref' from aethyn_snapshot; or a 'selector'. Set submit:true to press Enter after.
| Name | Required | Description | Default |
|---|---|---|---|
| ref | No | ||
| text | Yes | ||
| submit | No | Press Enter after typing. | |
| selector | No | ||
| session_id | Yes |
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 text input and submit action, but does not cover error handling, what happens with conflicting parameters, or any side effects. The behavioral transparency is limited.
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 with two sentences, front-loaded with the core action, and 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 5 parameters (2 required) and no output schema, the description covers the main action and parameter priority. However, it does not explain the required session_id parameter, behavior when both ref and selector are provided, or return value, leaving some 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 description coverage is only 20% (only submit has a description). The description adds value by explaining the preference between ref and selector, and the submit behavior. However, session_id and text parameters are not elaborated, leaving gaps in understanding.
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 'Type text into an input', specifying the verb and resource. It distinguishes from siblings like aethyn_click by mentioning input behavior and preference for ref or selector.
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 advises preferring a 'ref' from aethyn_snapshot or a 'selector', and setting submit:true to press Enter. However, it does not explicitly exclude scenarios or mention alternatives, but the guidance is clear for common use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
10 tool updates
v0.1.0- First observed
aethyn_check_exit_ip - First observed
aethyn_click - First observed
aethyn_close - First observed
aethyn_get_content - First observed
aethyn_launch_browser - First observed
aethyn_list_countries - First observed
aethyn_navigate - First observed
aethyn_new_identity - First observed
aethyn_snapshot - First observed
aethyn_type
TDQS
Each tool has a distinct, non-overlapping purpose: launching, navigating, interacting via click/type, extracting content, managing identity, checking exit IP, listing countries, and cleanup. No ambiguity between any pair.
All tools follow a consistent aethyn_verb_noun snake_case pattern (e.g., aethyn_launch_browser, aethyn_check_exit_ip). No mixing of styles or unpredictable naming.
10 tools cover the full lifecycle of browser automation with proxy support: launch, navigate, interact, extract, identity rotation, geo discovery, and cleanup. The count is well-scoped for the domain.
The tool set covers all core browser automation steps: launch, navigate, interact (click, type), extract (content and snapshot), identity management, and exit verification. Minor gaps like screenshots or explicit waits are intentionally omitted, but the core workflow is complete.
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
A paid remote MCP for AI agent browser approval MCP, built to return verdicts, receipts, usage logs,
A paid remote MCP for AI agent browser MCP session, built to return verdicts, receipts, usage logs,
MCP server for building and testing AI agents with multi-model experimentation and insights.
MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.
Related MCP Servers
- AlicenseBqualityCmaintenanceBrowser MCP server that connects to your existing browser, preserving sessions, passwords, and extensions, enabling AI agents to interact with web pages without bot detection.31121MIT
- AlicenseNot gradedqualityCmaintenanceAn MCP server that gives AI agents real browser capabilities including screenshotting, action execution, data extraction, and multi-persona auditing for frontend validation.746MIT
- AlicenseNot gradedqualityDmaintenanceMCP server giving AI agents controlled residential-proxy web access with optional browser rendering and structured extraction from 60+ sites.1MIT

@meshbrow/mcp-serverofficial
AlicenseNot gradedqualityBmaintenanceMCP server for Meshbrow that gives AI agents full browser automation capabilities with stealth anti-detection, enabling natural language control of browser sessions, data extraction, and multi-browser fleets.MIT
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/aethynio/aethyn-browser-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server