CTCP (z ang. client to client protocol) – protokół bezpośredniej komunikacji między klientami IRC z pominięciem serwera IRC. Zadanie serwera w tym przypadku sprowadza się do udzielenia obu klientom informacji umożliwiającej zrealizowanie bezpośredniego połączenia, po czym serwer dalej nie uczestniczy w przekazywaniu danych.
Ogólna postać komend CTCP wysyłanych z jednego klienta IRC do drugiego wygląda następująco:
gdzie nick to pseudonim użytkownika IRC do którego klienta chce się wysłać tę komendę. Działanie CTCP ogranicza się właściwie do:
Reakcja klienta, do którego została wysłana komenda CTCP zależy wyłącznie od jego konfiguracji. Standardowo większość klientów IRC reaguje na następujące teksty wysyłane do nich komendą CTCP:
Oprócz tych standardowych komend, można klienta "nauczyć" reagować na dowolne teksty wysyłane przez CTCP. Umożliwia to pisanie skryptów, które realizują rozmaite dodatkowe usługi, np. niektóre rodzaje botów IRC są standardowo sterowane poprzez komendy wysyłane przez CTCP.
Niektóre klienty IRC umożliwiają też spreparowanie innych niż standardowe odpowiedzi na standardowe zapytania. Czasami jest to robione dla żartu, a czasem dla celowego wprowadzenia w błąd, stąd odpowiedzi na te zapytania należy zawsze traktować z dużą ostrożnością, gdyż wcale niekoniecznie muszą one odpowiadać prawdzie.