Skip to main content
Glama

Task MCP Server

A simple task management Model Context Protocol (MCP) server for Claude Desktop.

Features

  • ✅ Add new tasks

  • 📋 List all tasks

  • ✓ Mark tasks as completed

  • 🗑️ Delete tasks

Related MCP server: Tasks MCP Server

Installation

The easiest way to use this server is directly from GitHub using uvx:

{
  "mcpServers": {
    "task-manager": {
      "command": "uvx",
      "args": [
        "task-mcp-server",
        "--from",
        "git+https://github.com/YOUR_USERNAME/task-mcp-server.git"
      ]
    }
  }
}

Local Installation

# Clone the repository
git clone https://github.com/YOUR_USERNAME/task-mcp-server.git
cd task-mcp-server

# Install with uv
uv pip install -e .

# Run the server
task-mcp-server

Usage with Claude Desktop

  1. Open Claude Desktop configuration file:

    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

    • Windows: %APPDATA%\Claude\claude_desktop_config.json

  2. Add the server configuration:

{
  "mcpServers": {
    "task-manager": {
      "command": "uvx",
      "args": [
        "task-mcp-server",
        "--from",
        "git+https://github.com/YOUR_USERNAME/task-mcp-server.git"
      ]
    }
  }
}
  1. Restart Claude Desktop

  2. Look for the 🔌 icon to confirm the server is connected

Available Tools

  • add_task: Add a new task with title and optional description

  • list_tasks: Display all tasks with their status

  • complete_task: Mark a task as completed

  • delete_task: Remove a task from the list

Example Usage

In Claude Desktop, try:

  • "Add a task to buy groceries"

  • "List all my tasks"

  • "Mark task 1 as completed"

  • "Delete task 2"

Development

# Install dependencies
uv pip install -e .

# Run locally
uv run task-mcp-server

# Test with MCP inspector
npx @modelcontextprotocol/inspector uv run task-mcp-server

License

MIT

Available Tools

4 tools
add_taskC

Add a new task to the task list

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYesTask title
descriptionNoTask description (optional)

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description must fully disclose behavioral traits. It states 'Add a new task,' implying a write operation, but lacks details on permissions, side effects (e.g., if it triggers notifications), error handling, or response format. For a mutation tool with zero annotation coverage, this is a significant gap, as it doesn't clarify what happens upon success or failure beyond the basic action.

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, efficient sentence that directly states the tool's purpose without unnecessary words. It's front-loaded with the core action and resource, making it easy to parse. There's no redundancy or fluff, and it fits well within the context of a simple task addition tool, earning a high score for brevity and 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 the complexity of a write operation with no annotations and no output schema, the description is incomplete. It doesn't explain what the tool returns upon success (e.g., a task ID or confirmation) or failure scenarios, nor does it cover behavioral aspects like idempotency or constraints. For a mutation tool, this leaves critical gaps in understanding how to invoke it effectively and interpret results.

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 description coverage is 100%, with clear descriptions for both parameters ('title' and 'description'), so the schema already documents their purposes. The description adds no additional meaning beyond implying these parameters are used for task creation. Since the schema does the heavy lifting, the baseline score of 3 is appropriate, as the description doesn't enhance parameter understanding beyond what's in the structured data.

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 action ('Add') and resource ('new task to the task list'), making the purpose immediately understandable. It distinguishes from siblings like 'complete_task' or 'delete_task' by specifying creation rather than modification or deletion. However, it doesn't explicitly differentiate from 'list_tasks' in terms of operation type, though the verb 'Add' implies a write operation versus a read operation.

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 provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, such as needing an existing task list, or compare it to sibling tools like 'list_tasks' for viewing tasks or 'complete_task' for updating them. There's no indication of when not to use it, such as for editing existing tasks, leaving the agent to infer usage from context alone.

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

complete_taskC

Mark a task as completed

ParametersJSON Schema
NameRequiredDescriptionDefault
task_idYesID of the task to complete

TDQS

C2.9/5.0
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. 'Mark a task as completed' implies a mutation operation, but it doesn't specify whether this requires permissions, if it's reversible, what happens to subtasks or dependencies, or what the response looks like. This leaves significant behavioral gaps for a mutation 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?

The description is a single, efficient sentence with zero wasted words. It's front-loaded with the core action and resource, making it immediately understandable without unnecessary elaboration.

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 mutation tool with no annotations and no output schema, the description is insufficient. It doesn't explain what 'completed' means in this context (e.g., status change, timestamp update), whether there are side effects, or what the agent should expect after invocation. Given the complexity of task completion operations, more context is needed.

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% (the single parameter 'task_id' is fully documented in the schema), so the baseline is 3. The description doesn't add any parameter-specific details beyond what the schema provides (e.g., format examples, validation rules), but it doesn't need to since the schema already covers it adequately.

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 verb ('Mark') and resource ('a task') with the specific action 'as completed'. It distinguishes from siblings like 'add_task' (create), 'delete_task' (remove), and 'list_tasks' (read), but doesn't explicitly mention these distinctions in the description itself.

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 provides no guidance on when to use this tool versus alternatives like 'delete_task' or how it relates to 'list_tasks'. It doesn't mention prerequisites (e.g., task must exist) or contextual constraints, leaving the agent to infer usage 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.

delete_taskC

Delete a task

ParametersJSON Schema
NameRequiredDescriptionDefault
task_idYesID of the task to delete

TDQS

C2.7/5.0
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 of behavioral disclosure. 'Delete a task' implies a destructive, irreversible mutation, but it doesn't specify permissions needed, whether deletion is permanent or soft, error conditions, or side effects. For a destructive tool with zero annotation coverage, this is a significant gap in safety and operational context.

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 at just three words, with zero wasted text. It's front-loaded with the core action and resource, making it easy to parse. For a simple tool, this brevity is appropriate and efficient.

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 destructive nature, lack of annotations, and no output schema, the description is incomplete. It doesn't address critical aspects like what happens after deletion (e.g., confirmation, error handling), return values, or how it interacts with sibling tools. For a mutation tool with no structured support, more context is needed to guide safe 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% description coverage, with the single parameter 'task_id' documented as 'ID of the task to delete'. The description adds no additional meaning beyond this, such as format examples or constraints. Since the schema does the heavy lifting, the baseline score of 3 is appropriate, but there's no extra value from the description.

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

Purpose3/5

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

The description 'Delete a task' clearly states the action (delete) and resource (task), which meets the basic requirement. However, it doesn't differentiate this tool from its siblings like 'complete_task' or 'add_task' beyond the obvious verb difference. It's specific enough to understand the core function but lacks nuance about what distinguishes deletion from other task modifications.

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 provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., task must exist), when deletion is appropriate versus completion, or any constraints. With siblings like 'complete_task' and 'list_tasks', the agent receives no help in choosing between these operations for task management.

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

list_tasksC

List all tasks

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

C2.7/5.0
Behavior1/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. 'List all tasks' gives minimal insight: it implies a read operation but doesn't cover critical aspects like pagination, sorting, rate limits, authentication needs, or what the output looks like (e.g., list format, fields included). For a tool with zero annotation coverage, this is insufficient.

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 'List all tasks'—a single, clear phrase that front-loads the core action. There's no wasted verbiage or redundancy, making it efficient and easy to parse for an AI agent.

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 lack of annotations and output schema, the description is incomplete for a read operation tool. It doesn't explain behavioral traits (e.g., how results are returned), usage context, or output details. While the zero parameters simplify things, the overall context requires more guidance for effective tool selection and invocation.

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 has 0 parameters with 100% coverage, meaning there are no parameters to document. The description doesn't need to add parameter semantics, so it meets the baseline of 4 for tools with no parameters, as it doesn't mislead or omit necessary details about inputs.

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

Purpose3/5

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

The description 'List all tasks' clearly states the verb ('List') and resource ('tasks'), making the basic purpose understandable. However, it lacks specificity about scope (e.g., filtered vs. all tasks) and doesn't distinguish itself from potential sibling tools like 'search_tasks' or 'get_task' (though none exist here). It's adequate but vague about what 'all' entails.

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 provides no guidance on when to use this tool versus alternatives. With siblings like 'add_task', 'complete_task', and 'delete_task', it's implied this is for reading tasks, but there's no explicit mention of use cases (e.g., 'use this to view tasks before modifying them') or exclusions (e.g., 'not for filtered searches'). This leaves the agent to infer usage from context alone.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 4 tool updatesv1.0.0
    • First observedadd_task
    • First observedcomplete_task
    • First observeddelete_task
    • First observedlist_tasks

TDQS

A3.5/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose: add_task creates new tasks, complete_task updates task status, delete_task removes tasks, and list_tasks retrieves tasks. There is no overlap or ambiguity between these four operations.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern with snake_case (add_task, complete_task, delete_task, list_tasks). The naming is predictable and uniform throughout the set.

Tool Count5/5

With 4 tools, this server is well-scoped for basic task management. Each tool earns its place by covering essential CRUD operations (create, read, update, delete) without unnecessary bloat.

Completeness5/5

The tool set provides complete CRUD/lifecycle coverage for task management: adding, listing, completing (updating status), and deleting tasks. There are no obvious gaps or dead ends for agents working with tasks.

Maintenance

ActivityInactive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    A Python server that enables Claude to interact with Todoist's task management API, allowing users to create, manage, and organize tasks directly through Claude's interface.
    17
    9
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    A task management MCP server that provides tools to create, list, complete, and delete tasks using pluggable storage backends. It enables users to interact with their task lists through natural language using MCP-compatible clients like Claude Desktop.
    -
  • F
    license
    B
    quality
    D
    maintenance
    A simple task management server that allows users to add, list, complete, and delete tasks directly within Claude Desktop. It provides a suite of tools for efficient personal task organization using the Model Context Protocol.
    4
    -

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/gvbigdata/MCP-Github-Deployment'

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