todo-mcp-server


Nametodo-mcp-server JSON
Version 2.0.0 PyPI version JSON
download
home_pageNone
SummaryTodo MCP Server powered by FastMCP - 支持多用户的待办事项管理MCP服务器
upload_time2025-08-05 05:37:50
maintainerNone
docs_urlNone
authorNone
requires_python>=3.10
licenseMIT
keywords ai cursor mcp model-context-protocol todo
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Todo MCP Server

一个用于Cursor集成的Todo任务管理MCP服务器,支持多用户配置。

## ✨ 功能特性

- 🔧 **6个MCP工具**: 创建、查询、更新、删除、搜索任务
- 📊 **3个资源**: 任务统计、最近任务、逾期任务
- 💬 **2个提示**: 任务摘要、优化建议
- 🔐 **多种认证**: 支持Token和用户名密码认证
- 🌐 **多服务器**: 支持连接不同的Todo API服务器

## 📦 安装

通过PyPI安装:

```bash
pip install todo-mcp-server
```

或使用uvx(推荐):

```bash
uvx todo-mcp-server --help
```

## 🚀 使用方法

### Cursor配置

在 `~/.cursor/mcp.json` 中添加配置:

#### 使用API Token认证
```json
{
  "mcpServers": {
    "my-todo": {
      "command": "uvx",
      "args": [
        "todo-mcp-server",
        "--api-url=https://your-todo-server.com:3000",
        "--api-token=your-secret-token"
      ]
    }
  }
}
```

#### 使用用户名密码认证
```json
{
  "mcpServers": {
    "my-todo": {
      "command": "uvx", 
      "args": [
        "todo-mcp-server",
        "--api-url=https://your-todo-server.com:3000",
        "--username=your-username",
        "--password=your-password"
      ]
    }
  }
}
```

### 命令行参数

| 参数 | 必需 | 描述 | 示例 |
|------|------|------|------|
| `--api-url` | ✅ | Todo API服务器地址 | `https://api.example.com:3000` |
| `--api-token` | 🔄 | API访问令牌 | `abc123...` |
| `--username` | 🔄 | 用户名 | `john.doe` |
| `--password` | 🔄 | 密码 | `secret123` |
| `--timeout` | ❌ | 请求超时时间(默认30秒) | `60` |

注:`--api-token` 或 `--username + --password` 必须提供其中一种。

## 🛠️ 可用工具

在Cursor中,你可以使用以下命令:

- **创建任务**: "帮我创建一个任务:完成项目文档"
- **查看任务**: "显示我的待办任务列表"
- **更新任务**: "将任务1标记为已完成"
- **搜索任务**: "搜索包含'项目'的任务"
- **获取统计**: "显示我的任务统计信息"
- **查看逾期**: "显示所有逾期的任务"

## 🔧 开发

### 本地开发安装

```bash
git clone https://github.com/huangzhenxin/todo-mcp-server.git
cd todo-mcp-server
pip install -e .
```

### 测试

```bash
# 测试MCP服务器
todo-mcp-server --api-url=http://localhost:3000 --api-token=test
```

## 📄 许可证

MIT许可证 - 详见 LICENSE 文件。

## 🤝 贡献

欢迎提交Issue和Pull Request!

## 📞 支持

