Token导航 LogoToken导航TokenDH.com
AMC MCP Server logo
金融服务stdio官方级别未说明来源级核验

AMC MCP Server

MCP Server

AMC MCP Server是一个为AMC影院提供全面电影预订体验的模型上下文协议服务器,支持通过API接口帮助用户发现电影、查找放映时间、预订座位和处理支付。

工具数

6

提示词数

0

GitHub Stars

0

资源数

0
PythonClaude金融数据Claude DesktopClaude

安装说明

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

作者 / 组织

hi5d

提供方

hi5d

最后核验

2026/5/17 20:22

快速接入

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

命令预览

pip install -r requirements.txt

详细介绍

AMC MCP服务器🎬

一个模型上下文协议(MCP)服务器,为AMC影院提供全面的电影预订体验。该服务器使对话式人工智能助手能够通过简单的API界面帮助用户发现电影、找到放映时间、预订座位和处理付款。

特性✨

  • 电影探索:浏览当前播放的电影并获得个性化推荐
  • 放映时间查询:按地点、日期和电影查找可用放映时间
  • 座位选择:查看交互式座位图并查看可用性
  • 预定管理:通过实时可用性检查预订座位
  • 支付处理:处理带有确认收据的模拟付款交易
  • 多地点支持:在多个AMC影院位置进行搜索

快速开始🚀

先决条件

  • Python 3.8+
  • Docker(可选,用于容器化部署)

安装

选项1:本地安装

  1. 克隆存储库:
git clone 
cd amc-mcp
  1. 安装依赖项:
pip install -r requirements.txt
  1. 安装软件包:
pip install -e .
  1. 运行服务器:
python -m amc_mcp.fastmcp_server

选项2:Docker部署

  1. 使用Docker Compose构建和运行:
docker-compose up --build
  1. 或者手动构建并运行:
docker build -t amc-mcp .
docker run -it amc-mcp

MCP工具参考🛠️

1.get_now_showing

返回当前在给定位置播放的电影列表。

输入:

{
  "location": "Boston, MA"
}

输出:

{
  "location": "Boston, MA",
  "movies": [
    {
      "movie_id": "mv001",
      "title": "Dune: Part Two",
      "rating": "PG-13",
      "duration": 166,
      "genre": "Sci-Fi/Action",
      "description": "Paul Atreides unites with Chani..."
    }
  ]
}

2.获得表彰

根据心情、类型或喜好推荐电影。

输入:

{
  "genre": "action",
  "mood": "exciting"
}

输出:

{
  "criteria": {"genre": "action", "mood": "exciting"},
  "recommendations": [...]
}

3.获取显示时间

获取特定电影和地点的可用放映时间。

输入:

{
  "movie_id": "mv001",
  "date": "2025-10-28",
  "location": "Boston, MA"
}

输出:

{
  "movie": {"id": "mv001", "title": "Dune: Part Two"},
  "date": "2025-10-28",
  "location": "Boston, MA",
  "showtimes": [
    {
      "showtime_id": "st001",
      "theater_name": "AMC Boston Common 19",
      "theater_address": "175 Tremont Street",
      "time": "14:00",
      "format": "IMAX",
      "price": 18.50
    }
  ]
}

4.get_seat_map

显示特定放映时间的可用和预订座位。

输入:

{
  "showtime_id": "st001"
}

输出:

{
  "showtime_id": "st001",
  "movie": "Dune: Part Two",
  "theater": "AMC Boston Common 19",
  "date": "2025-10-28",
  "time": "14:00",
  "seat_map": [
    {
      "seat_number": "A5",
      "row": "A",
      "column": 5,
      "is_available": true,
      "price_tier": "Standard",
      "price": 18.50
    }
  ]
}

5.预订

为用户保留选定的座位。

输入:

{
  "showtime_id": "st001",
  "seats": ["A5", "A6"],
  "user_id": "user123"
}

输出:

{
  "booking_id": "booking-uuid",
  "status": "pending",
  "movie": "Dune: Part Two",
  "theater": "AMC Boston Common 19",
  "date": "2025-10-28",
  "time": "14:00",
  "seats": ["A5", "A6"],
  "total_price": 37.00
}

6.流程_付款

处理模拟支付交易。

输入:

{
  "booking_id": "booking-uuid",
  "payment_method": "card",
  "amount": 37.00
}

输出:

{
  "payment_id": "payment-uuid",
  "payment_status": "success",
  "booking_id": "booking-uuid",
  "receipt_url": "https://amc.com/receipts/payment-uuid",
  "confirmation": {
    "movie": "Dune: Part Two",
    "theater": "AMC Boston Common 19",
    "date": "2025-10-28",
    "time": "14:00",
    "seats": ["A5", "A6"],
    "total_paid": 37.00
  }
}

对话流程示例💬

以下是典型的电影预订对话的工作原理:

  1. 用户:“今晚找一部我附近的动作片。”

- 服务器调用: get_now_showing + get_recommendations - 返回:带放映时间的动作电影列表

  1. 用户:“预订《沙丘:第二部分》晚上8点的两个座位。”

