Skip to main content
Glama

Server Details

Six tools for SEO and AI-readability audits. 91 checks, 11 score modules.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
MetricSpot/mcp-server
GitHub Stars
0
Server Listing
@metricspot/mcp-server

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.3/5 across 6 of 6 tools scored.

Server CoherenceA
Disambiguation5/5

Each tool targets a distinct resource or action: get_audit retrieves JSON findings, get_audit_pdf fetches a PDF, list_audits enumerates prior audits, run_audit queues an authenticated audit, run_audit_anonymous runs a sync anonymous audit, and get_organic_traffic provides Google-linked analytics. The two audit-running tools are clearly differentiated by auth and synchronicity, and the descriptions explicitly contrast them.

Naming Consistency5/5

All tool names follow a consistent verb_noun snake_case pattern: get_*, list_*, run_*. The two run tools share the same verb with a descriptive suffix (_anonymous), maintaining a predictable and readable convention.

Tool Count5/5

Six tools is well within the ideal 3-15 range for an SEO audit MCP. Each tool serves a distinct phase of the audit workflow (trigger, retrieve, list, report, analytics), earning its place without redundancy.

Completeness5/5

The tool set covers the full audit lifecycle: initiating audits (both anonymous and authenticated), retrieving results, listing historical audits, generating PDF reports, and accessing traffic analytics. No obvious gaps exist; the domain is fully addressed for a read-centric audit API.

Available Tools

6 tools
get_auditAInspect

Fetch a previously-run audit by id. Returns module scores (0-100), total score, all findings with severity, recommendation text, and links to the HTML report. Use this to poll a queued run_audit until status: complete. Requires an API key.

ParametersJSON Schema
NameRequiredDescriptionDefault
audit_idYes
Behavior4/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions the API key requirement, describes the return payload in detail, and clarifies the polling usage pattern. It does not cover error behavior or rate limits, but for a simple read-only fetch it provides strong context.

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?

Three sentences, all information-dense with no filler. The purpose is front-loaded, then return data, then usage guidance. Every sentence earns its place.

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

Completeness4/5

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

For a one-parameter tool with no output schema, the description covers the core action, return values, authentication, and the intended polling scenario. It does not mention error behavior or edge cases, but these are not critical for this simple fetch operation.

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

Parameters2/5

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

Schema description coverage is 0% and the description only says 'by id', offering no additional meaning beyond the schema's audit_id field. It does not specify the format, source, or how to obtain the audit ID, so the description fails to compensate for the lack of parameter details.

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 states a specific verb ('Fetch') and resource ('previously-run audit by id'), clearly distinguishing it from siblings like get_audit_pdf and list_audits. It also enumerates the exact return contents, leaving no ambiguity about the tool's function.

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 explicitly says to use this tool to poll a queued run_audit until status: complete, and notes it is for previously-run audits. It references the sibling run_audit but does not explicitly exclude alternatives like get_audit_pdf or list_audits, which slightly weakens the guidance.

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

get_audit_pdfAInspect

Return a signed download URL for the branded PDF report for a given audit id. If no PDF has been rendered yet, queues a render and returns status: queued — poll the same tool again, or fetch the URL directly once ready. Requires an API key.

ParametersJSON Schema
NameRequiredDescriptionDefault
audit_idYes
Behavior4/5

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

No annotations are present, so the description must convey behaviors itself. It discloses the asynchronous queuing behavior, the 'queued' status response, and the need to poll or fetch later. Also requires an API key. This is sufficiently transparent for a read-only URL generation tool.

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 concise, using two sentences to present the core function, conditional behavior, and auth requirement. Every sentence carries meaningful information without fluff.

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

Completeness4/5

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

Given the tool's simplicity (one parameter, no output schema), the description covers the main behavioral nuances: URL generation, queuing fallback, and polling guidance. It also mentions the API key requirement. This is sufficiently complete for an agent to invoke the tool correctly, though it does not explain the difference from sibling tools beyond the tool name.

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?

The schema includes only audit_id (string, minLength 1) with no parameter description (0% schema coverage). The description's phrase 'for a given audit id' adds context that audit_id serves as the identifier for the audit report. This is minimal but adequate for a single obvious parameter.

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 identifies the tool's function: returning a signed download URL for a branded PDF report for a given audit ID. It uses a specific verb ('Return') and names the resource ('download URL for the branded PDF report'), distinguishing it from sibling tools like get_audit and list_audits.

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 implies usage context (when you need the PDF report) relative to other audit-related tools, and notes an API key requirement. However, it does not explicitly state when not to use this tool or name alternative tools for other scenarios.

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

get_organic_trafficAInspect

If the user has linked GA4 + Google Search Console, return the 28-day organic traffic snapshot for an audit: session count, daily trend, top landing pages, top queries, and indexing health. Returns connected: false if Google is not linked. Cached 24h server-side. Requires an API key.

ParametersJSON Schema
NameRequiredDescriptionDefault
audit_idYes
Behavior4/5

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

With no annotations, the description carries full transparency burden. It discloses the connected:false error condition, caching behavior (24h server-side), and API key requirement. This goes beyond the schema and gives useful operational context.

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 two sentences, front-loaded with the main purpose, and includes necessary caveats without unnecessary fluff. Every sentence adds value.

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

Completeness4/5

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

The description covers the main output data, error conditions, caching, and authentication. While there is no output schema, the listed data points give a good sense of the return value. It does not describe the exact format or pagination, but for a snapshot tool this is adequate.

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

Parameters2/5

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

Schema description coverage is 0% for the single parameter audit_id, and the description never explicitly explains what audit_id is or how to obtain it. The purpose is inferable from the tool name and context, but the description does not compensate for the lack of schema documentation.

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 returns a 28-day organic traffic snapshot for an audit, listing specific data points (session count, daily trend, top landing pages, top queries, indexing health). This distinguishes it from sibling tools like get_audit or run_audit.

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 a clear prerequisite (GA4 + Google Search Console linked) and specifies it is for audits. However, it does not explicitly identify when to use this tool over alternatives or mention exclusions, so it falls short of a perfect score.

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

list_auditsAInspect

List the user's audits (most recent first, deduplicated by URL). Returns audit_id, url, status, total_score, created_at. Default limit 24, max 100. Use the returned audit_id with get_audit for full findings. Requires an API key.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
Behavior4/5

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

With no annotations provided, the description carries the burden. It discloses key behaviors: sorting (most recent first), deduplication, default and max limits, returned fields, and API key requirement. It does not mention pagination beyond the limit or error cases, but for a list tool these are the most critical details.

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 concise and front-loaded with the primary action, followed by key behavioral details. Every sentence adds value: what it returns, how results are ordered and deduplicated, limits, follow-up tool, and authentication requirement. No redundancy or fluff.

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?

For a simple tool with one optional parameter and no output schema, the description covers all essential aspects: return fields, ordering, deduplication, limits, authentication, and next steps. It is fully sufficient for an agent to understand invocation and expected results.

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?

The single parameter 'limit' is documented in the schema as an integer 1-100. The description adds the default value (24) and max (100), which is meaningful context beyond the schema's bare range. It doesn't explicitly say 'limit' controls the number of results, but that is implied by the surrounding text.

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: 'List the user's audits' with specific behaviors (most recent first, deduplicated by URL). It distinguishes from siblings by mentioning that full findings require get_audit, positioning this as a summary listing tool.

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?

It provides context on when to use the tool: to list audits and retrieve summary data, and explicitly directs users to get_audit for full findings. However, it does not explicitly mention alternatives like run_audit for creating new audits or run_audit_anonymous for unauthenticated runs, though the auth requirement hints at these distinctions.

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

run_auditAInspect

Queue a full SEO + AI-readability audit (includes Core Web Vitals from Google PSI and organic traffic if Google is linked). Returns the audit envelope immediately with status: queued and an audit_id. Poll get_audit with the returned audit_id until status becomes complete (typical 10-30s). Counts against the user's plan allowance. Requires an API key as a Bearer token. Quota and per-domain cooldowns mirror the dashboard.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYes
Behavior4/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It transparently explains the async behavior, immediate envelope return with 'status: queued', polling requirement, plan allowance impact, Bearer token requirement, and quota/cooldown behavior—all substantive details.

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?

