登录
/
注册
首页
论坛
其它
首页
科技
业界
安全
程序
广播
Follow
关于
导读
排行榜
资讯
发帖说明
登录
/
注册
账号
自动登录
找回密码
密码
登录
立即注册
搜索
搜索
关闭
CSDN热搜
程序园
精品问答
技术交流
资源下载
本版
帖子
用户
软件
问答
教程
代码
写记录
写博客
小组
VIP申请
VIP网盘
网盘
联系我们
发帖说明
道具
勋章
任务
淘帖
动态
分享
留言板
导读
设置
我的收藏
退出
腾讯QQ
微信登录
返回列表
首页
›
业界区
›
业界
›
15分钟开发一个周报生成mcp,再也不用为写周报发愁了 ...
15分钟开发一个周报生成mcp,再也不用为写周报发愁了
[ 复制链接 ]
琉艺戕
11 小时前
程序园永久vip申请,500美金$,无限下载程序园所有程序/软件/数据/等
前言
相信大部分程序员都有这样的经历:周一到周五忙的天昏地暗但是到了周五下班前写周报时又回忆不起来具体干了点啥,像是做了很多事但好像又什么也没做。为了应对这种情况我会在每天完成一件任务或需求时将其记录下来,但是有时候忘记了就不得不再去需求池里翻了。
与其他职业不同,程序员的工作大部分还是和代码打交道的,我们一周内的具体工作内容都反映在项目中的git提交记录里,所以我们可以基于一周内的git提交记录按照周报模版promp生成周报,先给大家看下效果:
开发准备
安装python3.12和uv,使用Homebrew安装非常简单,执行两个命令即可:
安装python
brew install python@3.12
复制代码
安装uv
brew install uv
复制代码
新建项目 mcp-git-weekly-report并创建weekly_report.py文件
在weekly_report.py中安装fastmcp依赖并创建mcp
使用 uv pip install fastmcp 或 pip install fastmcp 安装依赖后创建mcp:
from fastmcp import FastMCP
#默认是Stdio协议,所以我们这个mcp服务器实际上是在本地运行的
mcp = FastMCP("weekly-report")
复制代码
这里简单的介绍下FastMCP框架,FastMCP 是一个 Python 框架,它极大地简化了 MCP 服务器的开发过程。 它的名字中的 “Fast” 就暗示了其目标:让开发者能够快速构建 MCP 服务器。
FastMCP 的核心特点和优势
:
极简的 API:使用装饰器(如 @mcp.tool)将普通的 Python 函数直接“变成” MCP 工具。你几乎不需要关心底层的协议细节。
基于 Pydantic:天然支持使用 Pydantic 模型来定义工具输入输出的数据类型,确保类型安全和清晰的文档。
资源管理:提供了简单的方式来管理资源(如数据库连接),可以在服务器启动时建立连接,并在结束时自动关闭。
内置常用功能:它预置了许多常见的 MCP 服务器功能,例如:
文件系统访问:让 AI 可以读写指定目录的文件。
SQL 数据库查询:让 AI 可以直接查询数据库。
代码执行:提供安全的代码执行环境。
HTTP 请求:简化了对外部 API 的调用。
复制代码
开发友好:支持简单的命令行指令来运行和测试服务器。
如果你想要对mcp服务做出更精准的控制和定制,可以使用官方提供的更底层的sdk,详情请见官方文档:https://github.com/modelcontextprotocol/python-sdk?tab=readme-ov-file#tools
开发
设计思路
我们使用git log命令获取提交记录,完整的指令格式形如:
git log --author=cube.li --since='3 days ago' --pretty='format:%ad|%s' --date=short
复制代码
为了能够成功执行这条指令,我们需要知道以下参数:
1、
项目地址
,由于周报mcp服务是运行在本地的,所以项目地址是一个本地绝对路径,项目地址要做成可配置的且能够灵活更改,所以我们将其作为mcp服务器的环境变量注入,并使用“|”作为分隔符以支持多项目
2、
git 用户名称
,用户名可通过git config user.name获取,不需要传入
3、
日期范围
,周报默认是当前周(7天内),但是我们也支持指定日期范围内的工作总结,例如:写3天内的工作总结,写15天内的工作总结,所以我们将其使用大模型识别作为参数传递到mcp服务器中
当我们具备以上信息后就能够成功获取到git提交记录并返回到AI应用了,但是只做到这一步还无法对周报内容、格式、字数进行限制,AI应用获取到提交记录后会自己发挥生成周报,当然我们可以在要求写周报时再输入特定的要求,但这样使用不够方便,所以我们要在mcp服务器中预制好周报模版prompt,返回AI应用时将 周报模版prompt+提交记录 一并返回给AI应用,这样既不用每次输入周报要求也能够生成符合要求的周报了。
周报模版prompt内容如下:
[code]你是一个专业的周报生成器,根据 Git 提交记录生成一份专业的工作周报。##
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
周报
15分钟
开发
一个
生成
相关帖子
国产化Excel开发组件Spire.XLS教程:以Python编程方式在Excel中高亮重复值
自动化检索增强生成(RAG)评估框架解析
一天一个Python库:Pandas - 拿捏数据的N种姿势
一个关于时间、节奏和前端动画的小实验:新年倒计时
国产化Excel开发组件Spire.XLS教程:使用Python批量删除Excel分页符
开源 NamBlog:一个博客外壳下的体验编译器
CodeSpirit-考试预生成方案(开源)
《大模型榜单周报(2026-01-04)》
FFmpeg开发笔记(九十七)国产的开源视频剪辑工具AndroidVideoEditor
GIS开发必知:WKT 与 EPSG 如何表达空间参考坐标系?附 GDAL 实现
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
照妖镜
相关推荐
业界
国产化Excel开发组件Spire.XLS教程:以Python编程方式在Excel中高亮重复值
1
385
嫁吱裨
2025-12-30
科技
自动化检索增强生成(RAG)评估框架解析
0
13
钿稳铆
2025-12-30
业界
一天一个Python库:Pandas - 拿捏数据的N种姿势
2
1015
吕清莹
2026-01-01
业界
一个关于时间、节奏和前端动画的小实验:新年倒计时
0
253
菅舛
2026-01-01
业界
国产化Excel开发组件Spire.XLS教程:使用Python批量删除Excel分页符
0
94
国瑾瑶
2026-01-04
业界
开源 NamBlog:一个博客外壳下的体验编译器
0
679
咸和璧
2026-01-05
业界
CodeSpirit-考试预生成方案(开源)
0
621
篁瞑普
2026-01-06
业界
《大模型榜单周报(2026-01-04)》
0
791
宗和玉
2026-01-08
业界
FFmpeg开发笔记(九十七)国产的开源视频剪辑工具AndroidVideoEditor
0
318
玻倌瞽
2026-01-10
业界
GIS开发必知:WKT 与 EPSG 如何表达空间参考坐标系?附 GDAL 实现
0
394
擘塞
2026-01-10
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
回复
本版积分规则
回帖并转播
回帖后跳转到最后一页
签约作者
程序园优秀签约作者
发帖
琉艺戕
11 小时前
关注
0
粉丝关注
20
主题发布
板块介绍填写区域,请于后台编辑
财富榜{圆}
3934307807
991124
anyue1937
9994891
kk14977
6845358
4
xiangqian
638210
5
韶又彤
9992
6
宋子
9978
7
闰咄阅
9993
8
刎唇
9993
9
俞瑛瑶
9998
10
蓬森莉
9946
查看更多
今日好文热榜
392
GIS开发必知:WKT 与 EPSG 如何表达空间参
681
C#LLM[0]:从零开始训练轻量级语言模型-Mini
178
2026 Claude 4.5 API 采购指南:官方直连还
429
淮南市英语雅思培训辅导机构推荐;2026权威
544
【节点】[Channel-Flip节点]原理解析与实际
318
FFmpeg开发笔记(九十七)国产的开源视频剪
420
AI Agent 的记忆系统:从必要性到工程实践
638
AI一周资讯 260105-260109
547
以专业立口碑 以诚信铸品牌 专访北京丰宝斋
615
《ESP32-S3使用指南—IDF版 V1.6》第六十一
269
棒棒糖图:当条形图遇上极简美学
221
基于python mne库构造自定义fNIRS数据并可
242
TMS FNC Core和 Maps的Edge WebView2安装问
887
15分钟开发一个周报生成mcp,再也不用为写
943
搭建你的个人图床
196
obet快速修改scn/resetlogs恢复数据库(缺少
249
Thread 类的基本用法、Java 线程的几种状态
995
MQTT状态管理Vuex全局状态管理
129
初识Tauri
926
源码独立部署成企业数据安全新选择 广州旗