SureChEMBL-MCP-Server

SureChEMBL-MCP-Server

3.3

If you are the rightful owner of SureChEMBL-MCP-Server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

The SureChEMBL MCP Server is a comprehensive tool for accessing and analyzing chemical patent data from the SureChEMBL database.

Unofficial SureChEMBL MCP Server

A comprehensive Model Context Protocol (MCP) server for accessing the SureChEMBL chemical patent database. This server provides tools for patent search, chemical discovery, structure analysis, and patent intelligence research.

Developed by Augmented Nature

Overview

SureChEMBL is a large-scale chemical patent database that provides access to chemical structures and their associated patent documents. This MCP server enables seamless integration with SureChEMBL's API, offering powerful tools for:

  • Patent Intelligence: Search and analyze chemical patents
  • Chemical Discovery: Find compounds and their patent coverage
  • Prior Art Research: Identify existing chemical disclosures
  • Competitive Analysis: Track chemical developments by companies
  • Structure-Activity Analysis: Correlate chemical structures with patent claims

Features

๐Ÿ” Document & Patent Search (4 tools)

  • search_patents - Search patents by text, keywords, or identifiers
  • get_document_content - Get complete patent document content with chemical annotations
  • get_patent_family - Get patent family members and relationships
  • search_by_patent_number - Search by specific patent numbers

๐Ÿงช Chemical Search & Retrieval (4 tools)

  • search_chemicals_by_name - Search chemicals by name or synonym
  • get_chemical_by_id - Get detailed chemical information by SureChEMBL ID
  • search_by_smiles - Search chemicals by SMILES structure notation
  • search_by_inchi - Search chemicals by InChI/InChI key

๐Ÿ–ผ๏ธ Structure & Visualization (2 tools)

  • get_chemical_image - Generate chemical structure images
  • get_chemical_properties - Get molecular properties and descriptors

๐Ÿ“Š Data Export & Analysis (2 tools)

  • export_chemicals - Bulk export chemical data (CSV/XML)
  • analyze_patent_chemistry - Analyze chemical content in patents

๐Ÿ”ฌ Advanced Analysis Tools (3 tools)

  • get_chemical_frequency - Get frequency statistics for chemicals across patent database
  • search_similar_structures - Find structurally similar chemicals using similarity search
  • get_patent_statistics - Get statistical overview of chemical content in patents

๐Ÿ“š Resource Templates

  • surechembl://document/{doc_id} - Patent document content
  • surechembl://chemical/{chem_id} - Chemical compound data
  • surechembl://family/{patent_id} - Patent family information
  • surechembl://search/{query} - Search results

Installation

Prerequisites

  • Node.js 18+
  • npm or yarn

Install Dependencies

npm install

Build the Server

npm run build

Development Mode

npm run watch

Usage

Running the Server

npm start

Using with Claude Desktop

Add to your Claude Desktop configuration file:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "surechembl-server": {
      "command": "node",
      "args": ["/path/to/surechembl-server/build/index.js"]
    }
  }
}

Using with MCP Inspector

npm run inspector

API Examples

Search for Chemicals by Name

// Search for aspirin-related compounds
await use_mcp_tool({
  server_name: "surechembl-server",
  tool_name: "search_chemicals_by_name",
  arguments: {
    name: "aspirin",
    limit: 10,
  },
});

Get Patent Document Content

// Get full patent document with chemical annotations
await use_mcp_tool({
  server_name: "surechembl-server",
  tool_name: "get_document_content",
  arguments: {
    document_id: "WO-2020096695-A1",
  },
});

Generate Chemical Structure Image

// Generate structure image from SMILES
await use_mcp_tool({
  server_name: "surechembl-server",
  tool_name: "get_chemical_image",
  arguments: {
    structure: "CC(=O)OC1=CC=CC=C1C(=O)O",
    width: 300,
    height: 200,
  },
});

Analyze Patent Chemistry

// Analyze chemical annotations in a patent
await use_mcp_tool({
  server_name: "surechembl-server",
  tool_name: "analyze_patent_chemistry",
  arguments: {
    document_id: "US-2021123456-A1",
  },
});

Tool Reference

Document & Patent Search

search_patents

Search patents by text, keywords, or identifiers.

Parameters:

  • query (string, required): Search query
  • limit (number, optional): Results limit (1-1000, default: 25)
  • offset (number, optional): Results offset (default: 0)
get_document_content

Get complete patent document content with chemical annotations.

Parameters:

  • document_id (string, required): Patent document ID (e.g., WO-2020096695-A1)
get_patent_family

Get patent family members and relationships.

