Skip to main content
Glama
uudruid74

pente-mcp

by uudruid74

pente-mcp — ChanBlake's Pente를 위한 AI/MCP 애드온

MCP 서버로, MCP를 지원하는 모든 AI가 ChanBlake의 브라우저 게임을 공유 보드로 사용하여 인간과 실시간으로 Pente를 플레이할 수 있게 해줍니다.

이것은 게임의 포크나 재구현이 아닙니다. 애드온 클라이언트입니다. 즉, 게임 자체의 PeerJS 멀티플레이어 방에 두 번째 플레이어로 참여합니다. 인간이 다른 브라우저 탭에서 게임을 여는 것과 똑같이 말입니다. 그리고 이를 네 가지 표준 MCP 도구로 노출합니다. ChanBlake의 게임 코드는 여기에 포함되지 않습니다. 그 코드는 그의 리포지토리에 있으며, 이 프로젝트는 참조만 하고 배포하지 않습니다.

도구

역할

하는 일

create

호스트

새 테이블을 BLACK으로 열고 초대 URL을 반환

join

게스트

기존의 브라우저 호스팅 방에 WHITE로 참여

move(row, col)

양쪽

돌 하나를 놓고 응답을 최대 20초 동안 대기

view

양쪽

동기화된 보드 + 게임 상태를 덤프

구성 내용

  • pente_mcp.py — stdio MCP 서버(create / join / move / view)

  • pente-bot.js — 게스트 봇; PeerJS/WebRTC를 통해 WHITE로 방에 참여

  • pente-host.js — 호스트 어댑터; BLACK으로 방을 엶

  • pente_scan.py — 더 안전한 플레이를 위한 독립형 보드 위협 스캐너(열린 4목, 캡처 프레임, 채울 수 있는 빈틈, 승리 칸)

  • webrtc-polyfill.js — Node.js에서 PeerJS가 실행되도록 함(@roamhq/wrtc shim)

  • test/fake-host.js — 헤드리스 봇 테스트를 위한 프로토콜 정확한 호스트

  • docs/ — 디자인 스펙

작동 방식

브라우저 게임의 멀티플레이어는 PeerJS를 사용해 두 피어를 연결합니다. 방의 호스트 피어 ID는 chanblake-pente-v3-<roomcode>입니다. 게스트 봇은 이 ID에 연결해, 게임의 hello / sync-request를 보내고 move-request를 주고받습니다. 브라우저는 필요 없고 WebRTC 구현만 있으면 됩니다. pente-host.js는 호스트 측에서 동일한 프로토콜을 구현합니다. Python MCP 서버는 이 둘을 도구로 래핑합니다.

요구 사항

  • Node.js (@roamhq/wrtc shim — webrtc-polyfill.js 참조)

  • Python ≥ 3.11 및 mcp (pip install mcp)

  • 공용 public PeerJS cloud에 접근 가능해야 함(0.peerjs.com:443)

빠른 시작

npm install
pip install mcp
python pente_mcp.py          # stdio MCP server

MCP 클라이언트에서 서버를 등록한 다음:

create            -> { "room_code": "ABC234", "join_url": "...?room=ABC234", "i_am": "BLACK" }
view              -> full 19x19 board, whose_turn, captures, game_over
move(row=9, col=9)-> your_move + their_move (or "no response from player")

사용자가 https://chanblake.github.io/pente/?room=ABC234를 열고 플레이하면 — AI가 그 상대가 됩니다.

돌을 두기 전에 보드를 스캔합니다:

python pente_scan.py board.json

크레딧

이 프로젝트가 연결하는 게임은 ChanBlake's Pente입니다: https://github.com/ChanBlake/pente — 비공식적이고, 제휴 관계가 없는 통합 레이어입니다. 이 프로젝트는 네트워크 이동만 보낼 뿐, 게임의 파일이나 메모리를 수정할 수 없습니다.

알려진 제한 사항

  • 방 코드: 앱은 코드에서 I, O, 0을 제거합니다. create는 앱 자체의 알파벳 ABCDEFGHJKLMNPQRSTUVWXYZ23456789로만 코드를 생성하므로 초대 방 코드는 항상 6자로 파싱됩니다.

  • 공용 클라우드 전용: 로컬 PeerServer + Node 호스트는 피어를 등록하지 않습니다(WebRTC-in-Node 제약). 공용 클라우드를 사용하세요.

  • 단일 활성 테이블 — 서버 프로세스당 하나만.

라이선스

MIT — 이 통합 레이어에 대한 라이선스입니다. ChanBlake의 게임에는 그 자체의 라이선스가 있습니다(해당 리포지토리 참조).

-
license - not tested
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

  • Real-time collaborative whiteboard — AI agents and humans edit the same board live over MCP.

  • Hosted MCP server connecting claude.ai, ChatGPT and other AI apps to your own computer

  • Connect AI agents to Flato's editable canvas runtime through a hosted MCP server.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/uudruid74/pente-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server