Case study: an Open Targets Platform MCP server
This blog post is part of a series that will explore applications and expansions of the Open Targets informatics ecosystem, particularly the Open Targets Platform, through conversations with our users.
Nick Ren is an engineer with a lot of experience working alongside geneticists. In 2019, as part of David Goldstein’s group, he created ATAV, a population-scale genomic-analysis platform aiming to speed up gene discovery and improve care for patients at Columbia University Medical Center. Two years ago, Nick joined Actio Biosciences—a biotech startup founded by Goldstein—where he is now building AI-driven systems to identify novel therapeutic targets.
Nick recently created his own Model Context Protocol (MCP) server for Open Targets Platform data, which he shared on the Open Targets Community. We chat to him about the idea and process of building the server and its possible use cases.
Why did you want to create an MCP server for Open Targets data?
I've built an MCP server that exposes the Open Targets Platform GraphQL API as a set of easily callable tools. It lets developers—both inside our company, where we already rely heavily on Open Targets data, and across the wider community—query this high-quality open resource with minimal effort. I'll be wiring the server into our agentic workflows so LLM agents can automatically pull Open Targets data whenever they need it.
Another use case is within Claude Desktop: by enabling all Open Targets MCP tools and disabling the web search tool, users can ensure their questions are answered strictly based on Open Targets data.
Was there anything unexpected or particularly difficult?
The hardest part is deciding which query patterns to expose as tools. Open Targets' GraphQL schema is flexible, so I tried to anticipate every way people (or LLM agents) might look for data. I ended up creating 45 tool endpoints, yet I still worry there are edge-case queries I've missed. Striking the right balance—broad enough to cover most questions without overwhelming users with redundant tools—was the biggest challenge.
Another challenge was managing data return limits. It's a difficult trade-off: without limits, you risk performance issues from huge datasets, but with strict limits, you risk users making decisions based on incomplete data. Balancing the need for performance with the need for completeness was a significant and recurring difficulty.
How did you structure the tool?
I'm trying to keep the toolset as generic as possible so it covers most questions. Because it's based on my own knowledge and experience with the Open Targets Platform data, some gaps are inevitable. I'm continually adding new tools and refactoring existing ones to stay extensible, avoid redundancy, and prevent conflicts.
How do you see MCP servers used in the future? Have you noticed the adoption of MCP tooling in your work environment?
I've built several proof-of-concept agentic workflows, and I believe well-designed MCP servers—whether private or public—can act as plug-and-play modules that accelerate the development cycle. The Open Targets MCP, for example, could be used by a drug discovery agent that needs fast access to high-quality data alongside other sources.
As a proof of concept, I've also created a Biomedical Agent (github.com/nickzren/biomed-agent) that demonstrates how multiple MCP servers can work together. It connects to Open Targets, Monarch Initiative, MyGene, MyChem, and MyDisease servers and relies on an LLM to decide which tools to use for answering research questions. While it's still experimental and the quality depends heavily on the LLM's reasoning abilities, it shows the potential for MCP servers to be combined into more complex research workflows.
This example script implements a ReAct (Reasoning + Acting) agent that uses the MCP server as its toolset. It prompts an LLM to break down a complex question into a chain of thought, autonomously choosing and calling the right Open Targets tool at each step until it can construct a final answer.
Even non-technical users can benefit—by simply adding the Open Targets MCP server as a tool in Claude Desktop, they can ask natural language questions and get structured answers directly from the Open Targets Platform dataset.
Nick is open to feedback on his MCP server. Get in touch with him on the Community if you have tried the server!