🏢使用MCP和NLP的企业费用自动化系统
  
一个专业的模型上下文协议(MCP)服务器,用于通过与Claude Desktop的自然语言对话来跟踪公司开支、员工、部门和绩效。
✨ 特性
- 12个MCP工具 用于完成CRUD操作
- 自然语言接口 通过克劳德桌面聊天机器人
- 员工管理 具有唯一的员工编号(EMP0001、EMP0002等)
- 费用跟踪 分类和部门分配
- 绩效管理 带有评级和评论
- AI驱动的分析 使用谷歌Gemini 2.0 Flash(最新2025型号)
- 重复检测 自动清理
- 安全删除操作 具有级联支持
🏗️ 系统架构
*该架构显示了从Claude Desktop通过MCP服务器到SQLite数据库的完整流程,并通过Google Gemini进行人工智能分析。*
📊 数据库模式
departments employees expenses performance
├── id ├── id ├── id ├── id
├── name ├── employee_number ├── date ├── employee_id
└── description ├── name ├── amount ├── rating
├── role ├── category ├── month
├── department_id ├── note └── comments
├── salary └── department_id
└── join_date当前数据:
- 4个部门(行政、人力资源、技术、业务流程外包)
- 18名员工拥有唯一的员工编号
- 34费用记录
- 20性能评级
🚀 快速开始
先决条件
- Python 3.11或更高版本
- UV包管理器或pip
- Claude桌面应用程序
- Google Gemini API密钥
安装
- 创建虚拟环境
cd "C:\Users\VH0000812\Desktop\Expense Tracker"
uv venv
.\.venv\Scripts\activate- 安装依赖项
uv pip install -r requirements.txt- 设置环境变量
创建 .env 文件:
GEMINI_API_KEY=your_google_gemini_api_key_here- 使用示例数据初始化数据库
python scripts\populate_data.py- 配置Claude桌面
添加到 %APPDATA%\Claude\claude_desktop_config.json:
{
"mcpServers": {
"company-expense-tracker": {
"command": "C:\\Users\\VH0000812\\Desktop\\Expense Tracker\\.venv\\Scripts\\python.exe",
"args": [
"C:\\Users\\VH0000812\\Desktop\\Expense Tracker\\main.py"
],
"env": {
"GEMINI_API_KEY": "your_api_key_here"
}
}
}
}- 重新启动克劳德桌面
🛠️ MCP工具(共12个)
➕ 创建操作(4)
| 工具 | 说明 | 示例 |
|---|---|---|
add_department | 创建新部门 | “创建营销部门” |
add_employee | 添加具有自动员工编号的员工 | “以10万美元的价格聘请约翰担任技术开发人员” |
add_expense | 按部门跟踪费用 | “将500美元的AWS费用添加到技术中” |
add_performance | 添加绩效评级 | “本月给爱丽丝5颗星” |
🗑️ 删除操作(4)
| 工具 | 说明 | 示例 |
|---|---|---|
delete_employee | 按编号/姓名删除员工 | “删除员工EMP0015” |
delete_expense | 删除费用记录 | “删除费用ID 45” |
delete_department | 删除部门(强制模式可用) | “强制删除所有数据的营销” |
delete_duplicate_employees | 自动检测并删除重复项 | “删除所有重复的员工” |
📋 查询操作(3)
| 工具 | 说明 | 示例 |
|---|---|---|
list_employees | 查看员工(全部或按部门) | “显示所有人力资源员工” |
list_expenses | 列出带过滤器的费用 | “显示过去30天的技术费用” |
get_department_summary | 综合部门统计 | “给我人力资源摘要” |
🤖 人工智能分析(1)
| 工具 | 说明 | 示例 |
|---|---|---|
analyze_company_with_ai | 通过Gemini获得人工智能驱动的见解 | “哪个部门花费最多?” |
💬 使用示例
员工管理
✅ "Hire Sarah as Marketing Manager in Admin at $75,000"
✅ "Show me all Tech department employees"
✅ "Delete employee EMP0017"
✅ "Find and remove all duplicate employees"费用跟踪
✅ "Add $1,500 office furniture expense to Admin"
✅ "Show all expenses from last month"
✅ "Delete expense ID 32"性能与分析
✅ "Give John Smith a 5-star rating with comment 'Excellent work'"
✅ "Show me complete HR department summary"
✅ "Which department has highest salary burden?"
✅ "Analyze expense trends across departments"📁 项目结构
Expense Tracker/
├── src/ # Source code modules
│ ├── operations/ # Business logic
│ ├── ai/ # AI integration
│ ├── tools/ # MCP tool definitions
│ ├── database.py # Database config
│ └── __init__.py
├── tests/ # All test files
│ ├── test_tools.py
│ ├── test_delete_functions.py
│ └── test_employee_numbers.py
├── scripts/ # Utility scripts
│ ├── populate_data.py # Initialize data
│ ├── migrate_employee_numbers.py
│ └── db_viewer.py # Interactive viewer
├── docs/ # Documentation
│ ├── QUICK_REFERENCE.md
│ ├── DELETE_TOOLS.md
│ └── COMPLETE_SUMMARY.md
├── config/ # Configuration
│ └── departments.json
├── data/ # Database
│ └── company.db
├── main.py # Entry point
├── requirements.txt
├── .env
├── .gitignore
└── README.md🧪 测试
运行测试:
python tests\test_tools.py
python tests\test_delete_functions.py
python tests\test_employee_numbers.py交互式数据库查看器:
python scripts\db_viewer.py🔧 配置
费用类别
- 基础设施、软件许可证、培训
- 办公用品、公用事业、工资
- 招聘、活动、设备、维护
员工编号格式
- 自动生成:
EMP0001,EMP0002等等。 - 每个员工的唯一标识符
- 用于快速查找和操作
🔒 安全功能
- ✅ 环境变量中的API键
- ✅ 数据库中的外键约束
- ✅ 所有操作的输入验证
- ✅ 安全删除模式(级联需要强制标记)
- ✅ 重复检测和预防
🆘 故障排除
Claude Desktop未显示工具
- 重新启动Claude Desktop(右键单击托盘图标→ Quit)
- 检查中的配置路径
claude_desktop_config.json - 验证数据库是否存在于
data/company.db
数据库错误
# Migrate employee numbers
python scripts\migrate_employee_numbers.py
# Reinitialize database
python scripts\populate_data.py导入错误
# Reinstall dependencies
uv pip install -r requirements.txt
# Check Python version (must be 3.11+)
python --version📚 文档
- 快速参考:
docs/QUICK_REFERENCE.md - 完整摘要:
docs/COMPLETE_SUMMARY.md - 删除工具指南:
docs/DELETE_TOOLS.md - 入门指南:
docs/GETTING_STARTED.md
🎯 路线图
- \[\]更新/编辑员工和费用的操作
- \[\]批量导入/导出功能
- \[\]生成月度和年度报告
- \[\]带有警报的预算跟踪
- \[\]按技能/角色搜索员工
- \[\]费用审批工作流程
- \[\]部门预算管理
- \[\]API端点版本
📈 统计
🏢 Departments: 4 (Admin, HR, Tech, BPO)
👥 Employees: 18 (with unique employee numbers)
💰 Total Salary: $1,288,000 annually
💳 Expense Records: 34 tracked
⭐ Performance: 20 ratings (avg 4.2/5.0)🤝 发展
添加新工具
- 在适当的模块中定义功能
- 在中添加MCP工具包装
main.py - 测试用
tests/test_*.py - 更新文档
代码的风格
- 遵循PEP 8指南
- 使用类型提示
- 将文档字符串添加到所有函数中
- 包括错误处理
📝 许可证
仅供内部使用-公司费用跟踪器
______________________________________________________________________
版本: 1.0.0\ 最后更新:2025年10月15日\ 状态: ✅ 生产就绪\ 由维护:公司开发团队
有关支持或问题,请参阅 docs/COMPLETE_SUMMARY.md
