Token导航 LogoToken导航TokenDH.com
Pk MCP Testing logo
数据服务stdio官方级别未说明来源级核验

Pk MCP Testing

MCP Server

prisma

一个基于PostgreSQL和Prisma ORM的停车管理系统,用于管理300个停车位,分布在3个楼层,支持多种车位类型和实时统计功能。

工具数

13

提示词数

0

GitHub Stars

0

资源数

0
JavaScript数据分析API集成

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

BlackWarTurtle

提供方

BlackWarTurtle

最后核验

2026/5/17 20:21

运行时

Node.js

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

npx prisma migrate reset

详细介绍

🅿️ 停车管理MCP服务器

一个全面的模型上下文协议(MCP)服务器,用于使用PostgreSQL和Prisma ORM管理3层楼300个停车位的停车设施。

📋 特性

  • 300个停车位 分布在3层楼(每层100个座位)
  • PostgreSQL数据库 使用Prisma ORM实现可靠的数据持久性
  • 多种斑点类型:标准、残疾人、电动和贵宾
  • 车辆管理:使用车主信息登记和跟踪车辆
  • 预订系统:保留和释放交易安全的停车位
  • 实时统计:按楼层和类型获取入住率和可用性
  • 12个MCP工具 用于综合停车操作

🏗️ 建筑

┌─────────────────────────────────────────┐
│         MCP Tools Layer                 │
│  (12 tools for parking operations)     │
└──────────────┬──────────────────────────┘
               │
┌──────────────▼──────────────────────────┐
│         Services Layer                  │
│  - ParkingService                       │
│  - ReservationService                   │
│  - VehicleService                       │
│  - InitializationService                │
└──────────────┬──────────────────────────┘
               │
┌──────────────▼──────────────────────────┐
│         Database Layer                  │
│  - Prisma Client                        │
│  - PostgreSQL Database                  │
└─────────────────────────────────────────┘

🚀 快速开始

先决条件

  • Node.js (v18或更高版本)
  • PostgreSQL (v14或更高版本)
  • npm纱线

安装

  1. 克隆存储库
   git clone https://github.com/BlackWarTurtle/pk-mcp-testing.git
   cd pk-mcp-testing
  1. 安装依赖项
   npm install
  1. 配置环境变量
   cp .env.example .env

编辑 .env 并更新数据库连接:

   DATABASE_URL="postgresql://username:password@localhost:5432/parking_db?schema=public"
  1. 设置数据库
   # Generate Prisma client
   npm run db:generate

   # Run database migrations
   npm run db:migrate
  1. 启动服务器
   npm start

🛠️ 可用的MCP工具

初始化工具

  1. initialize_parking -初始化3层楼的300个停车位
  2. get_database_status -检查数据库状态和统计数据
  3. reset_database -重置并重新初始化整个系统

停车位工具

  1. register_parking_spot -手动注册新的停车位
  2. get_available_spots -使用过滤器查询可用位置(楼层、类型)
  3. get_spot_status -获取特定地点的详细信息
  4. list_all_spots -列出所有带有可选过滤器的地点
  5. get_parking_statistics -获取全面的停车统计数据

预订工具

  1. reserve_spot -为车辆预留停车位
  2. release_spot -释放一个停车位并结束停车过程
  3. get_active_reservations -列出所有活动预订

车辆工具

  1. register_vehicle -在系统中注册新车
  2. get_vehicle_info -获取车辆详细信息和停车历史记录

📊 数据库模式

停车场

  • 货位号(例如“1-001”、“2-050”)
  • 楼层(1-3)
  • 状态(可用、占用、保留、维护)
  • 类型(标准、禁用、电动、VIP)

车辆

  • 车牌(唯一)
  • 所有者姓名和电话
  • 车辆类型

预订

  • 将车辆连接到停车位
  • 开始和结束时间
  • 状态(活动、已完成、已取消)

📝 使用示例

初始化停车系统

// Call the initialize_parking tool
// This creates 300 spots across 3 floors

预订停车位

// Call reserve_spot with:
{
  "spotNumber": "1-001",
  "licensePlate": "ABC123",
  "ownerName": "John Doe",
  "ownerPhone": "+34600111222",
  "vehicleType": "sedan"
}

获取2楼的可用位置

// Call get_available_spots with:
{
  "floor": 2
}

释放停车位

// Call release_spot with:
{
  "spotNumber": "1-001"
}

获取停车统计数据

// Call get_parking_statistics
// Returns overall stats, stats by floor, and stats by type

🗂️ 项目结构

pk-mcp-testing/
├── config/
│   ├── constants.js      # System constants and enums
│   └── database.js       # Prisma client singleton
├── prisma/
│   └── schema.prisma     # Database schema
├── services/
│   ├── parkingService.js       # Parking spot operations
│   ├── reservationService.js   # Reservation management
│   ├── vehicleService.js       # Vehicle tracking
│   └── initializationService.js # Database initialization
├── tools/
│   └── parkingTools.js   # MCP tool registrations
├── utils/
│   └── errorHandler.js   # Custom error classes
├── .env                  # Environment variables
├── .env.example          # Environment template
├── package.json          # Dependencies and scripts
├── server.js             # Main server entry point
└── README.md             # This file

🔧 发展

可用脚本

  • npm start -启动MCP服务器
  • npm run dev -从文件更改时自动重新加载开始
  • npm run db:generate -生成Prisma客户端
  • npm run db:migrate -运行数据库迁移
  • npm run db:push -将架构更改推送到数据库
  • npm run db:studio -打开Prisma Studio(数据库GUI)

数据库管理

在Prisma Studio中查看数据库:

npm run db:studio

重置数据库: 使用 reset_database MCP工具或手动:

npx prisma migrate reset

🎯 斑点分布

每层楼有100个座位,分布如下:

  • 5个景点 残疾人停车场(001-005)
  • 10个景点 电动汽车(006-015)
  • 5个景点 VIP(016-020)
  • 80个景点 标准停车场(021-100)

点编号格式: {Floor}-{Number} (例如,“1-001”、“2-050”、“3-100”)

🔒 错误处理

该系统包括全面的错误处理:

  • SpotNotFoundError -停车位不存在
  • SpotNotAvailableError -位置已被占用
  • VehicleNotFoundError -车辆未登记
  • InvalidFloorError -楼层号超出范围
  • DuplicateSpotError -点已存在
  • DuplicateVehicleError -车辆已登记

📄 许可证

ISC

👤 作者

黑龟

🤝 贡献

欢迎投稿、问题和功能请求!

⭐ 表示支持

给一个⭐️ 如果这个项目对你有帮助!

目录标签

目录标签

JavaScript数据分析API集成停车管理本地部署数据库实时统计车位预订车辆管理

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Node.js

来源包(packageName,安装包名)

prisma

工具数量(toolCount,工具数)

13

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP