mcpField
A
Agentic Target Evidence

Agentic Target Evidence

Local
github.com/athrilHealth0Updated 3w ago

About Agentic Target Evidence

Agentic Target Evidence gathers biomedical evidence to assess whether a gene is a viable drug target for a disease. Researchers can run a multi-agent analysis or query its read-only source tools; results include a scored, sourced dossier and are intended as preliminary research support.

Key features

  1. 01Evidence retrieval from biomedical sources
  2. 02Six-lens target assessment
  3. 03Consensus verdict and suitability score
  4. 04Provenance-linked evidence dossier
  5. 05Browser chat for ad hoc lookups

Use cases

  1. 01Assess a gene as a target for a disease
  2. 02Review evidence across genetics, safety, and clinical lenses
  3. 03Look up a source-specific gene fact
  4. 04Explore evidence through a chat interface

MCP support

Its MCP gateway combines biomedical connectors into one server with read-only tools for ad hoc queries from MCP clients. The full analysis pipeline also uses the same connectors, primarily in-process.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"athril-agentic-target-evidence": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"MCP_TRANSPORT",
"-e",
"NCBI_API_KEY",
"-e",
"USPTO_API_KEY",
"ghcr.io/athril/agentic-target-evidence/mcp-gateway:v0.1.4"
],
"env": {
"MCP_TRANSPORT": "<MCP_TRANSPORT>",
"NCBI_API_KEY": "<NCBI_API_KEY>",
"USPTO_API_KEY": "<USPTO_API_KEY>"
}
}
}
}
Run commanddocker run -i --rm -e MCP_TRANSPORT -e NCBI_API_KEY -e USPTO_API_KEY ghcr.io/athril/agentic-target-evidence/mcp-gateway:v0.1.4
Environment variables to set
MCP_TRANSPORTRun the gateway over stdio (the image defaults to HTTP).
NCBI_API_KEYSecretOptional NCBI E-utilities key; raises the PubMed/ClinVar rate limit from 3 to 10 req/s.
USPTO_API_KEYSecretOptional USPTO Open Data Portal key; the USPTO patent tools return nothing without it.

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
ocighcr.io/athril/agentic-target-evidence/mcp-gateway:v0.1.4

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

Agentic Target Evidence

TestingCI codecov
Containersmcp-servers mcp-gateway agents-knowledge agents-reasoning report-agent planner chat
ToolingPython uv Ruff Checked with mypy
StackLangGraph MCP Langfuse Postgres
MetaLicense Contributions welcome Code of Conduct

A multi-agent system that gathers and interprets evidence on whether a gene is a viable drug target for a disease. Given a (gene, disease, direction) triple — e.g. BRCA1, breast cancer, inhibit — it retrieves evidence from ~two dozen biomedical sources, screens and interprets it through six independent lenses (genetics, biology, safety, clinical, commercial, regulatory), and produces a provenanced dossier: a consensus verdict, a single 0–100 suitability score, per-lens narratives, and a categorized, link-rich evidence list.

Every source connector — DepMap, gnomAD, ClinicalTrials.gov, OpenTargets, PubMed, FAERS, and ~20 more — lives once under src/mcp_servers/ and is consumed two ways: in-process by the pipeline's agents (fast, typed, no protocol tax), or through the MCP gateway, which composes the same connectors into one MCP server exposing ~40 read-only tools to any MCP host — Claude Desktop, Claude Code, your own agent — for ad hoc lookups outside a full run. A bundled chat assistant offers the same lookups from a browser. See § MCP gateway & servers below.

Built on LangGraph (orchestration) + MCP (the data layer), with full tracing (Langfuse + OpenTelemetry), Postgres-backed checkpointing, and configurable local/cloud LLM routing.

Every verdict is LLM-generated over retrieved evidence — a preliminary research aid, not ground truth. It is built to accelerate the evidence-gathering phase of target validation, not to replace expert review. See NOTICE.md for the full disclaimer, licenses, and data notices.

📄 See it in action: Example dossier — TRPC6 in Focal Segmental Glomerulosclerosis. A real end-to-end run: consensus verdict, 0–100 suitability score, six per-lens narratives, and a link-rich evidence list over 135 kept sources.


Quickstart

uv sync                  # Python ≥ 3.12, via uv: https://docs.astral.sh/uv/
cp .env.example .env      # fill in any keys you want; most sources are keyless

make up                   # infra + Langfuse + OTEL + the app, as containers
make run GENE=BRCA1 DISEASE="breast cancer"

Output lands under results/report/{gene}/{disease}/{direction}/report.md. The Langfuse trace UI is at http://localhost:3000. Windows: use make.bat instead of make — see docs/tutorial.md.

Don't want a full run? Ask one-off questions against the same connectors (e.g. "What's TRPC6's DepMap dependency score?") via the bundled chat UI or Claude Desktop/Code — see docs/mcp_tutorial.md.

Pre-built images

make up builds all service images locally. Every tagged release also publishes the same images to GHCR, so you can pull instead of building:

