Skip to main content
Glama

Server Quality Checklist

67%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v0.1.0

  • Disambiguation5/5

    The two tools have clearly distinct purposes: one searches for articles with inline fragments, the other retrieves full text for a specific article. There is no overlap in functionality, so an agent can easily decide which to call.

    Naming Consistency5/5

    Both tool names follow the same pattern: a verb followed by 'impresso' (search_impresso, get_impresso_text). The naming is consistent and predictable, with no mixed conventions.

    Tool Count3/5

    With only two tools, the server feels thin for the scope of a historical press archive. While search and retrieval cover a basic workflow, the reference to an 'advanced_search_impresso' tool that isn't present suggests the set is incomplete.

    Completeness2/5

    The server explicitly mentions an advanced search tool that is not implemented, and there are no filtering or browsing options (by date, language, newspaper, etc.). This limits the search to simple phrase queries, which is a significant gap for the intended research use case.

  • Average 4.6/5 across 2 of 2 tools scored.

    See the Tool Scores section below for per-tool breakdowns.

    • No community issues in the last 6 months
    • 2 commits in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI is passing
  • This repository is licensed under Apache 2.0.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • Add a glama.json file to provide metadata about your server.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior4/5

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

    With no annotations provided, the description bears full responsibility for behavioral disclosure. It reveals key traits: the call is metered against a monthly quota, and articles with unreadable rights are refused with an explanation rather than returned empty. This adds useful context beyond the basic action, though it doesn't cover all possible side effects.

    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 only three sentences. It front-loads the core action, then adds usage guidance and metering/error behavior. Every sentence contributes meaningful information, with 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 tool with one parameter and an output schema, the description is complete: it covers purpose, usage timing, cost implications, and error behavior. The output schema provides return-value details, so the description doesn't need to repeat that. Sibling tool context is also effectively used.

    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 covers the single parameter 'reference' fully, including its source from 'search_impresso'. The description doesn't add additional parameter-level details, but given 100% schema coverage, the baseline score of 3 is appropriate.

    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 action: downloading an article's transcript and returning a cached file path. It uses a specific verb ('Download') and resource ('article's transcript'), and distinguishes itself from the sibling tool 'search_impresso' by focusing on full-text retrieval rather than search fragments.

    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?

    The description explicitly provides when to use the tool: 'Use only when the search fragments are not enough and the whole article has to be read or grepped.' It also contrasts the metered nature of transcripts against unmetered searches, giving clear cost-based usage guidance.

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

  • Behavior4/5

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

    With no annotations provided, the description carries the transparency burden. It discloses critical behaviors: the server escapes operator characters, multi-word queries are treated as phrases, and results include keyword-in-context fragments in braces. While it doesn't mention pagination limits or error handling, it goes beyond the bare minimum in explaining how the tool behaves.

    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 well-structured and front-loaded with the core purpose. Every sentence earns its place: coverage details set expectations, the result format clarifies output, and the bolded warning about operator syntax is essential. No redundancy or 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, the description covers the essential aspects: purpose, usage guidelines, behavioral nuances, and parameter semantics. An output schema exists, so detailed return values are not required. The description is complete enough for an agent to select and invoke the tool correctly, though it could have mentioned pagination behavior in more detail.

    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% with descriptions for both parameters. The description adds semantic value to the 'query' parameter by explaining the no-operator-syntax rule and phrase matching, which is not evident from the schema alone. The 'page' parameter is straightforward and needs no extra explanation.

    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: 'Search the Swiss and Luxembourgish historical press full text.' It specifies the resource (historical press) and differentiates from siblings by noting results are individual articles with inline keyword-in-context fragments, and by explicitly mentioning the alternative advanced_search_impresso for advanced filtering.

    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?

    The description explicitly states when to use this tool versus alternatives: 'Use `advanced_search_impresso` for alternatives, exclusions and filters.' It also explains that there is no operator syntax, so complex queries should go to the advanced tool. This provides clear usage boundaries.

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

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

impresso-mcp MCP server

Copy to your README.md:

Score Badge

impresso-mcp MCP server

Copy to your README.md:

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/nestordemeure/impresso-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server