Task MCP Server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Task MCP Serveradd a task to prepare the quarterly report by Friday"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
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
From GitHub (Recommended)
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-serverUsage with Claude Desktop
Open Claude Desktop configuration file:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
Add the server configuration:
{
"mcpServers": {
"task-manager": {
"command": "uvx",
"args": [
"task-mcp-server",
"--from",
"git+https://github.com/YOUR_USERNAME/task-mcp-server.git"
]
}
}
}Restart Claude Desktop
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-serverLicense
MIT
Available Tools
4 toolsadd_taskC
Add a new task to the task list
| Name | Required | Description | Default |
|---|---|---|---|
| title | Yes | Task title | |
| description | No | Task description (optional) |
TDQS
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.
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.
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.
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.
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.
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
| Name | Required | Description | Default |
|---|---|---|---|
| task_id | Yes | ID of the task to complete |
TDQS
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.
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.
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.
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.
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.
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
| Name | Required | Description | Default |
|---|---|---|---|
| task_id | Yes | ID of the task to delete |
TDQS
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.
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.
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.
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.
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.
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
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
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.
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.
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.
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.
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.
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.
4 tool updates
v1.0.0- First observed
add_task - First observed
complete_task - First observed
delete_task - First observed
list_tasks
TDQS
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.
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.
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.
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
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
- mcpOAuthnet.todoist
Official Todoist MCP server for AI assistants to manage tasks, projects, and workflows.
Local-first task manager: create, edit, and complete tasks, projects, and checklists via MCP.
AI-native task management: list, create, update and archive tasks with rich context for AI agents
1
Related MCP Servers
- AlicenseAqualityDmaintenanceA 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.179MIT
- FlicenseNot gradedqualityDmaintenanceA 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.-
- FlicenseBqualityDmaintenanceA 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-
- AlicenseNot gradedqualityDmaintenanceMCP server that wraps a personal task manager REST API, enabling Claude to read and manage tasks via tools like get_tasks and add_task.16MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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