Skip to main content
Glama
aroy314

mcp-teamline

by aroy314

Server Quality Checklist

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

  • Disambiguation4/5

    Tasks and webhooks are clearly separated by the teamline_ prefix and verb. Within tasks, list/create/complete are distinct operations, though list could be confused with create if an agent overlooks the verb. Webhooks create/remove are clearly distinct.

    Naming Consistency4/5

    All tools follow a consistent teamline_<domain>_<verb> pattern (auth_test, tasks_list, tasks_create, tasks_complete, webhooks_create, webhooks_remove). The only minor deviation is 'auth_test' using a noun-verb inversion (test as verb) rather than 'test_auth', but it's readable and consistent in style.

    Tool Count5/5

    Six tools is well-scoped for a task management integration. Each tool covers a distinct operation needed for basic task lifecycle and webhook management. No redundant tools, and the count feels appropriate (within the 3-15 ideal range).

    Completeness3/5

    The tools cover task list, create, and complete, but lack update (e.g., edit task name, due date, assignee) and delete operations. Webhooks support create/remove but no list. A user cannot edit an existing task without recreating it, which is a notable gap in a task management API.

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

    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?

    Annotations already indicate readOnlyHint=false and destructiveHint=false, so the description doesn't need to repeat those. It adds the token source (TEAMLINE_API_KEY) and the constraint that channel is required when list is set, but does not disclose return values, error behavior, or side effects beyond creation. 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.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is two sentences, front-loaded with the purpose and required field, then a compact list of optional parameters. It is efficiently structured and free of fluff, though some information duplicates the schema.

    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 create operation with 8 parameters and no output schema, the description covers required/optional fields and key constraints. However, it does not describe what the API returns (e.g., a task object with an id) or error cases, which are important for agents to confirm success. This is a notable gap for 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?

    Schema description coverage is 100%, so all parameters are already documented. The description restates parameter types and constraints but adds little beyond the schema, such as the token source and the channel-required-if-list rule. Since the schema carries the main semantic load, this is a baseline 3.

    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 'Create a Teamline task via tasks.create', clearly identifying the verb and resource. It distinguishes this tool from siblings like list and complete by focusing on creation, so an agent can select it appropriately.

    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 creating tasks but does not explicitly contrast it with alternatives like teamline_tasks_list or teamline_tasks_complete. It provides no 'when not to use' guidance or references to sibling tools, so usage context is only 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?

    Annotations already declare readOnlyHint=false, idempotentHint=false, and destructiveHint=false, so the agent knows this is a mutating but non-destructive operation. The description adds the auth detail (token from TEAMLINE_API_KEY) and the API method name, but does not disclose any side effects, error behavior, or consequences of completion beyond the obvious state change. It neither contradicts annotations nor adds significant behavioral context.

    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 brief and front-loaded with the action ('Mark a Teamline task complete'). The subsequent sentences about the API method and token source are useful but could arguably be merged or trimmed without losing clarity. It is concise overall, with no redundant filler, though the token sentence is somewhat tangential.

    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 tool with no output schema, the description covers the essential purpose, the required parameter, and an auth note. It does not specify the return value or any side effects, but given the annotations carry the safety profile and the tool's simplicity, this is mostly complete. The absence of output schema information is acceptable since the tool likely returns a standard success/failure response that an agent can infer.

    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% and the single parameter 'task' already has a clear description ('Id of the task to complete'). The description repeats this by saying 'Requires task (id string)', which adds no additional meaning. Per the rubric, with high schema coverage the baseline is 3, and the description does not enhance the parameter's semantics.

    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 and resource: 'Mark a Teamline task complete'. This unambiguously distinguishes it from siblings like teamline_tasks_list or teamline_tasks_create. The action is clear and the resource is named, so an agent knows exactly what this tool does without needing to inspect 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 Guidelines3/5

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

    The description implies usage by stating the tool completes a task, but it does not explicitly say when to use it versus alternatives, nor does it mention any conditions for exclusion. There is no mention of prerequisites like an existing task or case where this should not be used. It is adequate for a tool whose purpose is inherently straightforward, but explicit guidance is missing.

    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?

    Annotations already mark this as destructive (destructiveHint: true) and not read-only, so the safety profile is covered. The description adds valuable context by stating that the token is read only from the TEAMLINE_API_KEY environment variable, which is not present in annotations. It also names the API method, providing a behavioral detail beyond the structured fields.

    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 that immediately state the action and the critical auth requirement. Every word earns its place, with no extraneous information or filler.

    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 single-parameter deletion tool with destructive annotations, the description adequately covers the purpose, required input, and auth mechanism. It does not mention return values, but there is no output schema specified, and for a removal operation this is minor. The only slight gap is the lack of clarity on whether the removal is permanent, but the destructiveHint annotation implicitly covers this.

    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 fully documents the 'hook' parameter with a description ('Id of the hook to remove'), so schema coverage is 100%. The description repeats this by saying 'Requires hook (id string)' but adds no new semantic detail. Baseline 3 is appropriate as the schema already handles parameter meaning.

    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 verb 'Remove' and the resource 'Teamline webhook', and specifies the underlying method 'webhooks.remove'. This distinguishes it from the sibling 'teamline_webhooks_create' and other task-related tools, leaving no ambiguity about what the tool does.

    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 indicates the action and the required parameter but lacks any explicit guidance on when to use this tool versus alternatives. There is no mention of scenarios like deleting obsolete webhooks or when not to use it, though the auth prerequisite (TEAMLINE_API_KEY) is noted. The usage context is implied by the name and action rather than stated.

    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?

    Annotations already declare read-only and non-destructive. The description adds behavioral specifics: defaulting to the current user when channel/user omitted, the requirement that channel be present when list is set, and the token source (TEAMLINE_API_KEY). These go beyond the annotation hints and clarify default behavior not obvious from 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.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    Single dense sentence front-loaded with the action ('List Teamline tasks via tasks.list') then packs filter definitions. It is efficient but slightly run-on; grouping could improve readability. Still, every word earns its place.

    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?

    With rich annotations (readOnly, non-destructive, idempotent) and a full parameter schema, the description covers the key default behavior (defaults to self), required dependencies, and token source. No output schema exists, so return format isn't expected. Minor gaps like pagination details are not critical for this operation.

    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%, but the description adds valuable format details (e.g., '#name' for channel, '~name' for list, '@name/email/slackId' for user) and the dependency that channel is required if list is used. This enriches the schema without redundancy, so above baseline.

    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 begins with a clear verb+object:

    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?

    No explicit guidance on when to use this tool versus siblings like teamline_tasks_create or teamline_tasks_complete. The purpose implies listing, but there is no direct comparison to alternatives or conditions that would favor this tool. However, the distinct names make inference easy.

    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?

    Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false, covering the safety profile. The description adds value by specifying the return shape (user id, name, email) and that the token is read from the environment, providing context beyond the annotations without contradiction.

    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 concise sentences with no redundant wording. It front-loads the core action and return information immediately, then adds the environment token detail. Every word earns its place.

    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 simple tool with no parameters and no output schema, this description is fully self-contained. It explains the purpose, return fields, and the environment dependency. Combined with annotations covering read-only and idempotent behavior, an agent has everything needed to call it correctly.

    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?

    There are zero parameters, so the baseline is 4. The description explicitly states 'Takes no arguments' and clarifies that the API token is read from the environment, effectively documenting the implicit input channel beyond the empty schema.

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

    Purpose5/5

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

    The description clearly states the verb 'Verify' against a specific resource 'Teamline auth.test' and explicitly lists the return fields (id, name, email). It is distinct from sibling tools that handle tasks and webhooks, 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 usage context by stating it verifies the API key and reads from environment, but it does not explicitly state when to use this tool versus alternatives or provide exclusions. The context is clear enough but lacks explicit routing guidance.

    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?

    Beyond the annotations, it discloses a key architectural caveat: the server registers the URL, but the MCP stdio process will not receive Teamline POSTs. It also states the API token is read only from TEAMLINE_API_KEY and that only tasks_completed is official, all useful behavioral context.

    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 short sentences, all substantive, with the core registration action and event constraint front-loaded. The required/optional note slightly repeats schema information, but the architecture and auth notes earn their place.

    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 three-parameter creation tool with annotations and full schema coverage, the description supplies the necessary auth source, event restriction, and server-side behavior. It omits return/error details, but no output schema exists and the missing info is not essential for invoking the tool.

    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 the schema already documents all three parameters. The description adds value beyond it by explicitly marking url required and name optional and by constraining event to tasks_completed, which is the main semantic guidance an agent needs.

    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 opens with a concrete verb-resource pair ('Register a user-provided URL via webhooks.create') and immediately narrows scope to the only supported event, tasks_completed. This is enough to distinguish it from the remove sibling and from the task tools.

    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?

    It gives clear context for the create action and the supported event, so an agent can infer when to use it. However, it does not state when not to use it or point to webhooks_remove or another alternative, leaving routing to inference.

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

GitHub Badge

Glama performs regular codebase and documentation scans to:

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

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

Card Badge

mcp-teamline MCP server

Copy to your README.md:

Score Badge

mcp-teamline 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/aroy314/mcp-teamline'

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