docker pull ghcr.io/athril/agentic-target-evidence/mcp-servers:latest
docker pull ghcr.io/athril/agentic-target-evidence/mcp-gateway:latest
docker pull ghcr.io/athril/agentic-target-evidence/agents-knowledge:latest
docker pull ghcr.io/athril/agentic-target-evidence/agents-reasoning:latest
docker pull ghcr.io/athril/agentic-target-evidence/report-agent:latest
docker pull ghcr.io/athril/agentic-target-evidence/planner:latest
docker pull ghcr.io/athril/agentic-target-evidence/chat:latest

latest tracks the most recent release; pin a version instead (e.g. :v0.1.2) for reproducibility. To use these instead of a local build, replace a service's build: block in docker-compose.yml with image: ghcr.io/athril/agentic-target-evidence/<target>:<tag>.


MCP gateway & servers

Every biomedical source connector lives under src/mcp_servers/ as a self-contained tools.py + MCP server.py pair — 27 source connectors, ~46 read-only tools, spanning 30+ named public sources (some connector folders bundle more than one upstream API — see docs/data_sources.md) plus your own internal data:

ChEMBL · ClinGen · ClinicalTrials.gov · ClinVar · DepMap · DGIdb · ENCODE · Expression Atlas · GBD (IHME) · GenCC · gnomAD · Google Patents · GTEx · GWAS Catalog · HGNC · HPA · IMPC · Monarch Initiative · MONDO · OMIM · OpenAlex · OpenFDA · OpenTargets · Orphanet · Project Score · PubMed · SCImago (SJR) · SPOKE · TTD · UniProt · USPTO · internal data (your org's private tables)

Full per-source details (what each provides, licensing/gating status) in docs/data_sources.md. The MCP gateway (src/mcp_gateway/server.py) dynamically discovers and composes all of them into one MCP server, with no hand-maintained registry — drop a new src/mcp_servers/<name>/server.py in and it's mounted automatically (subject to feature gates; internal_data is never mounted).

Three ways to reach it, without running the full pipeline:

ClientWhat it is
Chat assistantA Gradio chat UI backed by a local Ollama model — make chat or see docs/mcp_tutorial.md.
Claude Desktop / Claude CodeConnect over stdio alongside your other MCP servers.
Any other MCP clientCall the tools programmatically over HTTP (bearer-token auth via MCP_GATEWAY_TOKEN).

Self-hosting the gateway alone (no pipeline, no other services) is a single container: docker run -p 8765:8765 ghcr.io/athril/agentic-target-evidence/mcp-gateway:latest — it defaults to HTTP on 0.0.0.0:8765. Point any MCP client at http://<host>:8765/mcp.

To use it from Claude Desktop or Claude Code without cloning the repo, have the client launch the same image over stdio — add this to claude_desktop_config.json (or .mcp.json):

{
  "mcpServers": {
    "agentic-target-evidence": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "-e", "MCP_TRANSPORT=stdio",
               "-e", "NCBI_API_KEY", "-e", "USPTO_API_KEY",
               "ghcr.io/athril/agentic-target-evidence/mcp-gateway:latest"]
    }
  }
}

Both keys are optional (-e NAME with no value forwards it from your environment). The gateway is also listed in the official MCP Registry as io.github.athril/agentic-target-evidence.

For all bulk retrieval the pipeline never talks to the gateway — it imports each tools.py directly, keeping the hot path free of protocol overhead. The gateway is a second, additive surface onto the same connectors, for ad hoc use outside a full run. (The one in-pipeline gateway client is the synthesis-phase Investigator agent, which calls retrieval tools over MCP to close evidence gaps before the report; it degrades gracefully if the gateway is down.) For the design — exposure model, security, transports, discovery internals — see docs/mcp_gateway.md; for a step-by-step walkthrough, see docs/mcp_tutorial.md.


Documentation

Full documentation lives in docs/. Start there — it has reading paths for "I just want to run it," "I want to understand the design," and "I want to contribute." A few entry points:

DocWhat it covers
docs/README.mdStart here. Doc set index, full table of documents, and reading paths by goal (run it, understand the design, contribute).
docs/tutorial.mdRun an analysis and read the resulting dossier.
docs/mcp_tutorial.mdAd hoc tool access via the MCP gateway and chat assistant, step by step.
docs/mcp_gateway.mdMCP gateway reference: exposure model, security, transports, discovery internals.
docs/data_sources.mdEvery source connector, what it provides, and its licensing/gating status.
docs/restricted.mdStep-by-step setup for gated sources (OMIM, SCImago, GBD, TTD): API keys, data downloads, verification.
docs/architecture.mdThe full design: pipeline graph, HITL, capabilities, observability.
docs/developers.mdExtension points and conventions for contributing.
docs/faq.mdNuances and easy-to-get-wrong points, as Q&A.

Contributing

Contributions are welcome — see CONTRIBUTING.md for setup, conventions, and how to submit a change, and docs/developers.md for extension points. Please also read our Code of Conduct.


License

Apache-2.0. Some data sources carry narrower terms and are gated off by default — see docs/data_sources.md for the reference table, docs/restricted.md for step-by-step setup, and NOTICE.md for the full disclaimer and per-source licenses.


Contact

Patryk Orzechowski, Ph.D.

Email LinkedIn Google Scholar

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.