Skip to main content
Glama

Read post meta

wp_get_post_meta
Read-onlyIdempotent

Get the meta of one post: one key (returns id, key, value; a key the post lacks gives an empty value, or the default registered for the key) or all public meta (returns id and meta, a key-to-value map). Public means not starting with "", not credential-like and editable by the account. include_protected=true (requires manage_options) adds the allow-listed protected "" keys (page-builder and layout data such as _elementor_data); one of those keys can also be asked for by name, under the same right. Read-only; needs edit_posts; an unknown post id is a not-found error. The same public meta comes together with the post from wp_get_post. Forwarded by AlphaBridge Connect to the one site this connection reaches.

Input Schema

NameRequiredDescriptionDefault
idYesPost id.
keyNoOptional single meta key. Omitted: all public meta. A protected ("_") key is answered only when it is allow-listed (filter ab_mcp_pro_protected_meta_allowlist) and the account has manage_options.
include_protectedNotrue also lists the allow-listed protected ("_"-prefixed) keys in the full listing. Requires manage_options. Default false.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • addedInput schema / properties / id / description
      Added value: +"Post id."
    • changedInput schema / properties / include_protected / description
      Previous value: -"Include protected (\"_\"-prefixed) keys in the full listing. Requires manage_options. Default false."New value: +"true also lists the allow-listed protected (\"_\"-prefixed) keys in the full listing. Requires manage_options. Default false."
    • changedInput schema / properties / key / description
      Previous value: -"Optional single meta key. A protected (\"_\") key is answered only when it is allow-listed (filter ab_mcp_pro_protected_meta_allowlist) and the account has manage_options."New value: +"Optional single meta key. Omitted: all public meta. A protected (\"_\") key is answered only when it is allow-listed (filter ab_mcp_pro_protected_meta_allowlist) and the account has manage_options."
  2. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Goes well beyond the readOnlyHint/idempotentHint annotations: it defines what 'public' excludes (underscore prefix, credential-like keys, non-editable keys), states the edit_posts requirement, names the not-found behavior for an unknown post id, and describes the manage_options gate plus the ab_mcp_pro_protected_meta_allowlist filter for protected keys. The 'read-only' claim is consistent with annotations.

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?

Front-loaded with the core action and both modes before the permission caveats; every sentence earns its place. The heavy parenthetical packing makes it denser than it needs to be, but nothing is redundant.

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?

With no output schema, the description supplies the return shapes itself (id/key/value for a single key; id plus a key-to-value map for the listing), and it covers permissions, error cases, and the connection-scoping note. Nothing an agent needs to call this correctly is missing.

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?

Schema coverage is 100%, so the baseline is 3; the description adds genuine semantics on top — a missing key yields an empty value or the registered default, and include_protected only widens the full listing to allow-listed underscore keys and can also be bypassed by naming one such key directly. The credentials-like exclusion rule is only in the description, not the schema.

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?

States a specific verb and resource ('Get the meta of one post') and immediately enumerates both operating modes (single key vs. all public meta) with their return shapes. It also distinguishes itself from the sibling wp_get_post, which returns the same public meta bundled with the post, so an agent can choose without opening either schema.

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?

Explicit conditions are given: omit key to list all public meta, set include_protected=true only when the account has manage_options, and use wp_get_post if you want the public meta alongside the post. What is missing is a forward pointer to wp_update_post_meta for writes, but the read-only framing is unambiguous.

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.

Resources