Catalysis Hub Server
FreeNot checkedA Model Context Protocol (MCP) server that provides programmatic access to Catalysis Hub's GraphQL API, enabling querying of catalytic reactions, material syste
About
A Model Context Protocol (MCP) server that provides programmatic access to Catalysis Hub's GraphQL API, enabling querying of catalytic reactions, material systems, publications, and surface reaction data.
README
A Model Context Protocol (MCP) server interface to Catalysis Hub's GraphQL API, enabling programmatic access to catalysis research data through flexible GraphQL queries.
Key Features
- Direct GraphQL Access: Execute any valid GraphQL query against Catalysis Hub's API
- Comprehensive Data Access:
- Catalytic reactions (equations, conditions, catalysts)
- Material systems (structures, properties, descriptors)
- Research publications (titles, DOIs, authors)
- Surface reaction data (adsorption energies, binding sites)
- MCP Standard Compliance: Implements the Model Context Protocol for AI-agent interoperability
- Flexible Query Support: Execute complex queries with variables parameterization
- Error Handling: Robust error reporting for API connectivity and query execution
License and Citation
This project is available under the MIT License with an Academic Citation Requirement. This means you can freely use, modify, and distribute the code, but any academic or scientific publication that uses this software must provide appropriate attribution.
For academic/research use:
If you use this software in a research project that leads to a publication, presentation, or report, you must cite this work according to the format provided in CITATION.md.
For commercial/non-academic use:
Commercial and non-academic use follows the standard MIT License terms without the citation requirement.
By using this software, you agree to these terms. See LICENSE.md for the complete license text.
Implementation Details
- Server Configuration (matches
claude_desktop_config.json):{ "command": "/Users/quentincody/.env/bin/python3", "args": ["/Users/quentincody/catalysishub-mcp-server/catalysishub_mcp_server.py"], "options": { "cwd": "/Users/quentincody/catalysishub-mcp-server" } } - Core Dependency:
httpxfor asynchronous HTTP requests - Transport: Standard input/output communication following MCP specifications
Setup & Installation
Clone the repository:
git clone <repository_url> cd catalysishub-mcp-serverInstall dependencies:
pip install -r requirements.txtVerify installation:
python3 catalysishub_mcp_server.py --version # Should output: catalysishub-mcp-server 0.1.0
Usage Examples
Basic Query Execution
from mcp.client import MCPClient
async with MCPClient("catalysishub") as hub:
result = await hub.catalysishub_graphql(
query="""{
reactions(first: 5) {
edges {
node {
id
Equation
Temperature
}
}
}
}"""
)
print(json.loads(result))
Parameterized Query with Variables
variables = {
"materialId": "mp-1234",
"firstResults": 5
}
response = await hub.catalysishub_graphql(
query="""query GetMaterial($materialId: String!, $firstResults: Int!) {
systems(uniqueId: $materialId) {
edges {
node {
energy
Cifdata
relatedReactions(first: $firstResults) {
edges {
node {
id
Equation
}
}
}
}
}
}
}""",
variables=variables
)
Query Optimization Tips
Use GraphQL Fragments:
fragment ReactionDetails on Reaction { id Equation ActivationEnergy Catalyst { formula surface } } query { reactions(first: 10) { edges { node { ...ReactionDetails } } } }Batch Related Queries:
query BatchQuery { reactions: reactions(first: 5) { edges { node { id Equation } } } materials: systems(first: 5) { edges { node { formula energy } } } }
Response Structure
Successful responses follow this structure:
{
"data": { /* Query results */ },
"extensions": {
"responseMetadata": {
"requestDuration": 145,
"apiVersion": "2024-06"
}
}
}
Error responses include detailed diagnostics:
{
"errors": [{
"message": "Cannot query field 'invalidField' on type 'Reaction'",
"locations": [{"line": 5, "column": 21}],
"path": ["query", "reactions", "edges", "node", "invalidField"]
}]
}
Troubleshooting
Common Issues:
HTTP Request Error: Verify network connectivity toapi.catalysis-hub.orgJSON Decode Error: Check query syntax using Catalysis Hub's GraphQL PlaygroundTimeout Errors: Addtimeoutparameter to complex queries
Acknowledgements
This project builds on the Model Context Protocol (MCP) framework and is designed to interface with the Catalysis Hub database, a comprehensive resource for catalysis research data.
Installing Catalysis Hub Server
This server has no published package — it is built from source. Open the repository and follow its README.
▸ github.com/QuentinCody/catalysishub-mcp-serverFAQ
Is Catalysis Hub Server MCP free?
Yes, Catalysis Hub Server MCP is free — one-click install via Unyly at no cost.
Does Catalysis Hub Server need an API key?
No, Catalysis Hub Server runs without API keys or environment variables.
Is Catalysis Hub Server hosted or self-hosted?
A hosted option is available: Unyly runs the server in the cloud, no local setup required.
How do I install Catalysis Hub Server in Claude Desktop, Claude Code or Cursor?
Open Catalysis Hub Server on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
GitHub
PRs, issues, code search, CI status
by GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
by mcpdotdirectCompare Catalysis Hub Server with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All development MCPs
