MCP服务器-财务
用于个人财务管理的MCP服务器(模型上下文协议)。
技术
- PHP 8.1+
- 数据库:MySQL或SQLite
- 协议:MCP(模型上下文协议)支持HTTP
书店
| 包 | 版本 | 描述 |
|---|---|---|
mcp/sdk | ^0.4.0 | MCP for PHP官方SDK |
illuminate/database | ^11.0 | 弹性ORM(Laravel) |
nyholm/psr7 | ^1.8 | 实施PSR-7 |
nyholm/psr7-server | ^1.1 | PSR-7服务器适配器 |
要求
- PHP 8.1以上
- 作曲家
- MySQL 5.7+o SQLite 3
- PHP扩展:
pdo,json,mbstring
安装
# Instalar dependencias
composer install配置
新建_文档 .env 使用数据库凭据:
DB_HOST=localhost
DB_NAME=finanzas
DB_USER=root
DB_PASSWORD=tu_password
DB_PORT=3306
DB_DRIVER=mysql
DB_CHARSET=utf8对于 SQLite,请使用:
DB_DRIVER=sqlite
DB_DATABASE=finanzas.db执行
服务器开发(PHP内置)
php -S 127.0.0.1:8080 -t publicUsando Composer脚本
composer run server阿帕奇
- 创建虚拟主机:
ServerName finanzas-mcp.local
DocumentRoot /path/to/finanzas-mcp/public
AllowOverride All
Require all granted
Options -Indexes +FollowSymLinks
# Rewrites para eliminar index.php
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php [QSA,L]
# Configuración de logs
ErrorLog ${APACHE_LOG_DIR}/finanzas-mcp-error.log
CustomLog ${APACHE_LOG_DIR}/finanzas-mcp-access.log combined
- 启用站点并重新启动Apache:
# En Debian/Ubuntu
sudo a2ensite finanzas-mcp.conf
sudo a2enmod rewrite
sudo systemctl restart apache2
# En Windows (XAMPP)
# Copiar el archivo de configuración a C:\xampp\apache\conf\extra\
# Editar C:\xampp\apache\conf\httpd.conf para incluir el archivo- 添加到主机文件:
# Windows
127.0.0.1 finanzas-mcp.local
# Linux/Mac
sudo bash -c 'echo "127.0.0.1 finanzas-mcp.local" >> /etc/hosts'可用的MCP工具
get_outflow_types
获取活动的退出类型。
get_类别
获取按出口类型筛选的类别。
获取可用存款
他用他的可用资产负债表(收入-支出)获得所有存款。
流出资金
创建新的出口记录。
参数:
idOutflowType(必需):出口类型IDidCategory(必需):类别IDidPorcent(必需):存款IDamount(必需):要提取的金额(>0)setDate(可选):出发日期isInBudget(可选):如果在预算中(默认值:true)description(可选):附加说明idUser(可选):用户ID(默认值:1)dryRun(可选):在不持久的情况下验证(默认值:false)
有用的命令
# Instalar dependencias
composer install
# Actualizar dependencias
composer update
# Ver dependencias instaladas
composer show
# Ver autoload
composer dump-autoload
# Ver configuración
php -i | grep -i pdo项目结构
finanzas-mcp/
├── public/
│ └── index.php # Punto de entrada
├── src/
│ ├── Database/
│ │ └── Connection.php # Conexión a BD
│ └── MCP/
│ ├── Server.php # Servidor MCP
│ └── Tools/
│ ├── BaseTool.php
│ └── EgressMoney/
│ ├── GetOutflowTypesTool.php
│ ├── GetCategoriesTool.php
│ ├── GetAvailableByDepositsTool.php
│ └── OutflowMoneyTool.php
├── logs/ # Archivos de log
├── sessions/ # Sesiones MCP
├── composer.json
├── .env
└── finanzas.db # SQLite (si se usa)故障排除
MySQL连接错误
验证MySQL是否正在运行,以及 .env 是正确的。
会话错误
确保目录 sessions/ 有写作许可证。
日志删除错误
确保目录 logs/ 有写作许可证。
