Chess Engine Communication Protocol

Also known as: CECP, WinBoard protocol, XBoard protocol

A line-based text protocol used by XBoard, WinBoard, and other programs to control chess engines.

This page is temporarily shown in English. Complete localization will be added in a later stage.

Explanation

CECP stands for Chess Engine Communication Protocol. It is also called the XBoard or WinBoard protocol because it developed around those interfaces. It lets a graphical interface send commands to a and receive moves, search information, and game results.

Communication uses text lines. The interface can send new to begin a game, force to stop the engine from playing either side, go to make it play the side to move, time and otim to report the clocks, and ping to confirm that earlier commands have been processed. Moves can use coordinate notation and, when the relevant capability is negotiated, standard algebraic notation.

Capability negotiation

In protocol version 2, the interface sends xboard and protover 2. The engine answers with one or more feature lines declaring support for items such as direct position setup, variants, configurable options, or endgame tables. The interface accepts or rejects each feature. This mechanism preserves compatibility with older engines.

CECP and serve similar purposes but structure the conversation differently. CECP commonly treats the engine as a player that keeps the game state; UCI normally sends the position again before each search. Tools such as can adapt some UCI engines to CECP interfaces.

Common confusions

CECP, XBoard, and WinBoard

The three names commonly refer to the same protocol family. XBoard and WinBoard are interfaces that popularized it.

CECP versus UCI

They are not two names for one standard. Their commands and state handling differ.

View term

Sources

  1. 1.Chess Engine Communication Protocol, Tim Mann and H.G. Muller
  2. 2.Chess Engines, Tim Mann

Related terms

© MindZug 2026