TimeLiner MCP Server
An MCP server for controlling the TimeLiner project management system, enabling AI clients to manage projects, tasks, members, and more via natural language.
README
TimeLiner MCP Server
TimeLiner 项目管理系统的 MCP (Model Context Protocol) Server,让 AI 客户端通过 MCP 协议操控项目管理。
前置条件
- Python 3.11+
- TimeLiner 后端服务运行在
localhost:8080 - 安装依赖:
cd TimeLiner/mcp_server
pip install -r requirements.txt
启动后端
cd TimeLiner/backend
uvicorn main:app --reload --port 8080
客户端接入
stdio 模式(推荐)
适用于 Claude Desktop、Cursor、Kiro 等本地 AI 客户端。
在客户端 MCP 配置文件中添加(通过环境变量传入用户名密码,连接时自动登录):
{
"mcpServers": {
"timeliner": {
"command": "python",
"args": ["-m", "mcp_server.server"],
"cwd": "D:/demo/TimeLiner",
"env": {
"TIMELINER_BACKEND_URL": "http://localhost:8080/api",
"TIMELINER_USERNAME": "li.ming.pm",
"TIMELINER_PASSWORD": "Demo@12345"
}
}
}
}
配置文件位置:
| 客户端 | 路径 |
|---|---|
| Claude Desktop | %APPDATA%/Claude/claude_desktop_config.json |
| Kiro | .kiro/settings/mcp.json |
| Cursor | .cursor/mcp.json |
SSE 模式(远程/多客户端)
cd TimeLiner
TIMELINER_USERNAME=li.ming.pm TIMELINER_PASSWORD=Demo@12345 \
python -m mcp_server.server --transport sse --port 8888
客户端配置:
{
"mcpServers": {
"timeliner": {
"url": "http://localhost:8888/sse"
}
}
}
鉴权说明
- 配置
TIMELINER_USERNAME+TIMELINER_PASSWORD环境变量后,MCP Server 启动时自动登录,无需手动调用login - 如果未配置环境变量,可以通过
logintool 手动登录 - 已登录状态下调用
login可切换用户身份 - 调用
whoami可查看当前登录状态
环境变量
| 变量 | 默认值 | 说明 |
|---|---|---|
TIMELINER_BACKEND_URL |
http://localhost:8080/api |
后端 API 地址 |
TIMELINER_REQUEST_TIMEOUT |
30 |
HTTP 请求超时(秒) |
TIMELINER_USERNAME |
(空) | 自动登录用户名 |
TIMELINER_PASSWORD |
(空) | 自动登录密码 |
Tool 清单(47 个)
认证(3)
| Tool | 说明 | 角色 |
|---|---|---|
login |
手动登录 / 切换用户(通常不需要) | Public |
get_current_user |
获取当前用户信息 | Both |
whoami |
查看当前登录状态 | Public |
项目管理(6)
| Tool | 说明 | 角色 |
|---|---|---|
create_project |
创建项目 | Admin |
list_projects |
列出项目 | Both |
get_project |
项目详情 | Both |
update_project |
更新项目 | Admin |
delete_project |
删除项目 | Admin |
get_project_dashboard |
时间线仪表盘 | Both |
任务管理(8)
| Tool | 说明 | 角色 |
|---|---|---|
create_task |
创建任务 | Admin |
list_tasks |
列出任务 | Both |
get_task |
任务详情 | Both |
update_task |
更新任务 | Admin |
delete_task |
删除任务 | Admin |
add_task_dependency |
添加依赖 | Admin |
ai_split_task |
AI 拆分任务 | Admin |
confirm_and_distribute_tasks |
批量分发任务 | Admin |
成员管理(6)
| Tool | 说明 | 角色 |
|---|---|---|
add_member |
添加成员 | Admin |
list_members |
列出成员 | Both |
get_member |
成员详情 | Both |
update_member |
更新成员 | Admin |
remove_member |
移除成员 | Admin |
list_member_skills |
查看技能 | Both |
技能管理(2)
| Tool | 说明 | 角色 |
|---|---|---|
add_member_skill |
添加技能 | Admin |
remove_member_skill |
移除技能 | Admin |
里程碑(5)
| Tool | 说明 | 角色 |
|---|---|---|
create_milestone |
创建里程碑 | Admin |
list_milestones |
列出里程碑 | Both |
get_milestone |
里程碑详情 | Both |
update_milestone |
更新里程碑 | Admin |
delete_milestone |
删除里程碑 | Admin |
邀请管理(4)
| Tool | 说明 | 角色 |
|---|---|---|
create_invitation |
创建邀请码 | Admin |
list_invitations |
查看邀请列表 | Admin |
revoke_invitation |
撤销邀请 | Admin |
accept_invitation |
接受邀请 | User |
调度管理(5)
| Tool | 说明 | 角色 |
|---|---|---|
list_schedule_requests |
查看调度申请 | Admin |
approve_schedule_request |
批准申请 | Admin |
reject_schedule_request |
拒绝申请 | Admin |
request_schedule_change |
发起调度申请 | User |
get_my_schedule_requests |
查看我的申请 | User |
决策(2)
| Tool | 说明 | 角色 |
|---|---|---|
validate_decision |
验证决策 | Admin |
apply_decision |
应用决策 | Admin |
用户任务(4)
| Tool | 说明 | 角色 |
|---|---|---|
get_my_tasks |
我的任务列表 | User |
get_today_goals |
今日目标 | User |
submit_task_completion |
提交完成 | User |
上下文查询(3)
| Tool | 说明 | 角色 |
|---|---|---|
get_project_context |
项目 Markdown 上下文 | Both |
get_task_context |
任务 Markdown 上下文 | Both |
get_project_activities |
项目活动日志 | Both |
典型使用流程
Admin:AI 辅助任务拆分
连接时已自动登录(env 配置 li.ming.pm / Demo@12345),直接使用:
1. create_project("用户认证模块", "2026-04-01T00:00:00Z", "2026-05-01T00:00:00Z")
2. add_member(project_id, "张三")
3. ai_split_task(project_id, "实现登录、注册、密码重置、OAuth2")
→ 返回 prompt,客户端 LLM 生成子任务方案
4. confirm_and_distribute_tasks(project_id, task_plan)
→ 批量创建任务、设依赖、验证、应用决策
User:日常任务管理
连接时已自动登录(env 配置 chen.yan.dev / Demo@12345),直接使用:
1. get_today_goals(project_id)
→ 按优先级 + 关键路径排序的待办任务
2. update_task(task_id, progress=0.6, status="InProgress")
3. submit_task_completion(task_id)
运行测试
cd TimeLiner
python -m pytest mcp_server/tests/ -v
架构说明
MCP Client (Claude/Cursor/Kiro)
↕ MCP 协议 (stdio/SSE)
MCP Server (FastMCP)
↕ HTTP (httpx)
TimeLiner Backend (FastAPI :8080)
↕ SQLAlchemy
PostgreSQL / SQLite
MCP Server 不直接访问数据库,所有操作通过后端 HTTP API 完成,保持架构分层。
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。