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

    Each tool has a clearly distinct purpose: duplicate detection, exclusion checks, classification, correction, reporting, import, listing companies and deals, batch processing, memory recall, reconciliation, and partner management. No two tools overlap in functionality.

    Naming Consistency4/5

    Most tools follow a verb_noun pattern (check_duplicate, classify_transaction, import_csv, etc.), but 'nightly_run' is an exception (adjective_noun) that slightly breaks consistency. Overall, the naming is clear and predictable.

    Tool Count5/5

    12 tools is well-scoped for an accounting automation server, covering all major steps from import to classification to reporting without being excessive or insufficient.

    Completeness5/5

    The tool set provides complete coverage of the intended workflow: import, duplicate detection, exclusion rules, classification, correction feedback, multi-company batch processing, report generation, memory recall, and reconciliation. No obvious gaps.

  • Average 3.8/5 across 12 of 12 tools scored. Lowest: 2.7/5.

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

    • No community issues in the last 6 months
    • 3 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

  • Behavior3/5

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

    Without annotations, the description partially discloses behavior: it detects duplicate fingerprints within freee. However, it does not reveal side effects, data mutation, or prerequisites, leaving significant behavioral gaps.

    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?

    Two sentences, relatively concise. However, the use of parentheses and equals signs makes the first sentence slightly cluttered, reducing readability.

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

    Completeness2/5

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

    Given the tool's complexity (cross-SaaS reconciliation, duplication detection), the description lacks essential context: no return value, no error conditions, no prerequisites, and no integration status information. With no output schema or annotations, this is insufficient.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description does not explain the two parameters (period_start, period_end). No format, purpose, or example is given, forcing the agent to infer from names alone.

    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 description clearly states it performs cross-SaaS reconciliation between freee and MF, and detects duplicate fingerprints. It distinguishes this tool from siblings by specifying its cross-SaaS scope, though the 'freee-only mode' adds some ambiguity.

    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 explicit guidance on when to use or not use this tool. It mentions the tool is currently in freee-only mode, implying limitations, but does not provide alternatives or state clearly when to choose this over siblings like check_duplicate.

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

  • Behavior2/5

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

    No annotations are provided, so the description must carry the burden. It only says 'List transactions' without disclosing behavioral traits like rate limits, idempotency, or any side effects. This is insufficient for a tool with 5 parameters.

    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 concise with two sentences and no redundant information. It front-loads the purpose, but could be more structured with bullet points for clarity.

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

    Completeness2/5

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

    Given 5 parameters, no output schema, and no annotations, the description is incomplete. It does not explain pagination (limit/offset), date format specifics, or what the response contains. More context is needed for effective tool use.

    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 60% (3 of 5 parameters have descriptions). The description does not add extra meaning beyond the schema, e.g., explaining how type, limit, offset, date filters work together. Baseline score due to moderate coverage but no added value.

    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 description clearly states the tool lists transactions from freee API for the configured company. The verb 'List' and resource 'transactions (取引)' are specific. However, it does not differentiate from sibling tools like 'classify_transaction' or 'import_csv'.

    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 mentions 'Useful for sync + classification dogfood', giving some context on when to use it, but lacks explicit guidance on when to avoid or alternatives among siblings.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden. It mentions returning excluded:true but does not disclose whether the tool is read-only, idempotent, requires authentication, or has any side effects. The behavioral context is minimal.

    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 extremely concise: two short sentences plus a list of rules. The first sentence front-loads the core purpose. Every element is meaningful and there is no redundancy.

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

    Completeness2/5

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

    No output schema exists, so the description should fully explain the return value, which it partially does. However, it fails to explain the role of most parameters (memo, amount, partner_name) and does not cover error conditions or edge cases. The context is incomplete for an agent to use the tool reliably.

    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 only 25% (only 'employees' has a description). The description lists rules but does not explain how memo, amount, or partner_name relate to the exclusion logic. It adds no value over the schema for these parameters.

    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 purpose: a 7-rule exclusion check for Japanese accounting that returns whether a transaction should not be auto-journalized. It distinguishes itself from siblings like check_duplicate and classify_transaction by focusing on exclusion rules.

    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 implies usage for checking exclusion from auto-journalization but does not explicitly state when to use this tool versus alternatives or when not to use it. No guidance on prerequisites or comparison with sibling tools.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden. It describes the tool as a search operation, which implies it is non-destructive, but it does not explicitly state read-only behavior, required permissions, rate limits, or potential side effects. The description is insufficient for a tool that may involve multiple operations (search vs. stats).

    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 concise at two sentences and front-loads the main purpose. However, it could be more structured with bullet points or clearer separation of use cases. It is appropriately sized but lacks explicit structure.

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

    Completeness2/5

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

    The tool has no output schema, so the description should explain what the tool returns (e.g., pattern details, correction records). It mentions 'memory stats' but does not describe the format or content of the response. Given the tool's complexity (5 parameters, search and stats), the description is incomplete.

    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 the schema already documents each parameter's purpose. The description adds limited value by grouping parameters (memo/partner for pattern search, show_stats for stats) but does not provide significant new meaning beyond what is in 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?

    The description clearly identifies the tool's purpose: searching past classification patterns and correction history. It specifies the use of transaction descriptions (memo) and partner names to reference patterns and confirm classification rationale, and mentions memory stats. This clearly distinguishes it from sibling tools like classify_transaction (for actual classification) and correct_classification (for corrections).

    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 implies usage when needing to reference past patterns to justify classifications or check memory stats, but it does not explicitly state when to use this tool versus alternatives or when not to use it. No exclusions or comparisons to siblings are given.

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

  • Behavior3/5

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

    No annotations are provided, so the description must cover behavior. It discloses fuzzy matching and return value, but does not specify update behavior on a match, permissions, or side effects, leaving some ambiguity.

    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 short sentences that convey all essential information without redundancy, perfectly front-loaded.

    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 simple tool with one parameter, no output schema, and no annotations, the description covers purpose, matching logic, and return value. Minor gap: unclear update behavior on match, but otherwise complete.

    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 coverage is 0%, so description must compensate. It adds that partner_name is used for fuzzy matching, but does not elaborate on format or constraints. Adequate for a single parameter but not thorough.

    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 performs an auto-creation/upsert on a partner master in freee with fuzzy matching, and returns partner_id. It distinguishes from siblings like check_duplicate by focusing on the upsert action.

    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 implies usage for creating a new partner or matching existing ones via fuzzy logic, but does not explicitly state when to use alternatives like check_duplicate or any prerequisites.

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

  • Behavior2/5

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

    No annotations are provided, so the description bears full responsibility for behavioral disclosure. It states the tool checks for duplicates but does not specify the return type, whether it is read-only, error conditions, or case sensitivity of memo prefix matching. This lack of detail limits the agent's understanding of side effects and behavior.

    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 extremely concise, with two sentences that front-load the purpose and criteria, then provide a clear usage directive. Every sentence adds value without redundancy.

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

    Completeness3/5

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

    For a simple check tool with three required parameters and no output schema, the description covers the purpose, matching criteria, and usage timing. However, it omits information about the return value (e.g., boolean or details) and does not mention potential errors or edge cases, leaving some incompleteness.

    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 input schema lacks descriptions (0% coverage), but the description adds meaning by specifying that memo is matched by prefix and that the combination of date, amount, and memo is used for duplicate detection. This provides crucial semantic context beyond the raw schema definition.

    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 checks for duplicate transactions by date, amount, and memo prefix, with explicit matching criteria. It distinguishes itself from siblings by focusing on duplicate detection, and the phrase 'Use BEFORE register' adds context.

    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 explicit usage context: 'Use BEFORE register to prevent double-posting.' This tells the agent when to use the tool. However, it does not mention when not to use it or compare it to alternatives like check_exclusion or classify_transaction.

    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, but description fully discloses the two-stage process, deferred fallback, and return values. No contradictions.

    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?

    Two sentences, front-loaded with purpose, no wasted words. Perfectly concise.

    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?

    Covers purpose, stages, output, and deferred phase. Missing confidence score range or interpretation details, but adequate for a classifier with no output schema.

    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 parameters are well-documented in schema. Description adds no additional parameter details beyond the schema, but baseline 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?

    Explicitly states it is a two-stage classifier for Japanese tax accounting, specifying stages (keyword dictionary match and Claude API fallback) and outputs (勘定科目, 税区分, confidence). Clearly distinguishes from sibling tools.

    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?

    Describes when to use (for Japanese tax accounting classification) and the two-stage process. Doesn't explicitly state when not to use or compare to siblings like correct_classification, but the context is clear.

    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, the description carries full burden. It discloses that the tool uses '永続記憶' (persistent memory) and will '自動適用' (automatically apply) corrected categories to future similar transactions. It also explains scope options (company-wide or specific company). While it doesn't cover all behavioral details (e.g., idempotency, error handling), it provides key behavioral context beyond the schema.

    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 three sentences long with no filler. It front-loads the core purpose ('税理士修正フィードバック'), explains the mechanism, and notes scope. Every sentence earns its place, making it highly concise and well-structured.

    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 (8 parameters, persistence, auto-application), the description covers the main purpose, behavior, and scope. It lacks details about return values (no output schema) and error handling, but these are not critical for understanding the tool's function. Overall, it is reasonably complete for a correction feedback 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?

    Schema description coverage is 100%, meaning each parameter already has a description in the input schema. The tool description adds conversational context but does not provide additional parameter-level meaning beyond what the schema already conveys. Per guidelines, baseline is 3 when coverage is high.

    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 explicitly states '税理士修正フィードバック' (tax accountant correction feedback) and explains the tool records misclassifications and auto-applies corrected categories to future matching transactions, with a note about persistent memory. This clearly distinguishes it from siblings like 'classify_transaction' (classification) and 'recall_memory' (memory retrieval), providing a specific verb-resource pair.

    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 clearly indicates the tool is for correction feedback and mentions scope (company-wide or per-company). It implicitly distinguishes from siblings by focusing on recording corrections rather than classifying or recalling, but does not explicitly state when NOT to use it or name alternatives. This is slightly below a 5 due to lack of explicit exclusion 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?

    Without annotations, the description carries full burden. It discloses that transactions are fetched from freee API if not provided, and that the tool classifies and detects anomalies without side effects. However, it does not mention authentication needs or rate limits.

    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 a concise 3 sentences, front-loaded with the core purpose. Every sentence adds value, covering inputs, process, and output, with no redundancy.

    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 7 parameters and no output schema, the description covers the main workflow and output structure. It mentions the report includes category breakdown, anomaly alerts, and review items. However, it does not specify the exact return format or pagination, leaving minor gaps.

    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 coverage is high (86%), so baseline is 3. The description adds context for some parameters (e.g., data sourcing), but does not elaborate on each parameter beyond the schema. It mostly paraphrases the existing descriptions.

    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 generates a monthly review report, specifies the process (classify, detect anomalies, produce report), and distinguishes it from sibling tools like classify_transaction by focusing on the complete report generation for client presentation.

    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 for tax accountants preparing client reports and mentions data sources (freee API or CSV). However, it does not explicitly state when to prefer this tool over alternatives like classify_transaction or import_csv, nor provide 'when not to use' guidance.

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

  • Behavior3/5

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

    No annotations are provided, so the description must convey behavioral traits. It states the action is a list operation and mentions the OAuth token, but it does not explicitly confirm it is read-only or state any side effects. For a simple listing tool, this is adequate but not fully transparent.

    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 consists of two concise sentences that front-load the main action and include a Japanese translation for clarity. Every sentence adds value without unnecessary detail.

    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 parameterless list tool, the description fully covers what the tool does, what it returns, and a typical use case. No additional information from an output schema is needed to understand the tool's behavior.

    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 tool has zero parameters, and the schema coverage is 100%. The description adds no parameter-specific details, which is appropriate since there are none. Per the baseline rule for 0 parameters, a score of 4 is given.

    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 ('List all companies'), the resource ('companies accessible by the configured freee OAuth token'), and the output ('Returns company IDs + names'). It also provides a use case ('Used for multi-company batch processing'), distinguishing it from sibling tools that perform different operations.

    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 implicitly indicates when to use the tool (to list accessible companies and obtain IDs/names for batch processing). It does not explicitly state when not to use it or list alternatives, but the context is clear and no sibling tool overlaps this functionality.

    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 of disclosing behavior. It reveals the tool is currently dry-run only, processes all companies, and details the per-company pipeline steps (fetch, exclusion, classification, confidence routing, summary). This is transparent about limitations and internal logic.

    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 tool's purpose. It uses a single paragraph with key points (pipeline steps, dry-run status) without unnecessary words. 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 tool's complexity (batch pipeline with multiple stages, no output schema), the description provides a good overview of the process and current state. It covers the pipeline steps and dry-run limitation. However, it lacks details on what the tool returns or how to interpret results, which could be useful for an agent.

    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 all parameters are already described in the input schema. The tool description adds minimal extra information (e.g., dry-run context) but does not significantly enhance understanding beyond the schema's parameter descriptions. 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 is a nightly batch pipeline that processes all accessible companies. It outlines the pipeline stages (fetch, exclusion, classify, routing, summary), distinguishing it from sibling tools that handle individual operations like classify_transaction or check_duplicate.

    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 explains the tool is for batch processing and notes the current dry-run limitation. It implies when to use (nightly runs) but does not explicitly exclude alternatives or provide when-not-to-use guidance. However, the pipeline context is clear.

    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?

    Without annotations, the description fully discloses the processing pipeline (Stage 0→1+2 classification, confidence routing) and return structure (categorized results, review queue, Markdown report), which is critical for an import tool.

    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?

    Multiple sentences but each adds value; information is front-loaded and well-organized, though slightly dense.

    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 fully explains the return format and processing steps, making it complete for agent decision-making.

    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 baseline is 3. The description adds meaning by explaining source parameter force vs auto-detect, clarifying generic CSV columns, and emphasizing raw CSV paste.

    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 specifies importing CSV from specific sources (弥生会計/freee/MoneyForward or generic) with auto-detection, distinguishing from sibling tools by describing the full classification pipeline and return values.

    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?

    Provides guidance for auto-detection and a specific tip for 弥生 users, but lacks explicit comparisons to sibling tools like classify_transaction or reconcile_cross_saas.

    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

bantou MCP server

Copy to your README.md:

Score Badge

bantou 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/michielinksee/bantou'

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