Skip to main content
Glama
freema

Firefox DevTools MCP

by freema

get_page_text

Read-only

Extract the visible text content from the current Firefox page, with options to truncate output or save the full text to a file.

Instructions

Get the visible text of the page (document.body.innerText). Caps at maxLength (default 20000 chars); saveTo saves the full text to a file.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
saveToNoSave the full untruncated text to a file instead of returning it inline. Pass a file path, an existing directory (generated file inside), or true (generated file under ~/.firefox-devtools-mcp/output/). Relative paths resolve against the current working directory.
previewNoNumber of characters of the saved text to return inline as a preview when saveTo is used. Omit for no preview.
maxLengthNoMax characters to return inline (default: 20000). Ignored when saveTo is used.
Behavior4/5

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

Beyond the readOnlyHint annotation, the description discloses that the text is capped at maxLength (default 20000 chars) and that saveTo saves the full text to a file. It also specifies the exact DOM property used (document.body.innerText), giving insight into what 'visible text' means. It does not cover all edge cases (e.g., waiting for network) but provides solid behavioral transparency.

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

Conciseness5/5

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

The description is a single, well-structured sentence that leads with the core function ('Get the visible text of the page') and then briefly notes key constraints (maxLength, saveTo). Every word earns its place; no repetition or fluff.

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

Completeness3/5

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

The description covers the primary use case and key options, but does not clarify the return value when saveTo is used. While the schema explains that saveTo replaces inline return, it does not state whether a file path is returned, whether nothing is returned, or how preview interacts. With no output schema, the description should carry more weight on return behavior.

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

Parameters3/5

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

Schema description coverage is 100% with detailed descriptions for all three parameters (saveTo, preview, maxLength). The description essentially repeats the maxLength default and saveTo behavior already in the schema, adding no new meaning. Baseline 3 applies because the schema does the heavy lifting.

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

Purpose5/5

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

The description clearly states the tool's function: 'Get the visible text of the page' with the specific technical detail 'document.body.innerText'. This distinguishes it from sibling tools like screenshot_page (visual capture) or get_firefox_output, making its purpose unambiguous.

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

Usage Guidelines4/5

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

The description provides clear context on when to use the tool—whenever you need the visible text content of a page. It also explains behavior under different parameter settings (maxLength, saveTo), which implies usage scenarios, though it does not explicitly name alternatives or exclusions.

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

Install Server

Other Tools

Latest Blog Posts

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/freema/firefox-devtools-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server