个方法包含一个接口描述语言，描述一些资料结构，并提供程式工具根据这些描述产生程式码，用于将这些资料结构产生或解析资料串流。
语言支持.proto2提供一个程式产生器，支援C++、Java和Python。第三方实作支援JavaScript。proto3提供一个程式产生器，支援C++、Java (包含JavaNano)、Python、Go、Ruby、Objective-C和C#.从 3.0.0 Beta 2 版开始支援JavaScript。第三方实作支援Perl、PHP、D