Parameters:

  • patent_id (string, required): Patent ID to find family members for
search_by_patent_number

Search for patents by specific patent numbers.

Parameters:

  • patent_number (string, required): Patent or publication number

Chemical Search & Retrieval

search_chemicals_by_name

Search for chemicals by name, synonym, or common name.

Parameters:

  • name (string, required): Chemical name or synonym
  • limit (number, optional): Results limit (1-1000, default: 25)
get_chemical_by_id

Get detailed chemical information by SureChEMBL chemical ID.

Parameters:

  • chemical_id (string, required): SureChEMBL chemical ID (numeric)
search_by_smiles

Search for chemicals by SMILES structure notation.

Parameters:

  • smiles (string, required): SMILES string
  • limit (number, optional): Results limit (1-1000, default: 25)
search_by_inchi

Search for chemicals by InChI or InChI key.

Parameters:

  • inchi (string, required): InChI string or InChI key
  • limit (number, optional): Results limit (1-1000, default: 25)

Structure & Visualization

get_chemical_image

Generate chemical structure image from SMILES or other structure notation.

Parameters:

  • structure (string, required): SMILES string or structure notation
  • height (number, optional): Image height in pixels (default: 200)
  • width (number, optional): Image width in pixels (default: 200)
get_chemical_properties

Get molecular properties and descriptors for a chemical.

Parameters:

  • chemical_id (string, required): SureChEMBL chemical ID

Data Export & Analysis

export_chemicals

Bulk export chemical data in CSV or XML format.

Parameters:

  • chemical_ids (array, required): Array of SureChEMBL chemical IDs (1-100)
  • output_type (string, optional): Export format - 'csv' or 'xml' (default: csv)
  • kind (string, optional): ID type - 'cid' or 'smiles' (default: cid)
analyze_patent_chemistry

Analyze chemical content and annotations in a patent document.

Parameters:

  • document_id (string, required): Patent document ID to analyze

Advanced Analysis Tools

get_chemical_frequency

Get frequency statistics for chemicals across the patent database.

Parameters:

  • chemical_id (string, required): SureChEMBL chemical ID
search_similar_structures

Find structurally similar chemicals using similarity search.

Parameters:

  • reference_id (string, required): Reference chemical ID for similarity search
  • threshold (number, optional): Similarity threshold (0.0-1.0, default: 0.7)
  • limit (number, optional): Number of results to return (1-100, default: 25)
get_patent_statistics

Get statistical overview of chemical content in patents.

Parameters:

  • document_id (string, required): Patent document ID for statistics
  • include_annotations (boolean, optional): Include detailed annotation statistics (default: true)

Resource Templates

Document Resource

surechembl://document/{doc_id}

Access complete patent document content with chemical annotations.

Chemical Resource

surechembl://chemical/{chem_id}

Access chemical compound information and properties.

Patent Family Resource

surechembl://family/{patent_id}

Access patent family members and relationships.

Search Resource

surechembl://search/{query}

Access chemical search results for a query.

Error Handling

The server includes comprehensive error handling for:

  • Invalid API parameters
  • Network timeouts and connection issues
  • API rate limiting
  • Malformed chemical structures
  • Missing documents or chemicals

All errors are returned with descriptive messages and appropriate error codes.

Rate Limiting

The server respects SureChEMBL's API rate limits:

  • 30-second timeout for complex requests
  • Respectful request spacing
  • Automatic retry logic for transient failures

Development

Project Structure

surechembl-server/
โ”œโ”€โ”€ src/
โ”‚   โ””โ”€โ”€ index.ts          # Main server implementation
โ”œโ”€โ”€ build/                # Compiled JavaScript
โ”œโ”€โ”€ package.json          # Dependencies and scripts
โ”œโ”€โ”€ tsconfig.json         # TypeScript configuration
โ””โ”€โ”€ README.md            # This file

Available Scripts

  • npm run build - Compile TypeScript to JavaScript
  • npm run watch - Watch mode for development
  • npm run inspector - Run MCP inspector
  • npm start - Start the server
  • npm run dev - Development mode with watch

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests if applicable
  5. Submit a pull request

License

MIT License - see LICENSE file for details.

Support

For issues and questions:

Related Projects

Citation

If you use this project in your research or publications, please cite it as follows:

author = {Moudather Chelbi},
title = {SureChEMBL MCP Server},
year = {2025},
howpublished = {https://github.com/Augmented-Nature/SureChEMBL-MCP-Server},
note = {Accessed: 2025-06-29}
---

**SureChEMBL MCP Server** - Empowering chemical patent intelligence through the Model Context Protocol.