Token导航 LogoToken导航TokenDH.com
Blackjack MCP Server logo
AI代理stdio官方级别未说明来源级核验

Blackjack MCP Server

MCP Server

一个基于回合制的Blackjack游戏服务器,玩家作为庄家与由Ollama和LlamaIndex驱动的LLM玩家对战,使用模型上下文协议(MCP)暴露游戏动作作为工具供LLM进行战略决策。

工具数

6

提示词数

0

GitHub Stars

0

资源数

0
PythonAI代理工作流自动化

安装说明

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

作者 / 组织

Ojansen

提供方

Ojansen

最后核验

2026/5/17 20:20

快速接入

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

命令预览

pip install -e .

详细介绍

二十一点MCP服务器

一个回合制的二十一点游戏,你扮演庄家,对抗由Ollama和LlamaIndex驱动的LLM玩家。游戏使用模型上下文协议(MCP)来公开游戏动作,作为LLM可以用来做出战略决策的工具。

特性

  • MCP服务器:将二十一点游戏作为MCP工具和资源公开
  • LLM玩家:使用LlamaIndex和Ollama制定战略决策
  • 回合制游戏你扮演庄家的角色,法学硕士与你对决
  • 博彩系统:LLM管理筹码余额并下注
  • 战略AI:LLM解释了每个决定的理由
  • 可配置的:自定义LLM模型、起始筹码和游戏规则

建筑

┌─────────────────┐
│   Main CLI      │  You (Dealer)
│   (main.py)     │
└────────┬────────┘
         │
         ├──────────────┐
         │              │
┌────────▼────────┐  ┌──▼──────────────┐
│  LlamaIndex     │  │  MCP Server     │
│  Agent          │◄─┤  (Game Logic)   │
│  (Ollama LLM)   │  │  Tools/Resources│
└─────────────────┘  └─────────────────┘

MCP工具

MCP服务器向LLM公开这些工具:

  • place_bet(amount) -下注开始新一轮
  • view_table() -查看当前游戏状态(手牌、庄家向上牌、筹码)
  • hit() -再抽一张牌
  • stand() -结束转弯,让庄家玩
  • get_hand_value() -获取当前手牌值
  • get_chip_balance() -获取当前芯片余额

MCP资源

  • blackjack://game/state -当前游戏状态为JSON
  • blackjack://rules -21点规则和策略指南

安装

先决条件

  1. 奥拉玛 -从以下位置安装 奥拉玛 或在远程服务器上运行
  2. LLM模型 -确保模型可用(例如。, ollama pull llama3.2)
  3. Docker&Docker编写 (推荐)或 Python 3.10+

选项1:Docker(推荐)

  1. 克隆存储库:
git clone 
cd blackjack-mcp-server
  1. 更新 config.yaml 使用您的Ollama网址:
llm:
  base_url: "http://192.168.33.12:11434"  # Your Ollama server
  1. 使用Docker Compose运行:
docker compose run --rm --service-ports blackjack

就是这样!游戏将在容器中自动开始。

选项2:本地Python设置

  1. 克隆存储库:
git clone 
cd blackjack-mcp-server
  1. 安装依赖项:
pip install -e .

或手动:

pip install mcp llama-index llama-index-llms-ollama pydantic pyyaml
  1. 确保Ollama正在运行(本地或远程):
ollama serve  # If running locally
  1. 更新 config.yaml 如果使用远程Ollama:
llm:
  base_url: "http://your-ollama-server:11434"

配置

编辑 config.yaml 要自定义游戏,请执行以下操作:

game:
  starting_chips: 1000      # Starting chip balance
  minimum_bet: 10
  maximum_bet: 500
  dealer_stands_on: 17      # Dealer stands on this value

llm:
  model: "llama3.2"         # Ollama model to use
  base_url: "http://localhost:11434"
  temperature: 0.7
  request_timeout: 60.0

display:
  show_reasoning: true      # Show LLM's thought process
  clear_screen: false

用法

运行游戏

使用Docker:

docker compose up

没有Docker:

python main.py

游戏玩法

  1. 游戏开始时LLM有筹码(默认值:1000)
  2. 每一轮:

- 您(庄家)设置投注金额或使用默认值 - LLM下注并接收卡片 - LLM使用策略做出决策(命中/站立) - 经销商(您)根据规则自动进行游戏 - 获胜者已确定,并授予筹码

  1. 继续玩游戏,直到LLM用完筹码或退出

示例会话

🎰  BLACKJACK - You vs LLM  🎰

LLM Player starting chips: 1000
LLM Model: llama3.2
Dealer stands on: 17

🎲 Round 1
LLM Chips: 1000

Press Enter to let LLM bet 50 chips (or type amount/q to quit):

NEW ROUND - LLM Betting 50 chips

💭 LLM Reasoning:
I'll view the table first to see my hand...
My hand is [K♠ 7♥] = 17
Dealer shows: 5♦
Since I have 17 and dealer shows a weak card (5), I'll stand.

Result: You win! +50 chips
Remaining chips: 1050

作为MCP服务器运行

您还可以仅运行MCP服务器,以便与其他MCP客户端集成:

python -m blackjack_mcp.server

或者使用已安装的脚本:

blackjack-mcp

发展

项目结构

blackjack-mcp-server/
├── src/
│   ├── blackjack_mcp/
│   │   ├── __init__.py
│   │   ├── game.py          # Core game logic
│   │   └── server.py        # MCP server
│   └── agent.py             # LlamaIndex agent
├── main.py                  # CLI interface
├── config.yaml              # Configuration
├── pyproject.toml           # Project metadata
└── README.md

运行测试

pytest

代码格式化

black src/ main.py

游戏规则

  • 目标:在不经过的情况下,比经销商更接近21
  • 卡片价值:

- 数字卡(2-10):面值 - 脸牌(J、Q、K):10分 - Aces:11或1(自动调整)

  • 经销商规则:经销商必须达到17或更高
  • 付出的巨款:

- 21点(21,2张牌):1.5倍赌注 - 常规获胜:1x赌注 - 推(平局):投注已退回 - 损失:输掉赌注

LLM战略

LLM使用基本的二十一点策略:

  • 命中11或更少(不能失败)
  • 17岁或以上(经销商门槛)
  • 12-16岁:考虑经销商的上卡

- 经销商显示2-6(弱):站立 - 庄家显示7-Ace(强):命中

故障排除

Ollama连接错误

确保Olama正在运行:

ollama serve

检查中的基本URL config.yaml 与您的Olama安装相匹配。

未找到型号

拉取配置中指定的模型:

ollama pull llama3.2

导入错误

确保安装了所有依赖项:

pip install -e .

许可证

MIT许可证

贡献

欢迎投稿!请打开问题或提交PR。

致谢

目录标签

目录标签

PythonAI代理工作流自动化游戏服务器本地部署LLM对战BlackjackMCP协议战略决策

接入字段

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

stdio

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

none

工具数量(toolCount,工具数)

6

资源数量(resourceCount,资源数)

0

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

0

权限和风险

stdionone部署方式未说明

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

安装前确认

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

来源信息

继续浏览同类 MCP