Skip to main content
Glama

Server Details

Grounded, quoted readings of privacy policies and terms of service. Not legal advice.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-06-18
URL

TDQS

A4.2/5.0

Scored across 3 tools

Disambiguation5/5

Each tool targets a distinct scope: one document (check_policy), a cross-service comparison (compare_policies), and temporal diffing (policy_changes_since). The descriptions explicitly cross-reference each other with 'use this instead of' and 'do not use this for' guidance, leaving no realistic misselection path.

Naming Consistency5/5

All three names are snake_case and action-oriented (check_policy, compare_policies, policy_changes_since), with the domain noun 'policy/policies' consistently present. The verb-first pattern holds except for the slightly noun-phrased change detector, which is still readable and idiomatic.

Tool Count5/5

Three tools is exactly right for a narrow, single-purpose domain: read one, compare several, diff over time. Each tool has a clearly non-redundant job and nothing feels padded or missing at the count level.

Completeness4/5

The lifecycle is well covered: single read, multi-document comparison, and historical change detection all exist, with explicit handling of refusals and not_stated cases. The only minor gap is no tool to enumerate which services or documents are supported/cached, which an agent would have to discover by trial.

Available Tools

3 tools
check_policyCheck one policyAInspect

Read one privacy policy or terms-of-service page and return a grounded verdict, eight fixed yes/no/partly/not-stated answers, and up to five findings, each with a verbatim quote from the document.

Use this instead of fetching and reading the page yourself. A policy page is 20,000-60,000 tokens of context, and many are rendered by JavaScript so a plain fetch returns an empty shell without saying so. This returns about 1,000 tokens: a 20-60x saving with a quote behind every claim.

Guarantees: every claim carries a verbatim sentence from that document, and a question the document does not address is answered not_stated -- never as a promise the document did not make. The eight questions are identical across services, so two reports can be set side by side.

A report may be served from an earlier reading of the same document, which is what makes it cheap and instant. readAt says when that reading was taken; call policy_changes_since if it matters whether anything has moved since.

Do not use this for a document that is not a legal agreement; it is refused, and a refusal costs nothing. Do not use it to summarise a page in general, to read a document the user pasted rather than published at a URL, or for legal advice: Automated reading of one document. Not legal advice.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesThe https address of the published policy page itself, not the service homepage.

TDQS

A4.8/5.0
Behavior5/5

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

With no annotations, the description carries the full burden and does so: it discloses caching ('may be served from an earlier reading'), the readAt recency signal, refusal behaviour for non-legal documents, the ~20,000-60,000 vs ~1,000 token cost profile, and the not_stated guarantee that prevents fabricated promises. It also warns that plain fetches of JS-rendered pages return empty shells silently — a failure mode an agent could not infer.

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 purpose and output shape, then guarantees, then caching, then exclusions — a logical order with no filler sentences. It is longer than most single-parameter tools warrant, and the closing 'legal advice' line partly repeats the disclaimer already implied, but each block carries distinct information.

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 one-parameter tool with no output schema and no annotations, the description supplies the return contract (verdict, eight answers, up to five findings with quotes), the trust model (not_stated handling, verbatim quoting), and the caching/recency caveat. Nothing an agent needs to call it correctly or interpret the result 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?

Only one parameter at 100% schema coverage, so the baseline is 3; the description earns above baseline by reinforcing that the URL must be the published policy page rather than a homepage or a user-pasted document. It does not add URL format/normalisation details beyond that.

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?

