ICAP setup on client side depends on the selected hardware/software. Thus, you should refer to the hardware or software installation and configuration guides. Sample configurations are presented hereafter.
Squid version 3.0 (build with -DICAP_CLIENT)
This configuration corresponds to a deployment where GreasySpoon is running on the same server than Squid:

icap_enable on
icap_preview_enable on
icap_service greasyspoon_req reqmod_precache 0 icap://
icap_service greasyspoon_resp respmod_precache 0 icap://
icap_class class_1 greasyspoon_req
icap_class class_2 greasyspoon_resp
icap_access class_1 allow all
icap_access class_2 allow all

Complete configuration can be downloaded here:
Squid version 3.1 (build with -DICAP_CLIENT)
icap_enable on
icap_preview_enable on
icap_service service_req reqmod_precache bypass=0 icap://
adaptation_access service_req allow all
icap_service service_resp respmod_precache bypass=0 icap://
adaptation_access service_resp allow all

Complete configuration can be downloaded here:
NetCache from Network Appliance

Note: Network Appliance Netcaches includes some specificities in their ICAP implementation. In order for GreasySpoon to work correctly with Netcaches, GreasySpoon service must be declared on Netcaches with following ICAP URI parameter brand=netapp. This parameter allows GreasySpoon to identify Netcaches and support their iCAP implementation.
config.icapv1.osl.reqmod_precache = greasyspoon_req
config.icapv1.osl.respmod_precache = greasyspoon_resp
config.icapv1.farm1.services = icap://greasyspoonipaddress:1344/greasyspoon_req?brand=netapp on
config.icapv1.farm1.attr = greasyspoon_req REQMOD_PRECACHE on rr off weak
config.icapv1.farm2.services = icap://greasyspoonipaddressr:1344/greasyspoon_resp?brand=netapp on
config.icapv1.farm2.attr = greasyspoon_resp RESPMOD_PRECACHE on rr off weak
config.icapv1.enable = on