A newer version of the Gradio SDK is available:
6.1.0
MCP Integration Guide
Last Updated: 2025-12-06
This guide covers setting up DeepBoner's MCP (Model Context Protocol) server for integration with Claude Desktop and other MCP clients.
Overview
DeepBoner exposes an MCP server via Gradio's built-in support. This allows Claude Desktop and other MCP-compatible clients to use DeepBoner's search tools directly.
MCP Server URL
When DeepBoner is running:
http://localhost:7860/gradio_api/mcp/
On HuggingFace Spaces:
https://mcp-1st-birthday-deepboner.hf.space/gradio_api/mcp/
Available Tools
| Tool | Description |
|---|---|
search_pubmed |
Search peer-reviewed biomedical literature |
search_clinical_trials |
Search ClinicalTrials.gov for active/completed trials |
search_europepmc |
Search Europe PMC preprints and papers |
search_all_sources |
Search all sources simultaneously with deduplication |
Tool Signatures
def search_pubmed(query: str, max_results: int = 10) -> list[Evidence]:
"""Search PubMed for biomedical literature."""
def search_clinical_trials(query: str, max_results: int = 10) -> list[Evidence]:
"""Search ClinicalTrials.gov."""
def search_europepmc(query: str, max_results: int = 10) -> list[Evidence]:
"""Search Europe PMC."""
def search_all_sources(query: str, max_results_per_source: int = 10) -> SearchResult:
"""Search all sources with cross-source deduplication."""
Claude Desktop Setup
1. Start DeepBoner
uv run python src/app.py
2. Configure Claude Desktop
Edit your Claude Desktop configuration:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Add the MCP server:
{
"mcpServers": {
"deepboner": {
"url": "http://localhost:7860/gradio_api/mcp/"
}
}
}
3. Restart Claude Desktop
Close and reopen Claude Desktop to load the new configuration.
4. Verify Connection
In Claude Desktop, you should see DeepBoner's tools available. Try:
Use the search_pubmed tool to find recent papers on testosterone therapy
Using with HuggingFace Spaces
Point to the deployed Space:
{
"mcpServers": {
"deepboner-cloud": {
"url": "https://mcp-1st-birthday-deepboner.hf.space/gradio_api/mcp/"
}
}
}
Note: HuggingFace Spaces may sleep after inactivity. The first request will wake the Space (30-60 second delay).
Tool Implementation
Tools are defined in src/mcp_tools.py:
def search_pubmed(query: str, max_results: int = 10) -> list[Evidence]:
"""Search PubMed for biomedical literature.
Args:
query: Search query for PubMed
max_results: Maximum number of results to return
Returns:
List of Evidence objects with citations
"""
tool = PubMedTool()
result = tool.search(query, max_results=max_results)
return result.evidence
Adding New Tools
To expose additional tools via MCP:
- Add the function to
src/mcp_tools.py:
def search_openalex(query: str, max_results: int = 10) -> list[Evidence]:
"""Search OpenAlex for scholarly metadata."""
tool = OpenAlexTool()
result = tool.search(query, max_results=max_results)
return result.evidence
- Register in Gradio app (
src/app.py):
The tools are automatically exposed via Gradio's MCP support when added to the interface.
Troubleshooting
Tools not appearing in Claude Desktop
Verify DeepBoner is running:
curl http://localhost:7860/gradio_api/mcp/Check config syntax:
cat ~/Library/Application\ Support/Claude/claude_desktop_config.json | python -m json.toolRestart Claude Desktop
Connection refused
- Check DeepBoner is running on port 7860
- Verify no firewall blocking
- Try accessing in browser: http://localhost:7860
Slow responses
- First query loads ML models
- HuggingFace Space may need to wake up
- External APIs have rate limits
Authentication errors
MCP server doesn't require authentication for local use. For production:
- Use API gateway
- Implement auth middleware
Security Considerations
Local Development
Local MCP server is accessible only from localhost by default.
Production
For production deployments:
- Use HTTPS - Enable TLS via reverse proxy
- Add authentication - Consider API keys or OAuth
- Rate limit - Prevent abuse
- Monitor - Log tool usage
Data Privacy
- Search queries are sent to external APIs (PubMed, etc.)
- Review external API privacy policies
- Don't expose sensitive research queries
Protocol Details
MCP Protocol Version
DeepBoner uses MCP protocol via Gradio 6.x integration.
Request/Response Format
Requests follow the MCP specification:
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "search_pubmed",
"arguments": {
"query": "testosterone therapy",
"max_results": 10
}
},
"id": 1
}