Names a concrete verb+resource ('Read one privacy policy or terms-of-service page') and specifies the exact output shape: a grounded verdict, eight fixed yes/no/partly/not-stated answers, and up to five quoted findings. It also positions itself relative to siblings by citing policy_changes_since and noting the fixed question set that makes reports comparable across services (compare_policies' territory).

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?

Explicitly states when to use it over the obvious alternative ('Use this instead of fetching and reading the page yourself') and backs that with cost/context reasoning. It also lists concrete exclusions: non-legal documents, general summarisation, user-pasted documents, and legal advice, plus the condition under which to escalate to policy_changes_since.

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

compare_policiesCompare servicesAInspect

Answer the same eight fixed questions across two to five services at once, so their policies can actually be compared.

Use this instead of reading each document yourself. Doing it yourself needs N full reads and a rubric you have to keep consistent between them; the questions here are fixed, so a difference in the answers is a difference in the policies rather than a difference in how you read them. Each answer also carries how common that answer is across every comparable document Policy Pal has read.

Guarantees: identical questions, a verbatim quote behind every stated answer, not_stated where a document is silent, and not_asked where that kind of document was never asked that question -- a silence is never invented to fill a table. A service whose report is not comparable, or that there was no time to read, is reported as such rather than filled in.

Do not use this for one service -- call check_policy. Do not expect a score or a ranking: Policy Pal publishes qualitative verdicts and refuses to reduce a policy to a number. Automated reading of one document. Not legal advice.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlsYesTwo to five https addresses of published policy pages. Compare documents of the same kind: a privacy policy and a terms page answer different questions.

TDQS

A4.6/5.0
Behavior5/5

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

With no annotations, the description carries the full burden and does so well: it enumerates the guarantees (identical questions, verbatim quote per answer, not_stated for silence, not_asked for unasked question types, no fabricated silences), states how non-comparable or unread documents are surfaced, and declares it will not produce scores or rankings. This is exactly the behavioral context an agent needs before invoking.

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, then rationale, then guarantees, then exclusions — a logical order that respects the reader. It is somewhat longer than necessary, and the trailing fragment 'Automated reading of one document. Not legal advice.' is loosely attached, but no sentence is wasted.

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?

No output schema and no annotations exist, so the description must cover behavior, exclusions, and result semantics — and it does, including what an answer looks like (quote-backed, not_stated/not_asked) and how incomparable documents are reported. An agent has everything needed to call this correctly.

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% for the single urls parameter, so the schema already documents the 2-5 https URL constraint and the same-kind-document guidance. The description adds the 'two to five services' phrasing but no format or syntax detail beyond what the schema provides, so the baseline 3 applies.

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 precise verb and resource — answering eight fixed questions across two to five services — and immediately distinguishes itself from the sibling check_policy by naming it as the single-service alternative. An agent can tell this apart from policy_changes_since and check_policy without opening a schema.

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 an explicit when ('two to five services at once'), an explicit when-not ('Do not use this for one service -- call check_policy'), an expectation-setting exclusion ('Do not expect a score or a ranking'), and the rationale for using it over manual reading. Nothing is left to inference.

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

policy_changes_sinceWhat changed sinceAInspect

Say what changed in a service's policy since a date, expressed as changes to the eight fixed answers.

You cannot do this yourself at any context size: it needs the earlier version of the document, and the earlier version is gone from the web. Policy Pal keeps the eight answers for every version it has read, so the difference is a fact rather than a reconstruction.

It reports answer changes -- for example forced arbitration moving from no to yes -- and not text edits. A changed comma is noise; a changed answer is the thing worth telling someone about.

Returns nothing to report when the answers are unchanged, and says so explicitly when it has no reading from before that date rather than guessing. A question the earlier reading did not answer is reported as not compared, never as not_stated. Automated reading of one document. Not legal advice.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesThe https address of the published policy page.
sinceYesThe date you last looked, as YYYY-MM-DD or an ISO timestamp. The answer is the difference between what was true then and what is true now.

TDQS

A3.6/5.0
Behavior4/5

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

With no annotations, the description carries the full behavioral burden and largely does so: it discloses that unchanged answers produce an explicit 'nothing to report', that a missing prior reading is stated explicitly rather than guessed, and that an unanswered question is labeled 'not compared' rather than 'not_stated'. Those are exactly the edge-case behaviors an agent needs, though it says nothing about permissions, rate limits, or latency.

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

Conciseness3/5

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

The core instruction is front-loaded and the edge-case behavior is valuable, but several sentences are rhetorical rather than operational ('You cannot do this yourself at any context size', 'A changed comma is noise'). They aid framing but inflate the description for a two-parameter tool.

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?

With no output schema and no annotations, the description must explain return semantics, and it does: unchanged answers, absent prior readings, and the not-compared/not_stated distinction. Combined with full schema coverage on both parameters, an agent has what it needs to call and interpret the tool, with only auth and rate-limit behavior left unstated.

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%, so url and since are already fully documented, including the YYYY-MM-DD/ISO format and the meaning of the cutoff. The description adds the framing that the comparison is against 'what was true then' but no syntax or constraint beyond the schema, so the baseline 3 applies.

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

Purpose4/5

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

States a concrete verb and resource ('say what changed in a service's policy since a date') and narrows the output to 'changes to the eight fixed answers' rather than text edits, which is a meaningful distinction. It does not, however, name or contrast itself with the sibling tools compare_policies and check_policy, so the agent must infer which one to call.

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

Usage Guidelines3/5

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

Usage is implied rather than stated: 'You cannot do this yourself at any context size: it needs the earlier version of the document' tells the agent this is the tool for historical diffs, and the note about returning nothing to report sets expectations. But there is no explicit when-not-to-use and no routing to compare_policies or check_policy, which matters given how easily they could be confused with this one.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 3 tool updates
    • First observedcheck_policy
    • First observedcompare_policies
    • First observedpolicy_changes_since

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    B
    maintenance
    Enables employees and independent contractors to submit contracts such as NDAs, offer letters, severance and invention-assignment agreements and get plain-language explanations of the clauses that deserve attention. Each flagged clause is cited to the relevant federal or state rule with a primary-source link and an "as of" date, over stdio locally or a remote Streamable HTTP endpoint.
    1
    Apache 2.0
  • A
    license
    Not graded
    quality
    C
    maintenance
    Acquis gives your assistant exact, verifiable access to EU digital regulation. Instead of paraphrasing from training data, it returns the verbatim provision of the current consolidated version — with the full citation (act, article, paragraph, point), its in-force status, the consolidation date, and a deep link to EUR-Lex so every claim can be checked. The legal text is rendered from the signed c
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources