Skip to main content
Glama

PHP and WordPress docs

Read a PHP or WordPress manual page

query_php_docs
Read-onlyIdempotent

Read one current English manual page for a PHP symbol or a WordPress function, hook, or class. Returns the official page URL, the version line, the signature, the description, and the first official example. php.net pages are the live English HTML manual. WordPress pages are the live developer.wordpress.org reference. This is not an archive of older manuals and it does not search Laravel, Symfony, or Markdown docs. Costs 0.04 credit only when a page is returned. A missing API key, not_found, and fetch_failed are not charged. Pass the symbol, for example str_contains or wp_insert_post. Set source to php or wordpress, or omit it and a wp_ name uses WordPress. Set version, for example 8.3 or 6.7, to learn whether that release is covered by the page version line. version_applies is null when version is omitted or the page has no version line. User comments are not included. Key: https://firm.bestsmartgoods.com/signup

Input Schema

NameRequiredDescriptionDefault
queryYesA PHP or WordPress symbol, for example str_contains or wp_insert_post. A short sentence is accepted when it contains the symbol.
sourceNophp reads php.net. wordpress reads developer.wordpress.org. Omit it and a wp_ symbol uses WordPress, otherwise php.net.
versionNoRelease to check, such as 8.3 or 6.7. The page is still the current manual. version_applies says whether the page version line includes this release.

Output Schema

NameRequiredDescriptionDefault
okNoFalse for not_found or fetch_failed. Those calls are not charged.
urlNoThe official page that was read.
errorNoPresent only when ok is false.
queryNo
titleNo
sourceNo
symbolNoThe symbol looked up on the manual.
exampleNoFirst official example, clipped to 1500 characters. Empty when the page has none.
signatureNo
introducedNoSame version line. For WordPress this is the earliest @since.
descriptionNoOfficial description, clipped to 1200 characters. User comments are excluded.
version_noteNophp.net version line, or the WordPress release that introduced the symbol.
version_appliesNoTrue when the requested release is covered by the version line. Null when version was omitted or the page has no version line.
credits_remainingNoPresent only after a charged, successful read.
version_requestedNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already cover the safety profile (readOnly, idempotent, non-destructive, openWorld), and the description adds behavior the annotations cannot express: a 0.04 credit charge only when a page is returned, no charge for a missing API key, not_found, or fetch_failed, and the fact that user comments are excluded. It also states the API key requirement with a signup URL.

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?

Purpose and return contents are front-loaded, then exclusions, then cost/auth behavior, which is a sensible ordering. It runs roughly eight sentences and a few clauses (the pricing detail, the API key line) crowd the middle, but each carries decision-relevant information rather than filler.

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

Completeness5/5

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

An output schema exists, yet the description still summarizes the key returned fields (URL, version line, signature, description, first example) and explains failure modes and billing, so an agent can predict both cost and result shape before calling. For a single-purpose lookup tool with three parameters, nothing material is missing.

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 coverage is 100%, so the baseline is 3, and most of the description's parameter guidance (symbol examples, source defaulting, version format) restates the schema nearly verbatim. The one genuine addition is the null semantics for version_applies, but that alone does not lift it above baseline.

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?

Opens with a specific verb+resource pair: read one current English manual page for a PHP symbol or a WordPress function, hook, or class. It also bounds the scope explicitly (live php.net and developer.wordpress.org, not archived manuals), so an agent knows exactly what domain of answer this tool produces.

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

Usage Guidelines5/5

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

Gives concrete when-to-use guidance ('Pass the symbol, for example str_contains or wp_insert_post') plus explicit exclusions: it is not an archive of older manuals and does not search Laravel, Symfony, or Markdown docs. The source-selection rule (omit it and a wp_ name uses WordPress) resolves the only ambiguous choice an agent faces.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.