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: listing meetings, retrieving a transcript, searching transcripts, finding speakers, and aggregating speaker contributions. There is no functional overlap or ambiguity between tools.

    Naming Consistency5/5

    All tool names follow the same verb_noun pattern in snake_case (e.g., list_meetings, get_meeting_transcript, search_transcripts), which makes the naming scheme predictable and consistent across the entire set.

    Tool Count5/5

    Five tools is a well-scoped count for a meeting transcription and speaker analytics server. Each tool covers a distinct functional area without redundancy or excessive granularity.

    Completeness5/5

    The server provides complete coverage of its core domain: browsing meetings, reading transcripts, full-text search, and per-speaker contribution analysis. There are no obvious gaps or dead ends in the workflow.

  • Average 4/5 across 5 of 5 tools scored.

    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
  • 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?

    No annotations are provided, so the description carries the burden. 'List' implies a read-only operation, and the listed fields outline the return content. However, it does not disclose ordering, what 'recent' means, or pagination behavior beyond what the schema's limit parameter implies.

    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?

    A single, front-loaded sentence with no extraneous words. It efficiently communicates the primary action and output fields.

    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 list tool with two well-documented parameters, the description is adequate but leaves gaps: no mention of sort order, default limit, or interpretation of 'recent'. Since there is no output schema, some additional context about the return structure or ordering would improve completeness.

    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 input schema covers both parameters (limit and since_date) with descriptions, default and max values, and format examples. The tool description adds no parameter information beyond the schema, so the baseline of 3 is appropriate for high schema coverage.

    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') and the resource ('meetings'), and specifies the returned fields (title, date, duration, participant names). This distinguishes it from sibling tools focused on transcripts, speakers, or contributions.

    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 use for retrieving meeting lists, but does not explicitly mention when to use this over alternatives or any exclusions. Sibling tools are clearly different in purpose, but no direct guidance is provided.

    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?

    There are no annotations, so the description carries the burden of behavioral disclosure. It indicates the output includes speaker labels and timestamps, which is useful. However, it does not explicitly state that the operation is read-only, nor does it describe error behavior (e.g., invalid meeting_id) or permission requirements. The 'get' verb implies read, but more explicit disclosure would be better.

    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 extraneous text. It front-loads the main action ('Get the full transcript') and specifies key output details, making it efficient and easy to parse.

    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 and no annotations, the description is fairly complete: it states what is returned (full transcript with speaker labels/timestamps) and the target resource. It does not explicitly contrast with overlapping sibling tools, but the schema provides context for finding IDs. Given the absence of an output schema, the description adequately communicates the return value, though it could mention failure cases or prerequisites.

    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 already covers 100% of the parameter (meeting_id) with a helpful description pointing to list_meetings. The tool description does not add any additional parameter semantics, 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.

    Purpose5/5

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

    The description clearly states the tool retrieves the full transcript for a specific meeting, with speaker labels and timestamps. This distinguishes it from siblings like search_transcripts (searching partial content) and get_speaker_contributions (per-speaker breakdown), making its purpose unambiguous.

    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 the tool is for fetching a complete transcript when a meeting_id is known, but it does not explicitly mention when to use it over alternatives. The schema hint ('use list_meetings to find IDs') provides some guidance, yet the description itself lacks direct comparison to siblings like search_transcripts.

    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 full burden. It discloses the key behavioral trait of returning only stable identities and that it returns 'candidates' (multiple possible), but it does not describe what happens on no match, whether results are ordered, or any other side effects. This is adequate but not rich.

    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 sentences long, front-loaded with the primary purpose, and every sentence adds value: the first gives the action and target, the second explains the output's intended use and a critical constraint. No wasted words.

    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 one-parameter lookup tool with no output schema, the description is sufficiently complete: it explains the purpose, the return value (candidate IDs), and the limitation to stable identities. It could mention possible multi-result behavior more explicitly, but 'candidates' already implies that. Overall, it covers the essential context.

    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% because the only parameter, 'name', is already described as 'Speaker name to search for (fuzzy match).' The tool description adds no further semantic value 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.

    Purpose5/5

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

    The description uses a specific verb and resource: 'Look up enrolled speakers by name.' It clearly distinguishes itself from sibling tools by stating it returns candidate IDs for use with get_speaker_contributions and emphasizes stable cross-meeting identities, which separates it from transient guest lookups.

    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 when to use the tool (when you need speaker IDs for get_speaker_contributions) and provides a clear exclusion criterion: only returns stable cross-meeting identities, not transient per-meeting guests. It does not explicitly mention alternatives like search_transcripts, but the context is strong enough.

    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 burden. It discloses the core behavior (full-text search, returns segments with meeting context and speaker attribution) but omits details like whether results are ordered, any performance implications, or auth requirements. It is adequate but not rich.

    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 the primary action and scope, then a brief statement of return payload. Zero waste and easy to scan.

    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?

    The description gives enough context for a straightforward search tool: what it searches, what it returns. With no output schema or annotations, it could elaborate on result ordering or pagination, but the schema's limit parameter and the sibling set make the intended use reasonably clear. It is complete enough for common usage.

    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 input schema has 100% coverage, so the description need not explain parameters in depth. It does mention the search behavior and return context, which aligns with the query parameter. The description adds no extra meaning beyond the schema, but the schema already documents the parameters well.

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

    Purpose5/5

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

    The description clearly states the tool's function: full-text search across all meeting transcripts. It uses the specific verb 'Search' and names the resource ('meeting transcripts'), which distinguishes it from siblings like get_meeting_transcript (which retrieves a specific transcript) and find_speakers (which searches for speakers).

    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 the use case: searching across all transcripts when you need to find matching segments with speaker context. It doesn't explicitly name alternatives or state when not to use it, but the scope ('across all meeting transcripts') is clear enough to differentiate it from sibling tools.

    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 the burden of behavioral disclosure. It adds meaningful scope ('across all meetings') and dependency (need to obtain speaker ID via find_speakers), which are behavioral traits beyond the name. While it doesn't mention return format or safety, the read-only nature is implied by 'Get' and the context is sufficient for a simple tool.

    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 concise sentences, front-loaded with the core purpose, followed by a clear prerequisite. Every word earns its place with no redundancy or superfluous detail.

    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 is sufficiently complete. It explains what is returned ('everything... said'), how to get the required input, and the scope. Could mention output ordering or pagination, but these are not critical for a straightforward getter.

    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%, with the parameter description already stating to use find_speakers. The tool description repeats this guidance, reinforcing it but adding no new semantic information beyond what the schema provides. Baseline 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 retrieves all contributions from a specific enrolled speaker across all meetings. It uses a specific verb ('Get') and resource ('everything a specific enrolled speaker said'), and distinguishes itself from siblings like get_meeting_transcript by emphasizing 'across all meetings.'

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

    Usage Guidelines5/5

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

    The description explicitly instructs to 'Use find_speakers first to get the speaker ID,' providing a clear prerequisite and directing the user to the appropriate sister tool. It also implies when to use this tool instead of alternatives (when needing cross-meeting speaker aggregation).

    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

migas-mcp MCP server

Copy to your README.md:

Score Badge

migas-mcp MCP server

Copy to your README.md:

Latest Blog Posts

MCP directory API

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

curl -X GET 'https://glama.ai/api/mcp/v1/servers/blackpilledsoftware-prog/migas-mcp'

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