- 服务器调用: get_showtimesget_seat_mapbook_seats - 返回:座位选择和预订确认

  1. 用户:“用我的卡支付。”

- 服务器调用: process_payment - 退货:带有数字收据的付款确认

建筑🏗️

amc-mcp/
├── src/
│   └── amc_mcp/
│       ├── __init__.py
│       └── server.py          # Main MCP server implementation
├── data/
│   ├── movies.json           # Movie catalog
│   ├── theaters.json         # Theater locations
│   ├── showtimes.json        # Showtime schedules
│   └── seats.json           # Seat maps by showtime
├── config/
│   └── nginx.conf           # Web server configuration
├── Dockerfile               # Container configuration
├── docker-compose.yml       # Multi-service orchestration
├── requirements.txt         # Python dependencies
├── pyproject.toml          # Package configuration
└── README.md               # This file

数据模型📊

电影

{
  "movie_id": str,
  "title": str,
  "rating": str,         # PG, PG-13, R, etc.
  "duration": int,       # Minutes
  "genre": str,
  "description": str,
  "poster_url": str
}

剧院

{
  "theater_id": str,
  "name": str,
  "address": str,
  "city": str,
  "state": str,
  "zip_code": str
}

上映时间

{
  "showtime_id": str,
  "movie_id": str,
  "theater_id": str,
  "date": str,           # YYYY-MM-DD
  "time": str,           # HH:MM
  "format": str,         # Standard, IMAX, 3D, Dolby
  "price": float
}

发展👨‍💻

添加新电影

编辑 data/movies.json 要添加新电影,请执行以下操作:

{
  "movie_id": "mv011",
  "title": "New Movie Title",
  "rating": "PG-13",
  "duration": 120,
  "genre": "Action",
  "description": "Description of the movie...",
  "poster_url": "https://example.com/poster.jpg"
}

添加新影院

编辑 data/theaters.json:

{
  "theater_id": "th011",
  "name": "AMC New Location 15",
  "address": "123 Main Street",
  "city": "New City",
  "state": "NY",
  "zip_code": "12345"
}

添加放映时间

编辑 data/showtimes.jsondata/seats.json 添加新的放映时间和相应的座位图。

测试

手动测试

您可以使用MCP检查器或连接到任何兼容MCP的客户端来测试单个工具。

使用Claude Desktop进行测试

  1. 配置Claude Desktop以连接到您的MCP服务器
  2. 使用自然语言测试预订流程
  3. 示例:“给我找一部今晚在波士顿上映的科幻电影”

配置⚙️

环境变量

  • PYTHONPATH:设置为 /app/src 正确的模块分辨率
  • PYTHONUNBUFFERED:设置为 1 用于实时记录
  • MCP_LOG_LEVEL:设置日志记录级别(调试、信息、警告、错误)

Docker配置

服务器在轻量级Python 3.11容器中运行,其中包含:

  • 非root用户安全
  • 用于监测的健康检查
  • 用于数据持久性的卷装载
  • 网络隔离

安全考虑🔒

这是一个 模拟实现 用于演示目的。生产中:

  1. 支付处理:与真实支付网关(Stripe、PayPal)集成
  2. 认证:添加用户身份验证和授权
  3. 数据验证:实施全面的输入验证
  4. 速率限制:添加API速率限制
  5. 加密:使用HTTPS并加密敏感数据
  6. 数据库:用真实的数据库替换JSON文件
  7. 日志记录:实施结构化日志记录和监控

未来的增强功能🔮

  • Real AMC API集成:连接到实际AMC影院API
  • 用户账户:持久的用户资料和预订历史
  • 团体订票:支持多个用户一起预订
  • 忠诚度计划:AMC Stubs集成
  • 手机票:生成手机输入二维码
  • 座位推荐:人工智能支持的最佳座位建议
  • 价格提醒:通知用户折扣和促销
  • 社会特征:与朋友分享电影计划
  • 无障碍:符合ADA标准的座椅选择
  • 多语言:国际语言支持

贡献🤝

  1. 分叉存储库
  2. 创建要素分支: git checkout -b feature/new-feature
  3. 进行更改并添加测试
  4. 提交您的更改: git commit -am 'Add new feature'
  5. 推到分支: git push origin feature/new-feature
  6. 提交拉取请求

许可证📄

此项目根据MIT许可证获得许可-有关详细信息,请参阅许可证文件。

支持💬

如有疑问、问题或功能请求:

  • 在GitHub存储库中创建问题
  • 查看文档以了解常见解决方案
  • 查看示例对话流

______________________________________________________________________

电影预订愉快! 🍿🎬

目录标签

目录标签

PythonClaude金融数据电影票务本地部署影院预订座位选择支付处理多地点支持

支持客户端

Claude DesktopClaude

接入字段

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

stdio

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

none

工具数量(toolCount,工具数)

6

资源数量(resourceCount,资源数)

0

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

0

权限和风险

stdionone部署方式未说明

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

安装前确认

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

来源信息

继续浏览同类 MCP