如有问题,请在GitHub上创建Issue:
https://github.com/huangzhenxin/todo-mcp-server/issues
            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "todo-mcp-server",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": null,
    "keywords": "ai, cursor, mcp, model-context-protocol, todo",
    "author": null,
    "author_email": "huangzhenxin <your-email@example.com>",
    "download_url": "https://files.pythonhosted.org/packages/1d/67/cb52e900d272e2d0ed238f53e817780545892fa87cc42798013b124bf459/todo_mcp_server-2.0.0.tar.gz",
    "platform": null,
    "description": "# Todo MCP Server\n\n\u4e00\u4e2a\u7528\u4e8eCursor\u96c6\u6210\u7684Todo\u4efb\u52a1\u7ba1\u7406MCP\u670d\u52a1\u5668\uff0c\u652f\u6301\u591a\u7528\u6237\u914d\u7f6e\u3002\n\n## \u2728 \u529f\u80fd\u7279\u6027\n\n- \ud83d\udd27 **6\u4e2aMCP\u5de5\u5177**: \u521b\u5efa\u3001\u67e5\u8be2\u3001\u66f4\u65b0\u3001\u5220\u9664\u3001\u641c\u7d22\u4efb\u52a1\n- \ud83d\udcca **3\u4e2a\u8d44\u6e90**: \u4efb\u52a1\u7edf\u8ba1\u3001\u6700\u8fd1\u4efb\u52a1\u3001\u903e\u671f\u4efb\u52a1\n- \ud83d\udcac **2\u4e2a\u63d0\u793a**: \u4efb\u52a1\u6458\u8981\u3001\u4f18\u5316\u5efa\u8bae\n- \ud83d\udd10 **\u591a\u79cd\u8ba4\u8bc1**: \u652f\u6301Token\u548c\u7528\u6237\u540d\u5bc6\u7801\u8ba4\u8bc1\n- \ud83c\udf10 **\u591a\u670d\u52a1\u5668**: \u652f\u6301\u8fde\u63a5\u4e0d\u540c\u7684Todo API\u670d\u52a1\u5668\n\n## \ud83d\udce6 \u5b89\u88c5\n\n\u901a\u8fc7PyPI\u5b89\u88c5\uff1a\n\n```bash\npip install todo-mcp-server\n```\n\n\u6216\u4f7f\u7528uvx\uff08\u63a8\u8350\uff09\uff1a\n\n```bash\nuvx todo-mcp-server --help\n```\n\n## \ud83d\ude80 \u4f7f\u7528\u65b9\u6cd5\n\n### Cursor\u914d\u7f6e\n\n\u5728 `~/.cursor/mcp.json` \u4e2d\u6dfb\u52a0\u914d\u7f6e\uff1a\n\n#### \u4f7f\u7528API Token\u8ba4\u8bc1\n```json\n{\n  \"mcpServers\": {\n    \"my-todo\": {\n      \"command\": \"uvx\",\n      \"args\": [\n        \"todo-mcp-server\",\n        \"--api-url=https://your-todo-server.com:3000\",\n        \"--api-token=your-secret-token\"\n      ]\n    }\n  }\n}\n```\n\n#### \u4f7f\u7528\u7528\u6237\u540d\u5bc6\u7801\u8ba4\u8bc1\n```json\n{\n  \"mcpServers\": {\n    \"my-todo\": {\n      \"command\": \"uvx\", \n      \"args\": [\n        \"todo-mcp-server\",\n        \"--api-url=https://your-todo-server.com:3000\",\n        \"--username=your-username\",\n        \"--password=your-password\"\n      ]\n    }\n  }\n}\n```\n\n### \u547d\u4ee4\u884c\u53c2\u6570\n\n| \u53c2\u6570 | \u5fc5\u9700 | \u63cf\u8ff0 | \u793a\u4f8b |\n|------|------|------|------|\n| `--api-url` | \u2705 | Todo API\u670d\u52a1\u5668\u5730\u5740 | `https://api.example.com:3000` |\n| `--api-token` | \ud83d\udd04 | API\u8bbf\u95ee\u4ee4\u724c | `abc123...` |\n| `--username` | \ud83d\udd04 | \u7528\u6237\u540d | `john.doe` |\n| `--password` | \ud83d\udd04 | \u5bc6\u7801 | `secret123` |\n| `--timeout` | \u274c | \u8bf7\u6c42\u8d85\u65f6\u65f6\u95f4\uff08\u9ed8\u8ba430\u79d2\uff09 | `60` |\n\n\u6ce8\uff1a`--api-token` \u6216 `--username + --password` \u5fc5\u987b\u63d0\u4f9b\u5176\u4e2d\u4e00\u79cd\u3002\n\n## \ud83d\udee0\ufe0f \u53ef\u7528\u5de5\u5177\n\n\u5728Cursor\u4e2d\uff0c\u4f60\u53ef\u4ee5\u4f7f\u7528\u4ee5\u4e0b\u547d\u4ee4\uff1a\n\n- **\u521b\u5efa\u4efb\u52a1**: \"\u5e2e\u6211\u521b\u5efa\u4e00\u4e2a\u4efb\u52a1\uff1a\u5b8c\u6210\u9879\u76ee\u6587\u6863\"\n- **\u67e5\u770b\u4efb\u52a1**: \"\u663e\u793a\u6211\u7684\u5f85\u529e\u4efb\u52a1\u5217\u8868\"\n- **\u66f4\u65b0\u4efb\u52a1**: \"\u5c06\u4efb\u52a11\u6807\u8bb0\u4e3a\u5df2\u5b8c\u6210\"\n- **\u641c\u7d22\u4efb\u52a1**: \"\u641c\u7d22\u5305\u542b'\u9879\u76ee'\u7684\u4efb\u52a1\"\n- **\u83b7\u53d6\u7edf\u8ba1**: \"\u663e\u793a\u6211\u7684\u4efb\u52a1\u7edf\u8ba1\u4fe1\u606f\"\n- **\u67e5\u770b\u903e\u671f**: \"\u663e\u793a\u6240\u6709\u903e\u671f\u7684\u4efb\u52a1\"\n\n## \ud83d\udd27 \u5f00\u53d1\n\n### \u672c\u5730\u5f00\u53d1\u5b89\u88c5\n\n```bash\ngit clone https://github.com/huangzhenxin/todo-mcp-server.git\ncd todo-mcp-server\npip install -e .\n```\n\n### \u6d4b\u8bd5\n\n```bash\n# \u6d4b\u8bd5MCP\u670d\u52a1\u5668\ntodo-mcp-server --api-url=http://localhost:3000 --api-token=test\n```\n\n## \ud83d\udcc4 \u8bb8\u53ef\u8bc1\n\nMIT\u8bb8\u53ef\u8bc1 - \u8be6\u89c1 LICENSE \u6587\u4ef6\u3002\n\n## \ud83e\udd1d \u8d21\u732e\n\n\u6b22\u8fce\u63d0\u4ea4Issue\u548cPull Request\uff01\n\n## \ud83d\udcde \u652f\u6301\n\n\u5982\u6709\u95ee\u9898\uff0c\u8bf7\u5728GitHub\u4e0a\u521b\u5efaIssue\uff1a\nhttps://github.com/huangzhenxin/todo-mcp-server/issues",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Todo MCP Server powered by FastMCP - \u652f\u6301\u591a\u7528\u6237\u7684\u5f85\u529e\u4e8b\u9879\u7ba1\u7406MCP\u670d\u52a1\u5668",
    "version": "2.0.0",
    "project_urls": {
        "Documentation": "https://github.com/huangzhenxin/todo-mcp-server#readme",
        "Homepage": "https://github.com/huangzhenxin/todo-mcp-server",
        "Issues": "https://github.com/huangzhenxin/todo-mcp-server/issues",
        "Repository": "https://github.com/huangzhenxin/todo-mcp-server"
    },
    "split_keywords": [
        "ai",
        " cursor",
        " mcp",
        " model-context-protocol",
        " todo"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "afc2c06c6b2228c4fe68aa7817fff0fac3a8707df1280e4bee947456d3c1e9ab",
                "md5": "96700ea145f466eb9c3b4567fea97815",
                "sha256": "6254f0f13bd83c80f55f054702bc1b2dc5a579d12b3fbfd557bec1f6e6d01b23"
            },
            "downloads": -1,
            "filename": "todo_mcp_server-2.0.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "96700ea145f466eb9c3b4567fea97815",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 18255,
            "upload_time": "2025-08-05T05:37:49",
            "upload_time_iso_8601": "2025-08-05T05:37:49.241614Z",
            "url": "https://files.pythonhosted.org/packages/af/c2/c06c6b2228c4fe68aa7817fff0fac3a8707df1280e4bee947456d3c1e9ab/todo_mcp_server-2.0.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "1d67cb52e900d272e2d0ed238f53e817780545892fa87cc42798013b124bf459",
                "md5": "f1afc40b167854db653d95189dd1599d",
                "sha256": "6ceafa4e21722f38190cfed08bde33ed4888b4702277080482b28f87bc96f451"
            },
            "downloads": -1,
            "filename": "todo_mcp_server-2.0.0.tar.gz",
            "has_sig": false,
            "md5_digest": "f1afc40b167854db653d95189dd1599d",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 14020,
            "upload_time": "2025-08-05T05:37:50",
            "upload_time_iso_8601": "2025-08-05T05:37:50.801977Z",
            "url": "https://files.pythonhosted.org/packages/1d/67/cb52e900d272e2d0ed238f53e817780545892fa87cc42798013b124bf459/todo_mcp_server-2.0.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-08-05 05:37:50",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "huangzhenxin",
    "github_project": "todo-mcp-server#readme",
    "github_not_found": true,
    "lcname": "todo-mcp-server"
}
        
Elapsed time: 1.99665s