DBGp

Common DeBugGer Protocol as used by Xdebug and potentially other implementations. DBGp is a simple protocol for use with language tools and engines for the purpose of debugging applications. The protocol provides a means of communication between a debugger engine (scripting engine, Virtual Machine, etc.) and a debugger IDE.

Criticisms
DBGp has not received widespread adoption as a server protocol. Most implementations are client-side so that IDEs may be compatible specifically with Xdebug, which remains popular.

Criticisms have included:
 * Performance (DBGp is a text-mode protocol)
 * Security (DBGp has a complex connection mechanism that could lead to buggy vulnerable implementations)
 * Generality (DBGp is designed to be compatible with multiple programming languages rather than being optimized for PHP)

A primary author of the DBGp specification has defended the design.