expo_read_documentation
Fetch a single Expo documentation page and return its content as markdown. Returns up to ~5000 tokens per call. Use offset to paginate through long pages.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | ||
| offset | No |
Fetch a single Expo documentation page and return its content as markdown. Returns up to ~5000 tokens per call. Use offset to paginate through long pages.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | ||
| offset | No |
Changes observed during successful MCP inspections. Dates show when Glama detected each change.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already state readOnlyHint, idempotentHint, and non-destructive behavior. The description adds valuable context: it returns markdown, has a ~5000 token limit per call, and supports offset pagination. This goes beyond the structured fields without contradicting them.
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 purpose, and no filler. The first sentence establishes the core action and output format while the second gives the practical pagination needed for long pages.
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 output schema, the description covers what the tool returns (markdown), its throughput limit, and pagination. Given the sibling ecosystem and the tool's name, this is fairly complete for an agent's invocation decision, though it could briefly mention a maximum offset or error behavior.
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%, so the description carries the burden. It explains 'offset' as a pagination mechanism, adding some meaning beyond the bare number type. However, it doesn't clarify param details such as whether offset is a token offset or page index, and the 'url' parameter semantics are implied but not explicitly spelled out.
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 starts with a specific verb ('Fetch') and a clear resource ('a single Expo documentation page'), states the output format (markdown), and includes the return limit. This clearly distinguishes it from the sibling 'expo_search_documentation' tool, which presumably finds pages rather than fetching a single page's content.
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 gives actionable usage guidance: 'Use offset to paginate through long pages.' This tells the agent how to handle pagination. It doesn't explicitly list when to prefer this over expo_search_documentation, but the task is clear enough from the name and description that guidance is mostly implied rather than missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.
Most build/workflow tools are clearly separated by resource and action, but some boundaries are blurry: expo_learn overlaps with expo_search_documentation/expo_read_documentation, and connect/toolkit_info/authenticate all touch connection and auth state. Agents may need to read descriptions carefully to avoid picking the wrong one.
The Expo-specific tools follow a strong expo_<domain>_<action> snake_case pattern, e.g., expo_build_cancel, expo_workflow_create, expo_search_documentation. The non-prefixed platform tools like authenticate, connect, marketplace, report_bug, and show_version break the pattern, but they read as a separate platform services group rather than random inconsistency.
25 tools is at the heavy end, but the scope is broad: EAS builds, EAS workflows, TestFlight, documentation, auth, and platform maintenance each contribute natural clusters of tools. A few generic helpers like marketplace and show_version could arguably live elsewhere, but the overall size is defensible.
The build lifecycle and workflow lifecycle are well covered: create/run/list/info/cancel/logs exist for workflows, and run/list/info/cancel/logs/submit exist for builds. Documentation search/read support is solid; minor gaps like removing or updating installed libraries and exposing EAS Update tooling prevent a perfect score.