A service to identify structurally conserved regions at the protein surfaces.


Many therapeutic molecules are known to bind several proteins, which can be different from the initially targeted one. Such unexpected interactions with proteins called off-targets can lead to adverse effects. Potential off-target identification is important to predict to avoid drug side effects or to discover new targets for existing drugs.

This service implements the PatchSearch method [1], which allows local nonsequential searching for similar regions, called patches, on protein surfaces. It is based on detection of quasi-cliques in product graphs representing all the possible matchings between a patch and compared structures.

The service is fully embedded in the Mobyle framework. It embeds simple yet powerful data management features that allow the user to reproduce analyses. It gives to the users the possibility to create registered accounts, which allows user data and jobs to be maintained and managed across multiple work sessions and therefore to reuse and share data and results.

Access the service through the RPBS Mobyle portal:

When using this service, please cite the following references:

Rey J, Rasolohery I, Tufféry P, Guyon F, Moroy G.
PatchSearch: a web server for off-target protein identification.
Nucleic Acids Res. 2019 Jul 2;47(W1):W365-W372.
Rasolohery I, Moroy G, Guyon F.
PatchSearch: A Fast Computational Method for Off-Target Detection.
J Chem Inf Model. 2017 Apr 24;57(4):769-777.

PatchSearch Usage

Note: Selecting Yes to test the service with preset data will fill the input fields with the 4FJP PDB entry, residue number 711:A and the list of proteins to mine: 2I5F, 4FM5, 2P39, 1X9D, 4COX, 3N8X, 2IUW, 1PXX, 6COX, 2FMA, 3QMO, 3Q7D, 3N8W, 2OYE, 4FJP, 1Y93, 2PLZ, 3NTB, 2BRF, 2I53, 2B69. The results of the search can be accessed here.


The Web server requires three inputs:

  1. Structure of the protein-ligand complex : enter the PDB identifier containing the protein-ligand complex.
  2. Patch definition: to select the desired ligand, press the Ligand Visualization button. The input fields "Ligand number" and "Ligand chain identifier" are automatically set up.
  3. Collection of proteins to mine:


  • Progress report

    This section will incrementally provide information about job progression and errors if any. A typical run should produce a report similar to the following :

    Progress Report

    Errors related to the input data specified are also reported in this field.

  • Search results

    PatchSearch results is a table for each retrieved protein.

    Similar patches are output to a table with the PDB identifier, the coverage (number of retrieved atoms), the RMSD (between the query patch and the retrieved patch), the PatchSearch Score (relative Binet-Cauchy score) and the affinity computed by a scoring step using Smina program [2].

    The relative Binet-Cauchy score is based on the BC-score [3] weighted by the proportion of the number of retrieved atoms to the number of query atoms).

  • Visualization of the best hits

    An interactive page allowing to browse the retrieved patches. The residues forming the patch are in thin stick representation with the carbon atom in green. The ligand is in thick stick representation with the carbon atom in cyan. The user can visualize the each solutions ranking to the estimated affinity by Smina program using Vinardo scoring function [4].

  • Downloadable results

    The table of results is downloadable in csv or Excel format.

Example, sample test

In this example, we aim to detect proteins which may interact with Naproxen. We used the structure of bovine lactoferrin complexed with Naproxen as query patch against a list of 20 proteins structures.

As a simple test, you can:

  1. Use Mobyle facilities: fetch a protein structure from the PDB databank using a PDB identifier.

    1. Click the db button.

    2. Select pdb in the menu.

    3. Enter a PDB identifier: 4FJP.

    4. Press select button.

  2. Define the patch:

    1. Press Ligand visualization button.

    2. Select the ligand identifier, [NPS]711:A, in the list on the right side of the graphic window.

  3. Define the targeted proteins:

    Input a list of targeted proteins into the field:

    4fjp, 3q7d, 4cox, 3ntb, 6cox, 3n8w, 1pxx, 3n8x, 4fm5, 3qmo, 2oye, 1y93, 2iuw, 2i5f, 2b69, 1x9d, 2fma, 2brf, 2p39, 2plz, 2i53

  4. Run:

    Launch PatchSearch by clicking Run either at the top or at the bottom of the page.

  5. Results:

    The results of the search can be accessed here.


[1] Rasolohery I, Moroy G, Guyon F.
PatchSearch: A Fast Computational Method for Off-Target Detection.
J Chem Inf Model. 2017 Apr 24;57(4):769-777.
[2] Koes DR, Baumgartner MP, Camacho CJ.
Lessons learned in empirical scoring with smina from the CSAR 2011 benchmarking exercise.
J Chem Inf Model. 2013 Aug 15;53(8):1893-904.
[3] Guyon F, Tufféry P.
Fast protein fragment similarity scoring using a Binet-Cauchy kernel.
Bioinformatics. 2014 Mar 15;30(6):784-91.
[4] Quiroga R, Villarreal MA.
Vinardo: A Scoring Function Based on Autodock Vina Improves Scoring, Docking, and Virtual Screening.
PLoS One. 2016 May 11(5):e0155183.