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

  • Disambiguation4/5

    The tools are mostly distinct, with buscar_jurisprudencia and buscar_sumulas sharing similar but clarified purposes. The two reading tools (ler_decisao and ler_inteiro_teor) could cause confusion, but the descriptions clearly differentiate metadata extraction from full text retrieval.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern in Brazilian Portuguese (e.g., buscar_jurisprudencia, compilar_dossie), making it easy to infer each tool's purpose.

    Tool Count5/5

    With 5 tools, the server is well-scoped for legal research, covering searching, reading decisions, and compiling dossiers. The count is neither too few nor excessive.

    Completeness4/5

    The tool set covers the core workflow of searching, reading, and compiling jurisprudence. Minor gaps exist, such as lack of support for specific court filters and reliance on external login for full text, but the overall functionality is sufficient for its stated purpose.

  • Average 4.4/5 across 5 of 5 tools scored. Lowest: 3.5/5.

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

    • No community issues in the last 6 months
    • 6 commits in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI status not available
  • This repository is licensed under MIT License.

  • 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

  • Behavior2/5

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

    With no annotations, the description carries full burden. It only explains the search behavior, not side effects, authentication needs, or rate limits. Minimal disclosure beyond the obvious.

    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 (two main sentences plus structured Args/Returns), front-loads the key purpose, and uses clear formatting. 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?

    Given the simple search tool with few parameters and an output schema, the description adequately covers functionality, return fields, and parameter details. Could mention pagination but limite param addresses limit.

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

    Parameters5/5

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

    The description significantly adds meaning beyond the schema titles, explaining each parameter's purpose, format, and defaults. For example, 'query' is terms, 'limite' has range and default, 'tribunal' is optional with examples.

    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?

    The tool name and description clearly indicate it searches for 'sumulas' (precedents) on JusBrasil, using a specific filter. It is distinct from sibling 'buscar_jurisprudencia' which likely searches general jurisprudence, though not explicitly stated.

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

    Usage Guidelines2/5

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

    No guidance is given on when to use this tool versus alternatives, or when not to use it. The description merely states what it does without contextual advice.

    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 full burden. It discloses key behavioral traits: the periodo filter uses relative dates (not exact), the tribunal filter accepts multiple values separated by commas, and the return format is a list of dicts with specific fields. This goes beyond basic functionality, but does not mention rate limits, authentication, or side effects (likely none).

    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?

    The description is well-structured with Args and Returns sections, front-loading the purpose. It is appropriately sized but could be slightly more concise—some parameter descriptions are verbose (e.g., tribunal notes). However, no sentence is wasted, and the format aids readability.

    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 complexity (6 parameters, need for output description) and presence of an output schema (mentioned as returning list of dicts), the description is thorough. It covers all parameters and return values. Minor gaps: no mention of error cases or pagination beyond limite, but overall adequate.

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

    Parameters5/5

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

    Input schema has 0% description coverage (no descriptions in schema properties). The tool description compensates fully by explaining each parameter with examples, default values, allowed values (e.g., tribunal values: 'STF', 'STJ', etc.), and behavior (e.g., periodo relative). This adds significant meaning beyond the raw 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?

    The description clearly states 'Pesquisa jurisprudencia no JusBrasil, com filtros reais do site,' specifying the action (search jurisprudence), source (JusBrasil), and distinguishing feature (real site filters). It differentiates from sibling tools like buscar_sumulas (search summaries) and ler_decisao (read decision), which have different purposes.

    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?

    The description explains parameters and acceptable values, providing context on when to use filters. However, it does not explicitly state when to use this tool over alternatives, nor does it mention when not to use it. There is no direct comparison to siblings, leaving the agent to infer from the tool name and description.

    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?

    No annotations provided, so description carries the burden. It discloses that including full text requires login, is slower, and not always available. It also mentions return dict structure. Could mention overwrite behavior, but overall transparent.

    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?

    Description is well-structured with summary then args, but slightly verbose. Front-loaded with purpose. Could be tightened, but still effective.

    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, but description explains return dict (arquivo, n_itens, n_falhas, com_inteiro_teor). Covers slower behavior and login requirements. Complete for a compilation tool.

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

    Parameters5/5

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

    Schema description coverage is 0%, so description fully compensates. Explains each parameter: urls (list of URLs), incluir_inteiro_teor (boolean with default and caveats), titulo (default), caminho (default). Adds meaning beyond 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?

    The description clearly states the tool compiles multiple decisions/sumulas into a single Word document, using the specific verb 'compilar' and resource 'UNICO documento Word (.docx)'. It also distinguishes from siblings by referencing 'buscar_jurisprudencia' and 'buscar_sumulas' as prior steps.

    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 says 'Use depois de escolher, com buscar_jurisprudencia/buscar_sumulas, quais decisoes quer reunir', providing clear when-to-use guidance and reference to sibling tools.

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

  • Behavior5/5

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

    With no annotations provided, the description fully carries the burden. It discloses that null fields indicate extraction failure or actual absence, warns against inventing content, and instructs to check _parse_warnings. It also clarifies the non-official nature of JusBrasil, which is critical for the tool's usage.

    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?

    The description is well-structured with clear sections (purpose, usage, anti-hallucination, args, returns). It is somewhat lengthy but every sentence serves a purpose. Minor redundancy could be trimmed, but overall it is efficiently organized.

    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?

    Given no output schema and the complexity of the tool (extracting multiple fields, handling failures, anti-hallucination), the description is remarkably complete. It lists all return fields, provides the citation format, and includes critical usage warnings.

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

    Parameters5/5

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

    The single parameter 'url' is exhaustively described: it provides an example URL, explains where to obtain it (from buscar_jurisprudencia's 'url' field), and clarifies it should be the full URL. With 0% coverage from the schema, the description fully compensates.

    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 it reads an individual decision from JusBrasil and extracts all metadata. It differentiates from siblings by specifying it is used after buscar_jurisprudencia to obtain formal data (relator, orgao julgador, data de julgamento) for citations. The verb 'ler' and resource 'decisao' are precise.

    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 (after buscar_jurisprudencia) and provides context for building citations in petitions. It also includes anti-hallucination instructions and warnings about JusBrasil not being an official source, guiding appropriate usage.

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

  • Behavior5/5

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

    Describes login requirement, behavior when no session, anti-hallucination instructions, limitations of JusBrasil, and return format. No annotations present so description carries full burden and does it thoroughly.

    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?

    Well-structured with clear sections, but slightly verbose with repeated emphasis on anti-hallucination. Every sentence is valuable, though could be tightened.

    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?

    Covers all important aspects: purpose, usage distinction, authentication, error handling, return format, and source reliability. No output schema, but description explains return dict fields fully.

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

    Parameters5/5

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

    Schema provides no description for url, but the tool's Args section explains that url can be a decision URL or a direct full-text URL with example. This adds essential meaning beyond 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?

    Description clearly states it extracts full text of a decision (report, vote, full judgment) and distinguishes from sibling ler_decisao which only returns metadata and summary.

    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 contrasts with ler_decisao, provides authentication requirement, anti-hallucination guidance on null texto, and warns that JusBrasil is not official source.

    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

mcp-jusbrasil MCP server

Copy to your README.md:

Score Badge

mcp-jusbrasil 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/fxbarros/mcp-jusbrasil'

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