Skip to main content
Glama
AdminRHS

Libs MCP Service

by AdminRHS

Server Quality Checklist

58%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v1.0.0

  • Disambiguation3/5

    Generic tools like list/get/create/update overlap with specialized tools like get_priority, create_term, and update_term, making it unclear whether to use the generic path or the specialized one for term and priority operations. Descriptions help clarify intent, but the boundaries are not crisp.

    Naming Consistency3/5

    The generic operations use bare verbs (list, get, create, update) while the specialized operations use verb_noun patterns (get_priority, create_term, find_existing_skill_terms), so the naming convention is mixed. All names are readable and consistently snake_case, but the pattern is not uniform.

    Tool Count5/5

    Eleven tools is a reasonable count for an entity/term management server, covering generic resource operations plus dedicated priority, term type, and lookup helpers. Each tool appears purposeful and the set is not bloated.

    Completeness3/5

    The tool surface covers list, get, create, and update operations, but there is no delete operation for entities or terms, which leaves the lifecycle incomplete. The find_existing_* helpers partially cover term discovery, but dedicated term listing/retrieval is still somewhat implicit.

  • Average 3.4/5 across 11 of 11 tools scored. Lowest: 2.6/5.

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

    • No community issues in the last 6 months
    • 0 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
  • Add a LICENSE file by following GitHub's guide. Once GitHub recognizes the license, the system will automatically detect it within a few hours.

    If the license does not appear after some time, you can manually trigger a new scan using the MCP server admin interface.

    MCP servers without a LICENSE cannot be installed.

  • 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 provided, the description carries the full burden of behavioral disclosure. It only states 'List entities' and mentions language support, but doesn't disclose pagination behavior, the meaning of limit/page, whether 'all' bypasses pagination, what 'isShort' controls, or whether any side effects exist. Too little behavioral context for a 6-parameter tool with no annotations.

    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 description is a single concise sentence with no waste, which is good for front-loading. However, 'List entities' partially restates the tool name, and the brevity comes at the expense of necessary detail about parameters and behavior. It is efficient but under-specified rather than optimally written.

    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 6 parameters, no annotations, and no output schema, so the description must carry significant explanatory weight. It fails to explain pagination semantics, the 'all'/'isShort' flags, search behavior, response shape, or any constraints. An agent would need to infer almost everything about how to call this correctly beyond the resource parameter.

    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 roughly 17% (only 'resource' has a description), so the description must compensate for the undocumented parameters. It adds only the UA/RU/EN synonym note for resource and leaves all, page, limit, search, and isShort entirely unexplained in both schema and description. The single i18n detail is valuable but far from sufficient.

    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 states a clear verb and resource ('List entities') and adds the useful detail that resource names are supported in UA/RU/EN. It is clear enough to be read as a read/list operation versus siblings like get or update, though it doesn't explicitly differentiate from siblings and 'entities' stays generic.

    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 about when to use this tool versus alternatives. There is no mention of when list is preferred over get, find_existing_*, or create, nor any exclusions. The only hint is the localized resource-name support, which doesn't help an agent choose among 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 exist, so the description carries the behavioral burden. It only mentions 'short form in light mode', which hints at an abbreviated representation but does not explain side effects, return format, authentication, errors, or what 'light mode' means. This is insufficient for a tool with no annotation support.

    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 a single sentence with no redundant filler and the core action is front-loaded. The phrase 'in light mode' is somewhat unclear but does not add bloat, so conciseness is good.

    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?

    For a tool with no annotations, no output schema, and unexplained parameters, this description is incomplete. It does not explain how 'resource' is used, what 'isShort' really controls, when to prefer this over sibling tools, or what the response looks like. The genericness leaves an agent guessing.

    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%, so the description must compensate. It clarifies 'id' as the lookup key and loosely hints at 'isShort' through 'short form', but it completely ignores the 'resource' parameter, leaving ambiguity about what entity types are supported.

    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 'Get single entity by ID' clearly states the operation: retrieving exactly one entity using an identifier. It distinguishes from list by emphasizing 'single', though 'entity' is generic and does not differentiate between get vs get_priority or get_priorities.

    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 it should be used when fetching a single entity by ID, in contrast to list operations. However, it does not explicitly mention alternatives or provide criteria for choosing between this and sibling tools like get_priority or get_term_types.

    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 present, so the description carries the full burden of behavioral disclosure. It only says 'Get all priorities' and does not mention pagination, search behavior, or the shape of the response. The phrase 'all' is also slightly misleading because page/limit parameters indicate paginated retrieval by default.

    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 a single short sentence with no filler or redundant information. It is front-loaded and easy to parse, though its brevity leaves out behavioral context that would help an agent use the tool correctly.

    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?

    With no annotations and no output schema, the description is too thin to fully orient an agent. It does not explain return format, pagination semantics, or how this tool relates to the sibling 'list' and 'get_priority'. The schema covers parameters, but the overall context needed for correct invocation 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 page, limit, and search are already documented with meaningful descriptions. The tool description adds no extra semantic detail about these parameters, so 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.

    Purpose4/5

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

    The description states a specific verb and resource: 'Get all priorities'. It also implies a collection-level operation, which distinguishes it from the singular get_priority sibling. However, it does not clarify how it differs from the sibling 'list', so sibling differentiation is incomplete.

    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?

    The description gives no guidance on when to use this tool versus alternatives such as list, get_priority, or search-related siblings. It provides no exclusions, prerequisites, or context for choosing this over a similar tool. Usage must be inferred entirely from the name and schema.

    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 full behavioral disclosure burden. It states 'Get all term types' but fails to disclose that results are paginated with a default limit of 10, meaning 'all' is not returned in a single call. It also does not mention read-only status, ordering, or how search interacts with pagination.

    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 single concise sentence with no filler words. The key verb and resource are front-loaded, making it immediately scannable. It is appropriately sized for a straightforward list endpoint.

    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 three parameters, no output schema, and no annotations, so the description needs to provide enough context for correct invocation. It omits the critical pagination behavior, such as 'all' requiring multiple pages, and gives no indication of what the response contains. This is a significant gap for a list endpoint with optional pagination.

    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 100%, so the baseline is 3; each parameter already has a clear description in the schema. The description adds no extra meaning beyond what the schema provides, and in fact the phrase 'all' could confuse the understanding of the limit parameter. Therefore it neither elevates nor reduces beyond baseline.

    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 uses a clear verb 'Get' and a specific resource 'term types', making the core action unambiguous. It does not explicitly distinguish itself from sibling tools like 'list' or 'get', but the resource name 'term_types' differentiates it from priority- and term-related siblings. The word 'all' is slightly misleading given the pagination parameters, so it does not earn a 5.

    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?

    The description offers no guidance on when to use this tool versus alternatives, nor does it mention pagination or search behavior. There is no mention of exclusions, prerequisites, or preferred context. The agent is left to infer usage entirely from the schema.

    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?

    With no annotations provided, the description carries the full burden. 'Find... to check what terms already exist' discloses the core read-only, existence-checking behavior, which is the most important trait. It does not describe return semantics, whether the optional search is partial or fuzzy, or how results are presented, but the essential non-mutating character is clear.

    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 description runs to three sentences, but the third ('helps you find existing skill combinations or check if a specific responsibility-tool pair already has terms') restates the first sentence with near-identical meaning. The useful content — what it finds and when to use it — is front-loaded, but the redundancy makes it padded.

    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 lookup with 100% schema description coverage, no annotations, and no output schema, the description covers the main decision points: what it filters on (responsibility and tool) and when to use it (before adding terms). It leaves unspecified the no-match behavior and the distinction from find_existing_responsibility_terms, but nothing critical blocks correct invocation.

    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 baseline is 3. The description adds only the relational framing that responsibility_id and tool_id form a pair to be checked together, which is marginally useful for constructing a query. No new parameter-level details are provided beyond what the schema already documents.

    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 specific verb and resource: 'Find existing Skills by responsibility and tool.' The purpose — checking what terms already exist before adding new ones — is explicit and goes beyond the tool name. It does not, however, differentiate itself from the near-sibling find_existing_responsibility_terms, which appears to serve the same role for a different term type.

    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?

    'Use this BEFORE adding new terms to skills' provides an explicit temporal trigger that tells the agent when to invoke this tool. This clearly routes the agent to call it ahead of create_term or create. It does not name specific alternatives or when-not-to-use conditions, but the timing guidance is unambiguous and actionable.

    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 carries the full burden of behavioral disclosure. It conveys a read-only searching/checking intent through 'Find', 'check', and 'already has terms', but it does not explicitly state that no modification occurs, nor does it disclose output format, pagination, or matching semantics (e.g., exact vs partial matches).

    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 three sentences with front-loaded purpose and usage guidance. The last sentence partially restates the first, but it adds the 'specific action-object pair' check, so the redundancy is minor and not wasteful.

    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 tool with no output schema and no annotations, the description explains the core purpose and when to use it, but it omits what the tool returns (e.g., list of existing terms vs a boolean), how the optional search behaves, and any limits. This leaves moderate gaps for an agent to use it 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%, and each parameter is documented with clear guidance (e.g., 'Use get_actions to find action ID'). The description itself does not add parameter-level semantics beyond what the schema provides, so the baseline of 3 is appropriate.

    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 states a specific action ('find existing responsibility combinations') and clarifies the resource ('Actions and Objects by language', 'specific action-object pair'). It also distinguishes itself from the sibling find_existing_skill_terms by focusing on responsibilities. However, the phrasing 'Find existing Actions and Objects' is slightly imprecise because the tool actually checks action-object pair terms, not raw Actions and Objects.

    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 'Use this BEFORE adding new terms to responsibilities,' giving a clear workflow trigger. It does not mention when not to use it or name alternatives like get/list, but it provides enough context for a responsible calling sequence.

    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 full burden and does real work: it discloses the authentication requirement ('API token authentication'), the critical partial-update semantic ('omitting aiMetadata leaves existing AI fields unchanged'), version tracking, and term group relation management. This is meaningful behavioral context beyond a bare mutation statement, though it stops short of clarifying response format, permissions, or merge behavior for non-AI fields.

    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?

    Four sentences with no filler: the primary action is front-loaded, the critical aiMetadata warning is isolated with IMPORTANT, and the capability summary is compact. Each sentence earns its place; only 'using API token authentication' is slightly redundant with general API tool expectations.

    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 tool with a complex nested aiMetadata schema and conditional requirements, the description covers the highest-risk behavior (partial updates and recommended AI fields) and mentions version tracking. But with no annotations and no output schema, it leaves gaps: it does not state what happens to omitted non-AI fields (merge vs. replace), whether special permissions are needed, or what the response contains.

    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 high (all 8 parameters have descriptions, including nested aiMetadata properties), so the baseline is 3. The description adds genuine value above the schema by advising when to send aiMetadata, which fields to include (ai_generated=true, ai_model, ai_generation_date), and by referencing version tracking and term group relations, which maps to ai_version and term_group_id semantics.

    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 opens with a specific verb and resource: 'Update an existing individual term', which clearly identifies the operation and distinguishes it from creation tools like create_term. However, the sibling list includes a generic 'update' tool, and the description does not clarify how update_term differs from it, so it falls short of full sibling differentiation.

    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 phrase 'existing individual term' implies this tool modifies an already-created term rather than creating one, giving some usage context. However, the description never names alternative tools (create_term, find_existing_skill_terms) or states explicit conditions for when to prefer them, leaving the choice mostly implied.

    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?

    With no annotations present, the description carries the transparency burden. It discloses useful behavioral details: payload shape varies by resource, and "terms without aiMetadata will not be touched." However, it does not address response shape, validation behavior, idempotency, or side effects beyond the creation itself.

    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 compact and front-loaded: the first sentence states the purpose, the second flags the resource-dependent payload, and the final sentences carry the critical AI metadata rule. Every sentence earns its place, and the text remains proportionate even though the underlying schema is enormous.

    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 tool of this complexity, with no annotations, no output schema, and a massive conditional input schema, the description is minimal. It captures the dominant mainTerm/terms pattern and AI metadata obligation, but it does not guide the agent through simpler payload resources (e.g., name-only tools/formats/statuses) or mention fetching reference IDs via sibling tools. It is adequate but incomplete.

    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?

    Top-level schema description coverage is 0%, so the description must compensate. It adds real meaning by explaining that payload structure is resource-dependent, that term-bearing entities require mainTerm plus optional terms with correct IDs/types, and that aiMetadata fields are required for AI-generated content. It does not enumerate per-resource required fields, but it points the agent in the right direction.

    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 states a specific action and target: "Create an entity for the given resource," and it names concrete resource examples (departments, professions, languages). It clearly conveys what the tool does, but it does not explicitly distinguish itself from the sibling create_term, so it lacks full sibling differentiation.

    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 gives clear contexts for use: creating an entity for any supported resource, constructing term-bearing payloads with mainTerm and optional terms, and mandatory aiMetadata when generating AI content. Conditional guidance is explicit (“When creating AI-generated content, ALWAYS include”), though it does not mention alternatives or when-not-to-use cases.

    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 disclosure burden. It clearly warns about data-loss risk (omitting unchanged terms causes deletions) and about aiMetadata preservation semantics, which are non-obvious behavioral traits. It also recommends AI metadata fields. It doesn't mention side effects like cascade updates or related resource reindexing, but the critical destructive behavior is well disclosed.

    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 relatively compact given the complexity of the tool, front-loading the core purpose and then providing targeted warnings and recommendations. It earns its length by covering the non-obvious update semantics. It is somewhat dense but not bloated, though it could be tightened by removing redundant phrasing about aiMetadata.

    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 enormous polymorphic schema with no output schema and no annotations, the description covers the most important cross-cutting behavioral rules (term preservation, aiMetadata scoping, recommended AI fields). It doesn't explicitly list all supported resources or describe return values, but the schema's conditional branches enumerate resources and output schema absence lowers the bar for return-value disclosure. For an agent, the critical update gotchas are covered.

    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 0%, so the description must compensate. It explains that payload shape varies by resource, which is essential, and details the important aiMetadata/terms semantics (full terms array, aiMetadata scoping). However, it doesn't describe the top-level 'id' or 'resource' parameter values beyond implication, and the resource list is only visible in the schema's conditionals. Still, the description adds high-value parameter context for the trickiest parts.

    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 states a specific verb ('Update') and resource ('entity by ID for the given resource'), and notes that payload shape depends on resource, which distinguishes it from list/get/create. It doesn't enumerate which resources are supported, but the schema's conditional branches make that clear. It is concise and informative.

    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 gives important update-specific guidance (send full terms array, include aiMetadata only for terms to update, recommended AI metadata fields) but doesn't explicitly contrast with sibling tools like create_term or update_term. It implies usage for term-managed resources and gives clear when-to-use details, but lacks direct alternative routing.

    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?

    With no annotations, the description carries the burden. The verb 'Get' conveys read-only, single-result behavior and implies no mutation. However, it does not disclose response shape, not-found/error handling, or any permission requirements.

    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?

    One short, front-loaded sentence communicates the core behavior with no filler. Every word contributes to agent understanding.

    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 two-parameter getter, the description plus schema gives a workable picture. But with no output schema, it omits return format and error behavior, and it does not clarify how the default output differs from the isShort form.

    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 both parameters at 100% coverage, so the baseline is 3. The description adds no semantic detail beyond the schema; it only restates the ID-based lookup concept.

    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 ('Get'), a specific resource ('priority'), and a scope qualifier ('single', 'by ID'). This clearly differentiates it from plural tools like get_priorities and list.

    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 phrase 'by ID' communicates the clear usage context: use this when you have a priority ID and need exactly one priority. It does not explicitly name alternatives or exclusions, so it stops short of a 5.

    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 full behavioral burden. It discloses authentication via API token and scopes the operation with 'Only the created term's AI metadata is affected,' which is valuable context. It also flags the mandatory AI-tracking fields. It does not describe broader side effects, but the mutating nature is clear from the tool name.

    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: it states the creation purpose first, then explains term relationships, then provides the critical AI-metadata instruction. Each sentence earns its place and nothing is redundant.

    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 rich input schema and the absence of an output schema, this description is nearly complete for invocation. It covers authentication, creation scoping, and AI-metadata requirements. It could be slightly more complete by mentioning likely response behavior, but that is not required for correct calling.

    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 description coverage is 100%, so the baseline is 3. The description adds real value by requiring aiMetadata with ai_generated=true, ai_model, and ai_generation_date for AI-generated terms—ai_generation_date is not listed as required by the schema's conditional logic. It also clarifies that only the created term's AI metadata is affected, which helps an agent reason about parameter scope.

    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 a specific action and resource: 'Create a new individual term' and emphasizes that terms can exist independently or be linked to term groups. This distinguishes create_term from the list, get, and update siblings. The purpose is unambiguous even without opening the schema.

    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?

    The description gives some context about term relationships and an important AI-metadata rule, but it never says when to choose this tool over alternatives like update_term or create. An agent must infer the usage boundary from the tool name alone.

    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

libs-mcp-service MCP server

Copy to your README.md:

Score Badge

libs-mcp-service 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/AdminRHS/libs-mcp-service'

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