Three sentences, each informative, with the opening phrase front-loaded. The first sentence is dense with parentheticals, but all content is necessary for proper usage and expectations.

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

Completeness4/5

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

Given no output schema, the description covers the async envelope, polling flow, included metrics, and key constraints (auth, quota, cooldowns). It lacks error-case details or a full response schema, but is adequate for an async audit tool.

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?

The schema has one 'url' parameter with no description (coverage 0%), and the description does not explicitly define it, though it is implied as the audit target. It adds context about Google linking and per-domain cooldowns that relate to the URL, but does not fully compensate for missing parameter documentation.

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 action with 'Queue a full SEO + AI-readability audit' and specifies the resource. It distinguishes from siblings by noting the inclusion of Core Web Vitals and organic traffic (if Google is linked) and requiring an API key, setting it apart from run_audit_anonymous.

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?

It provides explicit instructions to poll get_audit with the returned audit_id until status is complete, and notes the typical duration. It implies when not to use (if you lack an API key or want to avoid quota) by mentioning the anonymous sibling, though it does not explicitly name it.

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

run_audit_anonymousAInspect

Run a one-shot SEO + AI-readability audit on any public URL. Returns scores across 11 modules and ~90 checks, plus actionable findings with rule docs. Limited to 1 audit per IP per 24 hours — for higher volume, get an API key at https://app.metricspot.com/settings/api-keys and use run_audit. Synchronous: blocks until the audit completes. Does NOT include Core Web Vitals (use run_audit for full PSI scoring). No auth required.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYes
Behavior5/5

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

With no annotations provided, the description carries the full burden and excels: it reveals the rate limit ('1 audit per IP per 24 hours'), synchronous blocking behavior, lack of auth requirements, and the specific exclusion of Core Web Vitals. These are non-obvious behavioral traits that an agent needs to know before invocation.

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 four sentences, each adding essential information: core function, output summary, rate limit/alternative, and synchronous behavior. It is front-loaded with the action and returns, and contains no filler or repetition of schema details.

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?

Even without an output schema, the description gives a sufficient high-level view of the return content ('scores across 11 modules and ~90 checks, plus actionable findings with rule docs'). It also covers critical operational constraints (rate limit, blocking, no auth, missing Core Web Vitals) and points to the alternative tool, making the description complete for an agent to decide and invoke correctly.

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?

The schema only defines 'url' as a URI with maxLength, and has 0% description coverage. The description adds meaningful semantic context by requiring the URL to be 'public,' which is not inherent in the URI format. It also implies the URL is the audit target. While minimal, the description compensates reasonably for the single parameter.

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 'Run a one-shot SEO + AI-readability audit on any public URL' with a specific verb and resource, and explicitly distinguishes it from siblings like run_audit (which includes Core Web Vitals and supports API-key volume). It also summarizes the output scope (11 modules, ~90 checks), leaving no ambiguity about the tool's primary function.

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?

Guidance is explicit: the tool is appropriate for anonymous one-shot audits, while 'for higher volume, get an API key... and use run_audit' and 'Does NOT include Core Web Vitals (use run_audit for full PSI scoring)' clearly identify when to choose the sibling tool. This provides direct when-to-use and when-not-to-use context.

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

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

  • A
    license
    -
    quality
    C
    maintenance
    SEO and marketing intelligence toolkit for keyword research, SERP analysis, backlink checking, content optimization, technical site audits, and content brief generation. 6 tools to improve search engine rankings.
    MIT
  • A
    license
    -
    quality
    B
    maintenance
    Runs AI visibility (GEO/AEO) audits on websites, checking AI crawler access, schema markup, llms.txt, and content signals, with optional full PDF report.
    MIT
  • A
    license
    -
    quality
    D
    maintenance
    A comprehensive MCP server for SEO, performance, GEO, and UX audits with 37 tools covering technical SEO, Lighthouse performance, AI search optimization, content analysis, accessibility, security, and more.
    1
    MIT

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.