SureChEMBL MCP Server
Provides configuration support for running the SureChEMBL MCP server with Claude Desktop on macOS systems.
Enables running the SureChEMBL MCP server which provides tools for accessing the SureChEMBL chemical patent database for patent searches, chemical discovery, and structure analysis.
Used for implementing the SureChEMBL MCP server with type-safe API interactions to the SureChEMBL chemical patent database.
Supported as an export format for chemical data from the SureChEMBL database.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@SureChEMBL MCP Serversearch for patents related to aspirin"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.

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
Related MCP server: ChEMBL MCP Server
Features
๐ Document & Patent Search (4 tools)
search_patents- Search patents by text, keywords, or identifiersget_document_content- Get complete patent document content with chemical annotationsget_patent_family- Get patent family members and relationshipssearch_by_patent_number- Search by specific patent numbers
๐งช Chemical Search & Retrieval (4 tools)
search_chemicals_by_name- Search chemicals by name or synonymget_chemical_by_id- Get detailed chemical information by SureChEMBL IDsearch_by_smiles- Search chemicals by SMILES structure notationsearch_by_inchi- Search chemicals by InChI/InChI key
๐ผ๏ธ Structure & Visualization (2 tools)
get_chemical_image- Generate chemical structure imagesget_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 databasesearch_similar_structures- Find structurally similar chemicals using similarity searchget_patent_statistics- Get statistical overview of chemical content in patents
๐ Resource Templates
surechembl://document/{doc_id}- Patent document contentsurechembl://chemical/{chem_id}- Chemical compound datasurechembl://family/{patent_id}- Patent family informationsurechembl://search/{query}- Search results
Installation
Prerequisites
Node.js 18+
npm or yarn
Install Dependencies
npm installBuild the Server
npm run buildDevelopment Mode
npm run watchUsage
Running the Server
npm startUsing 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 inspectorAPI 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 querylimit(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 synonymlimit(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 stringlimit(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 keylimit(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 notationheight(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 searchthreshold(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 statisticsinclude_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 fileAvailable Scripts
npm run build- Compile TypeScript to JavaScriptnpm run watch- Watch mode for developmentnpm run inspector- Run MCP inspectornpm start- Start the servernpm run dev- Development mode with watch
Contributing
Fork the repository
Create a feature branch
Make your changes
Add tests if applicable
Submit a pull request
License
MIT License - see LICENSE file for details.
Support
For issues and questions:
GitHub Issues: Report bugs and feature requests
Documentation: SureChEMBL API Documentation
Related Projects
ChEMBL MCP Server - ChEMBL bioactivity database
PubChem MCP Server - PubChem chemical database
UniProt MCP Server - UniProt protein database
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.Available Tools
15 toolsanalyze_patent_chemistryC
Analyze chemical content and annotations in a patent document
| Name | Required | Description | Default |
|---|---|---|---|
| document_id | Yes | Patent document ID to analyze |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool analyzes chemical content and annotations but does not specify whether this is a read-only operation, what permissions are required, how results are returned, or any rate limits. This is inadequate for a tool that likely involves data processing without structured behavioral hints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It is front-loaded and wastes no space, making it highly concise and well-structured for quick understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description is incomplete. It does not explain what the analysis entails, the format of results, or any behavioral aspects like error handling. For a tool that likely returns complex chemical data, this leaves significant gaps in understanding its functionality and output.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, with the single parameter 'document_id' clearly documented. The description does not add any additional meaning beyond the schema, such as format examples or constraints, but since schema coverage is high, the baseline score of 3 is appropriate as the schema handles the parameter documentation adequately.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose as analyzing chemical content and annotations in patent documents, specifying both the action ('analyze') and resource ('chemical content and annotations in a patent document'). However, it does not explicitly differentiate from sibling tools like 'get_document_content' or 'search_patents', which might also involve patent document analysis, leaving room for ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It lacks context on prerequisites, such as needing a specific document ID, and does not mention any sibling tools like 'get_document_content' or 'search_patents' as alternatives, leaving the agent without usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
export_chemicalsC
Bulk export chemical data in CSV or XML format
| Name | Required | Description | Default |
|---|---|---|---|
| chemical_ids | Yes | Array of SureChEMBL chemical IDs (1-100) | |
| output_type | No | Export format (default: csv) | |
| kind | No | ID type for export (default: cid) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but lacks critical behavioral details. It mentions bulk export and formats but doesn't disclose permissions needed, rate limits, file size constraints, whether it's a synchronous or asynchronous operation, or what the output contains. 'Bulk' hints at scale but without specifics, leaving gaps in understanding the tool's behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with zero waste. It front-loads key information ('bulk export chemical data') and specifies formats concisely. Every word earns its place, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 3 parameters, no annotations, and no output schema, the description is incomplete. It lacks details on behavioral traits (e.g., execution mode, limits), output structure, and usage context. While concise, it doesn't compensate for the missing structured data, leaving the agent with insufficient information for optimal use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents all parameters. The description adds no additional parameter semantics beyond implying bulk handling and format options, which are already covered by the schema's descriptions and enums. Baseline 3 is appropriate as the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('bulk export') and resource ('chemical data'), specifying the output formats (CSV or XML). It distinguishes from siblings by focusing on export functionality rather than search, analysis, or retrieval operations. However, it doesn't explicitly contrast with specific sibling tools like 'get_chemical_properties' or 'search_chemicals_by_name'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, ideal scenarios, or contrast with sibling tools like 'get_chemical_by_id' for single records or 'search_chemicals_by_name' for different query types. Usage is implied by the name and purpose but not explicitly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_chemical_by_idC
Get detailed chemical information by SureChEMBL chemical ID
| Name | Required | Description | Default |
|---|---|---|---|
| chemical_id | Yes | SureChEMBL chemical ID (numeric) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool retrieves 'detailed chemical information' but doesn't specify what that entails (e.g., structure, properties, metadata), whether it's a read-only operation, potential errors (e.g., invalid ID), or any rate limits. This leaves significant gaps in understanding how the tool behaves beyond its basic purpose.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, direct sentence that efficiently conveys the core purpose without unnecessary words. It's front-loaded with the key action and resource, making it easy to parse quickly, which is ideal for conciseness in tool descriptions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description is insufficient for a tool that presumably returns complex chemical data. It doesn't explain what 'detailed chemical information' includes, potential response formats, or error handling, leaving the agent with incomplete context for effective use in a chemistry-focused environment.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, with the parameter 'chemical_id' fully documented in the schema as 'SureChEMBL chemical ID (numeric)'. The description adds no additional parameter semantics beyond this, such as format examples or constraints, so it meets the baseline for adequate but not enhanced parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get detailed chemical information') and resource ('by SureChEMBL chemical ID'), making the purpose unambiguous. However, it doesn't explicitly differentiate this from sibling tools like 'get_chemical_properties' or 'get_chemical_frequency', which might also retrieve chemical data but through different mechanisms or with different scopes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing a valid SureChEMBL ID), exclusions, or comparisons to siblings like 'search_chemicals_by_name' or 'get_chemical_properties', leaving the agent to infer usage context solely from the tool name and description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_chemical_frequencyB
Get frequency statistics for chemicals across the patent database
| Name | Required | Description | Default |
|---|---|---|---|
| chemical_id | Yes | SureChEMBL chemical ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but only states what the tool does without behavioral details. It lacks information on permissions, rate limits, response format, or whether it's read-only (implied by 'Get' but not explicit), which is insufficient for a tool with no annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with zero waste. It's front-loaded with the core purpose and appropriately sized for the tool's complexity, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 1 parameter with full schema coverage but no annotations or output schema, the description is minimally adequate. It clarifies the purpose but lacks behavioral context and usage guidelines, making it incomplete for optimal agent decision-making in a server with many sibling tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, with the single parameter 'chemical_id' documented as 'SureChEMBL chemical ID'. The description adds no additional parameter semantics beyond this, so it meets the baseline score of 3 for high schema coverage without extra value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Get') and resource ('frequency statistics for chemicals across the patent database'), making the purpose understandable. However, it doesn't explicitly differentiate from siblings like 'get_patent_statistics' or 'get_chemical_properties', which could have overlapping statistical or chemical focus.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, exclusions, or compare to siblings such as 'get_patent_statistics' or 'search_chemicals_by_name', leaving the agent to infer usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_chemical_imageC
Generate chemical structure image from SMILES or other structure notation
| Name | Required | Description | Default |
|---|---|---|---|
| structure | Yes | SMILES string or other structure notation | |
| height | No | Image height in pixels (default: 200) | |
| width | No | Image width in pixels (default: 200) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool generates an image but doesn't describe the output format (e.g., PNG, SVG), potential errors (e.g., invalid SMILES), performance characteristics, or any side effects. For a tool with no annotations and unknown output, this leaves significant gaps in understanding its behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It's appropriately sized and front-loaded, with every element earning its place by specifying the action, output, and input type.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, no output schema, and a tool that generates images (which implies specific output formats and potential errors), the description is incomplete. It doesn't address what the output looks like (e.g., image type, how to handle it), error conditions, or usage constraints, leaving the agent with insufficient context for reliable invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents all three parameters (structure, height, width) with descriptions and constraints. The description adds no additional parameter semantics beyond implying that 'SMILES or other structure notation' maps to the 'structure' parameter. This meets the baseline of 3 when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Generate chemical structure image from SMILES or other structure notation.' It specifies the verb (generate), resource (chemical structure image), and input type (SMILES/other notation). However, it doesn't explicitly differentiate from sibling tools like search_by_smiles or search_similar_structures, which might also involve SMILES input but serve different purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like search_by_smiles (which might retrieve data rather than generate images) or get_chemical_by_id (which might fetch existing records). There's no context about prerequisites, alternatives, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_chemical_propertiesC
Get molecular properties and descriptors for a chemical by ID
| Name | Required | Description | Default |
|---|---|---|---|
| chemical_id | Yes | SureChEMBL chemical ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the action but does not reveal any behavioral traits like whether it's read-only, has rate limits, requires authentication, or what the output format might be. This leaves significant gaps in understanding how the tool behaves in practice.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence that directly states the tool's purpose without any unnecessary words or fluff. It is front-loaded and efficiently communicates the core function, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description is incomplete. It does not address behavioral aspects, usage context, or output details, which are crucial for a tool that likely returns complex data like molecular properties. This makes it inadequate for full understanding in a real-world scenario.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, with the parameter 'chemical_id' documented as 'SureChEMBL chemical ID'. The description does not add any additional meaning or context beyond what the schema provides, such as examples or format details, so it meets the baseline score for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'molecular properties and descriptors for a chemical by ID', making the purpose specific and understandable. However, it does not explicitly distinguish this tool from sibling tools like 'get_chemical_by_id' or 'get_chemical_frequency', which may have overlapping or similar purposes, so it falls short of a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, such as 'get_chemical_by_id' or 'search_chemicals_by_name'. It lacks context on prerequisites, exclusions, or specific scenarios where this tool is preferred, offering only a basic statement of function without usage instructions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_document_contentB
Get complete patent document content with chemical annotations by document ID
| Name | Required | Description | Default |
|---|---|---|---|
| document_id | Yes | Patent document ID (e.g., WO-2020096695-A1) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool retrieves content with chemical annotations but does not describe response format, error conditions, rate limits, or authentication needs. For a read operation with no annotation coverage, this leaves significant gaps in understanding tool behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with zero waste. It is front-loaded with the core purpose and includes all necessary elements without redundancy, making it easy for an agent to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations and no output schema, the description is incomplete for a tool that retrieves complex content. It does not explain what 'complete patent document content' includes, the format of chemical annotations, or any limitations, leaving the agent with insufficient context for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents the single parameter. The description adds minimal value beyond the schema by implying the document_id is for patent documents and mentioning chemical annotations, but does not provide additional syntax or format details. Baseline 3 is appropriate when schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('Get complete patent document content'), the resource ('patent document'), and key features ('with chemical annotations by document ID'). It distinguishes from siblings like get_patent_family or get_patent_statistics by focusing on full content retrieval with annotations rather than metadata or statistics.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention prerequisites, exclusions, or compare to siblings like search_patents or get_patent_family, leaving the agent to infer usage context independently.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_patent_familyB
Get patent family members and relationships for a patent
| Name | Required | Description | Default |
|---|---|---|---|
| patent_id | Yes | Patent ID to find family members for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states what the tool does but lacks details on permissions, rate limits, response format, or whether it's read-only or has side effects. This is a significant gap for a tool with no annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no wasted words. It's front-loaded with the core purpose and efficiently conveys the tool's function without unnecessary elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (1 parameter, no output schema, no annotations), the description is minimally adequate. It covers the basic purpose but lacks behavioral details and usage context, making it incomplete for effective agent use without additional inference.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, with the parameter 'patent_id' fully documented in the schema. The description doesn't add any extra meaning beyond the schema, such as format examples or constraints, so it meets the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'patent family members and relationships for a patent', making the purpose specific and understandable. However, it doesn't explicitly differentiate from sibling tools like 'search_patents' or 'get_patent_statistics', which prevents a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, exclusions, or compare to sibling tools such as 'search_by_patent_number' or 'get_patent_statistics', leaving usage context unclear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_patent_statisticsC
Get statistical overview of chemical content in patents
| Name | Required | Description | Default |
|---|---|---|---|
| document_id | Yes | Patent document ID for statistics | |
| include_annotations | No | Include detailed annotation statistics (default: true) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states it 'gets' statistics, implying a read-only operation, but doesn't specify if it's safe, has rate limits, requires authentication, or what the output format might be. For a tool with no annotations, this is a significant gap in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without any fluff or redundancy. It's appropriately sized and front-loaded, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of statistical analysis, no annotations, and no output schema, the description is incomplete. It doesn't explain what 'statistical overview' entails, the types of statistics returned, or any behavioral traits like error handling. For a tool with these gaps, it should provide more context to be fully helpful.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents both parameters ('document_id' and 'include_annotations') with clear descriptions. The description adds no additional meaning beyond what the schema provides, such as examples or context for the parameters, so it meets the baseline for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get statistical overview') and resource ('chemical content in patents'), making the purpose immediately understandable. It doesn't explicitly differentiate from siblings like 'get_chemical_frequency' or 'analyze_patent_chemistry', which might offer overlapping functionality, so it doesn't reach the highest score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'get_chemical_frequency' or 'analyze_patent_chemistry'. It lacks context about use cases, prerequisites, or exclusions, leaving the agent to infer usage from the name and schema alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_by_inchiC
Search for chemicals by InChI or InChI key
| Name | Required | Description | Default |
|---|---|---|---|
| inchi | Yes | InChI string or InChI key | |
| limit | No | Number of results to return (1-1000, default: 25) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure but only states the basic function. It doesn't cover aspects like whether this is a read-only operation, potential rate limits, authentication needs, error handling, or what the search results might include (e.g., chemical IDs, names, properties). This leaves significant gaps in understanding the tool's behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, direct sentence with zero wasted words, efficiently conveying the core purpose. It is appropriately sized and front-loaded, making it easy to parse without unnecessary elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of a search tool with no annotations and no output schema, the description is incomplete. It doesn't explain what the tool returns (e.g., chemical records, IDs, or error messages), how results are structured, or any limitations (e.g., partial matches, case sensitivity). This leaves the agent without sufficient context for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, with clear documentation for both parameters ('inchi' as the search string and 'limit' with range and default). The description adds no additional parameter semantics beyond what the schema provides, such as examples of InChI formats or search behavior nuances, so it meets the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Search for chemicals') and the resource ('by InChI or InChI key'), making the purpose immediately understandable. However, it doesn't explicitly differentiate from sibling tools like 'search_by_smiles' or 'search_chemicals_by_name', which would require mentioning the specific chemical identifier type used.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'search_by_smiles' for SMILES strings or 'search_chemicals_by_name' for name-based searches, nor does it specify prerequisites or contexts where InChI searching is preferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_by_patent_numberC
Search for patents by specific patent numbers or publication numbers
| Name | Required | Description | Default |
|---|---|---|---|
| patent_number | Yes | Patent or publication number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool searches for patents but doesn't describe what the search returns (e.g., patent details, metadata, or a list), whether it's a read-only operation, or any limitations like rate limits or authentication needs. For a search tool with zero annotation coverage, this is a significant gap in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's function without unnecessary words. It's front-loaded with the core purpose, making it easy to parse quickly. Every part of the sentence earns its place by clarifying the action and criteria.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description is incomplete. It doesn't explain what the tool returns (e.g., patent data, error messages), behavioral traits like read-only status, or usage constraints. For a search tool with no structured output information, the description should provide more context to help an agent understand the full scope of the tool's operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description mentions searching by 'patent numbers or publication numbers,' which aligns with the single parameter 'patent_number' in the schema. Since schema description coverage is 100% (the parameter is well-documented as 'Patent or publication number'), the description adds minimal value beyond the schema. This meets the baseline of 3, as the schema does the heavy lifting for parameter documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Search for patents by specific patent numbers or publication numbers.' It specifies the verb ('search'), resource ('patents'), and criteria ('patent numbers or publication numbers'), making it easy to understand. However, it doesn't explicitly differentiate from siblings like 'search_patents' or 'get_patent_family,' which could cause confusion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention when to choose it over siblings like 'search_patents' (which might have broader search capabilities) or 'get_patent_family' (which might retrieve related patents). Without such context, an agent might struggle to select the correct tool for a given task.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_by_smilesC
Search for chemicals by SMILES structure notation
| Name | Required | Description | Default |
|---|---|---|---|
| smiles | Yes | SMILES string of the chemical structure | |
| limit | No | Number of results to return (1-1000, default: 25) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool is for searching, implying a read operation, but doesn't cover critical aspects like whether it's a fuzzy or exact match search, what the output format is (e.g., list of chemicals with IDs), performance characteristics (e.g., speed, accuracy), or error handling. For a search tool with no annotation coverage, this is a significant gap in behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence: 'Search for chemicals by SMILES structure notation.' It's front-loaded with the core purpose, has zero wasted words, and is appropriately sized for a straightforward search tool. Every part of the sentence contributes directly to understanding the tool's function.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of a chemical search tool with no annotations and no output schema, the description is incomplete. It doesn't explain what the search returns (e.g., chemical IDs, names, properties), how results are ordered, or potential limitations (e.g., database coverage). For a tool with 2 parameters and no structured output information, the description should provide more context to guide effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, with clear documentation for both parameters: 'smiles' as the SMILES string and 'limit' with range and default. The description adds no additional parameter semantics beyond what's in the schema, such as examples of valid SMILES strings or how the limit applies to results. With high schema coverage, the baseline score of 3 is appropriate, as the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Search for chemicals by SMILES structure notation.' It specifies the verb ('Search'), resource ('chemicals'), and method ('by SMILES structure notation'). However, it doesn't explicitly distinguish this tool from its sibling 'search_by_inchi' or 'search_similar_structures,' which are related chemical search tools. The purpose is clear but lacks sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'search_by_inchi' (for InChI notation), 'search_chemicals_by_name' (for name-based search), or 'search_similar_structures' (for structural similarity). There's no context on prerequisites, exclusions, or recommended scenarios, leaving the agent to infer usage from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_chemicals_by_nameC
Search for chemicals by name, synonym, or common name
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Chemical name or synonym to search for | |
| limit | No | Number of results to return (1-1000, default: 25) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden for behavioral disclosure. It states the search functionality but lacks critical details: whether this is a read-only operation, if it requires authentication, rate limits, pagination behavior, or what the output format looks like. For a search tool with zero annotation coverage, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence: 'Search for chemicals by name, synonym, or common name.' It's front-loaded with the core purpose and wastes no words. Every part of the sentence contributes meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (search operation with 2 parameters), lack of annotations, and no output schema, the description is incomplete. It doesn't explain return values, error conditions, or behavioral constraints. For a search tool in a chemical database context, more context about result format (e.g., chemical IDs, names, properties) would be helpful.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents both parameters ('name' and 'limit'). The description adds no parameter-specific information beyond what's in the schema. It mentions 'name, synonym, or common name' which aligns with the schema's 'Chemical name or synonym to search for', but provides no additional syntax or format details. Baseline 3 is appropriate when schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Search for chemicals by name, synonym, or common name.' It specifies the verb (search) and resource (chemicals), and indicates the search scope (name, synonym, common name). However, it doesn't explicitly differentiate from sibling tools like 'search_by_inchi' or 'search_by_smiles' which search by different chemical identifiers.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'search_by_inchi' (for InChI strings) or 'search_by_smiles' (for SMILES notation), nor does it specify use cases or exclusions. The agent must infer usage from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_patentsB
Search patents by text, keywords, or identifiers in SureChEMBL database
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query (keywords, patent numbers, or text) | |
| limit | No | Number of results to return (1-1000, default: 25) | |
| offset | No | Number of results to skip (default: 0) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the search functionality but lacks details on permissions, rate limits, response format, or error handling. For a search tool with zero annotation coverage, this leaves significant gaps in understanding its operational behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose without unnecessary words. Every part ('Search patents by text, keywords, or identifiers in SureChEMBL database') contributes directly to understanding the tool's function.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (search with three parameters), no annotations, and no output schema, the description is minimally adequate. It covers the basic purpose but lacks details on behavior, usage context, and output, which are needed for a more complete understanding. It meets the minimum viable threshold but has clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents the three parameters (query, limit, offset). The description adds minimal value by implying the query can include 'text, keywords, or identifiers', but this doesn't go beyond the schema's description of 'Search query (keywords, patent numbers, or text)'. Baseline 3 is appropriate when the schema handles most documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Search patents') and target resource ('patents in SureChEMBL database'), with the method ('by text, keywords, or identifiers') providing specific context. However, it doesn't explicitly differentiate from sibling tools like 'search_by_patent_number' or 'search_chemicals_by_name', which reduces it from a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'search_by_patent_number' or 'search_chemicals_by_name'. It mentions the database (SureChEMBL) but doesn't specify use cases, exclusions, or prerequisites, leaving the agent without contextual direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_similar_structuresC
Find structurally similar chemicals using similarity search
| Name | Required | Description | Default |
|---|---|---|---|
| reference_id | Yes | Reference chemical ID for similarity search | |
| threshold | No | Similarity threshold (0.0-1.0, default: 0.7) | |
| limit | No | Number of results to return (1-100, default: 25) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions 'similarity search' but doesn't specify what similarity metric is used (e.g., Tanimoto, Euclidean), whether results are paginated, rate limits, authentication needs, or what the output format looks like. This leaves significant gaps for an AI agent to understand how to invoke it effectively.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core action ('Find structurally similar chemicals') without unnecessary words. Every part earns its place by specifying the method ('using similarity search'), making it appropriately sized and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations and no output schema, the description is incomplete for a tool with 3 parameters and behavioral complexity. It lacks details on the similarity metric, result format, error handling, or performance characteristics, which are crucial for an AI agent to use this tool correctly in a chemical search context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, clearly documenting all three parameters with types, ranges, and defaults. The description adds no additional parameter semantics beyond what's in the schema, such as explaining what 'reference_id' refers to (e.g., a database ID, SMILES string) or how 'threshold' impacts results. Baseline 3 is appropriate since the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Find' and resource 'structurally similar chemicals' with the method 'using similarity search', making the purpose evident. However, it doesn't explicitly differentiate from sibling tools like 'search_by_smiles' or 'search_chemicals_by_name', which might also involve chemical searching but with different criteria.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. With sibling tools like 'search_by_smiles' or 'search_chemicals_by_name' available, there's no indication of when structural similarity search is preferred over other search methods, nor any prerequisites or exclusions mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
15 tool updates
- First observed
analyze_patent_chemistry - First observed
export_chemicals - First observed
get_chemical_by_id - First observed
get_chemical_frequency - First observed
get_chemical_image - First observed
get_chemical_properties - First observed
get_document_content - First observed
get_patent_family - First observed
get_patent_statistics - First observed
search_by_inchi - First observed
search_by_patent_number - First observed
search_by_smiles - First observed
search_chemicals_by_name - First observed
search_patents - First observed
search_similar_structures
TDQS
Each tool has a clearly distinct purpose with no significant overlap. For example, search_by_smiles and search_by_inchi both search chemicals but use different input formats, while get_chemical_by_id retrieves specific records. The descriptions clarify distinct functions like analysis vs. export vs. search.
All tools follow a consistent verb_noun pattern with snake_case, such as get_chemical_by_id, search_by_smiles, and analyze_patent_chemistry. The naming is predictable and readable throughout the set, with verbs like get, search, analyze, and export used appropriately.
With 15 tools, the count is well-scoped for a patent chemistry database server. Each tool earns its place by covering distinct aspects like chemical retrieval, patent search, analysis, and export, without being overwhelming or too sparse for the domain.
The tool set provides complete coverage for the SureChEMBL domain, including CRUD-like operations (e.g., get, search, analyze, export) for both chemicals and patents. There are no obvious gaps; it supports chemical lookup, structure search, patent analysis, and data export, enabling full agent workflows.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
ChEMBL MCP โ drug discovery database (EBI).
PubChem MCP โ NIH chemistry compound database (no auth)
Auditable MCP server for PubMed, Europe PMC, ClinicalTrials.gov, and bioRxiv/medRxiv queries
Negative results intelligence for drug discovery โ query measured failures via MCP.
Related MCP Servers
- FlicenseCqualityDmaintenanceA comprehensive Model Context Protocol (MCP) server providing advanced access to the UniProt protein database.2620-
- FlicenseBqualityDmaintenanceA comprehensive Model Context Protocol (MCP) server providing advanced access to the ChEMBL chemical database.2789-
- FlicenseBqualityFmaintenanceA comprehensive Model Context Protocol server providing access to over 110 million chemical compounds with extensive molecular properties, bioassay data, and chemical informatics tools from the PubChem database.3047-
- FlicenseNot gradedqualityDmaintenanceA FastMCP wrapper server that provides API access to the ChEMBL database, enabling users to query drug discovery data such as activities, assays, targets, and molecules.2-
Appeared in Searches
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Augmented-Nature/SureChEMBL-MCP-Server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server