OpenBio-Intel View on GitHub

Open-source software, MIT licensed

Biopharma intelligence you can check line by line.

Question

Which trials use pembrolizumab, and what are they combining it with?

In first-line non-small-cell lung cancer, pembrolizumab is combined with pemetrexed and platinum chemotherapy1 and, in squamous disease, with carboplatin plus paclitaxel or nab-paclitaxel.2

In advanced renal cell carcinoma it is paired with tyrosine kinase inhibitors: axitinib3 and lenvatinib.4 Its approval history sits under the biologics application BLA 125514.5

Figure 1. The shape of an OpenBio-Intel answer. Each highlighted claim carries a citation to a primary record you can open. This example is illustrative and rendered on this page; run real queries against your own install.

Abstract

Commercial biopharma intelligence platforms are closed, priced per seat, and opaque about how their answers are produced. OpenBio-Intel is an open alternative. An agent searches seven hybrid-indexed collections holding more than 630,000 records plus a drug knowledge graph, extracts structured findings from each matching trial in parallel, and writes an answer in which every row and claim cites its source. It runs on your own infrastructure, so your questions never leave it.

1Why build this in the open

Trial registries, FDA databases, SEC filings and press releases are public. Most of what commercial platforms sell is the layer on top: extraction, entity resolution and monitoring. That layer decides which trials count, which drug names match and which numbers end up in a slide deck, and today it is a black box.

OpenBio-Intel puts that layer in a repository you can read. When a number looks wrong you can trace exactly how it was produced. When you need a new source, you add it. And because it is self-hosted, the questions your team asks, which are competitive intelligence in their own right, stay inside your network.

2Three instruments, one retrieval layer

Each instrument answers a different shape of question. They share the same sources, search and citation rules.

2.1Smart Table

Ask a question and get a cited briefing plus a comparison grid. The agent fans out one extraction worker per matching trial, shows live progress, and attaches a registry link to every row, with PubMed, SEC or news citations added only when that evidence was actually used. Export the grid to Excel or PowerPoint without re-running anything.

Screen recording of the Smart Table: a pembrolizumab combination question fans out to 114 extraction workers and returns a cited briefing and a comparison grid whose rows link to primary sources.
Figure 2. One real query, unedited. Hybrid retrieval over 600K+ trials, then 114 parallel extraction workers, then a cited briefing and a source-linked grid.

2.2Indication Landscape

Name a therapeutic area and get a competitive matrix: mechanism or target down the side, development phase across the top. Every cell is grounded in retrieved trials, FDA records and literature, and opens to the records behind it.

MechanismPhase 1Phase 2Phase 3Approved
PD-1 / PD-L1 inhibitor
KRAS G12C inhibitor
TROP2 antibody–drug conjugate
EGFR tyrosine kinase inhibitor
Bispecific T-cell engager
Figure 3. Layout of a landscape for non-small-cell lung cancer. Dot size stands for the number of programs; the values here are a schematic, not output.

2.3Catalyst Tracker

A timeline of upcoming events that move markets: Phase 3 primary completions, PDUFA action dates and advisory committee meetings. PDUFA dates are not published by the FDA, so like every commercial calendar they are mined from company filings and press releases. Here, each event shows the disclosure it came from.

  1. Q1Phase 3 primary completionfrom the trial registry
  2. Q2Advisory committee meetingfrom a company 8-K
  3. Q2PDUFA action datefrom a press release
  4. Q4Topline readout expectedfrom an earnings call
Figure 4. Event types and where each date is sourced. Schematic.

2.4Watchlists

Watch a drug, company, trial or topic. One check compares ClinicalTrials.gov updates and new FDA rejection letters against your last run and shows only what changed.

3Methods

3.1Sources

Everything comes from public primary sources. Some are indexed ahead of time, and some are queried live when you ask.

Table 1. Data sources and how each is used.
SourceWhat it providesAccess
ClinicalTrials.govAbout 600K trial records: design, phase, sponsors, interventions, conditions, datesIndexed, plus live
openFDA Drugs@FDAApprovals, application numbers, products, ingredientsIndexed
FDA Complete Response LettersFull-text rejection letters, 2025 onwardIndexed
PubMed CentralPeer-reviewed full text from the open-access subsetIndexed
SEC EDGARPipeline and R&D sections of 10-K and 8-K filingsIndexed
Corporate newsPress releases and earnings-call transcriptsIndexed
FAERSPost-market adverse events, with reporting odds ratios and 95% intervalsLive
Orange BookSmall-molecule patents and exclusivity, 10,869 productsGraph
Purple BookBiologic exclusivity, 938 applications reconstructedGraph
Conference postersEfficacy and safety tables that registries don’t carryIndexed
AACTExact SQL over all of ClinicalTrials.govOptional

3.2From question to cited answer

A classifier first checks that the question is in scope. A tool-calling agent then decides which sources apply. Drug names are resolved through a Neo4j graph built from RxNorm, so “Keytruda”, “pembrolizumab” and “MK-3475” match the same trials by exact traversal rather than by similarity. Text search fuses keyword and embedding results, and a cross-encoder reranks them. One extraction worker runs per matching record, and a final step writes the answer with its citations.

Pipeline from question to cited answer A question passes an intent gate, then a tool-calling agent queries Qdrant, Neo4j and live APIs. Results fan out to parallel extraction workers, which a synthesis step reduces into a cited answer. Questionnatural language Intent gatein-domain check Agentchooses tools Extractionone worker per record Synthesisgrounded only Cited answertable + briefing Qdrant7 hybrid collections Neo4jRxNorm + exclusivity Live APIsFAERS, registry in parallel, sharing a cached prompt
Figure 5. The pipeline. Queries run as durable jobs on a Postgres queue, so a refreshed browser tab reattaches to a running query without losing progress.

4Results

Retrieval quality is measured, not asserted. The golden set, harness and baseline are committed to the repository, and CI runs the comparison as a regression gate. Ground truth comes from exact filters on the stored records, so the retriever being tested plays no part in defining what counts as relevant.

Search using embeddings alone found nothing relevant for 13 of 50 realistic analyst queries, mostly ones naming exact development codes such as ABX464 or BBO-10203 that embeddings blur. Adding keyword search and reranking cut that to 7 and lifted mean recall by more than a third.

Embeddings only 0.44
+ keyword search, fused 0.59
+ cross-encoder rerank 0.61
Figure 6. Mean recall at 20 on the 50-query golden set over the full 597K-point corpus.
Table 2. Retrieval configurations compared.
ConfigurationRecall@20Hit rateNo result
Embeddings only0.440.7413 / 50
+ keyword search, fused0.590.848 / 50
+ cross-encoder rerank0.610.867 / 50

5Discussion

Mature platforms such as Cortellis and AlphaSense have decades of hand-curated records, consensus forecasts, investigator databases and support teams behind them. OpenBio-Intel does not try to fake any of that. It is the better choice when you need intelligence you can audit, host yourself and extend.

Table 3. OpenBio-Intel and typical commercial platforms.
OpenBio-IntelCommercial platforms
Source codeOpen, MIT licenseProprietary
HostingYour infrastructureVendor’s cloud
Your queriesStay on your networkSeen by the vendor
CitationsEvery claim links to a recordVaries
CostYour servers plus model API usagePer-seat subscription
Agent accessBuilt-in MCP serverBuilt for human UI
Forecasts and deal termsNot offeredCurated by analysts

5.1Known limitations

  • Purple Book coverage is partial, because the FDA publishes no complete extract. Results say so.
  • ASCO, ESMO and AACR abstracts are not ingested; their licenses forbid redistribution. Readouts are covered through company press releases and 8-Ks.
  • PDUFA dates are extracted from company disclosures, not official FDA data. Each one carries its source.
  • The quickstart seed is 100 records, enough to try the interface. A research-grade corpus takes hours to ingest and has real embedding cost.

6Availability

6.1Run it locally

You need Docker, an OpenAI key for embeddings and an Anthropic key for the agent. The script starts Qdrant, Neo4j, the API and the web app, then loads a small seed so you can try a query straight away at localhost:3000.

git clone https://github.com/JAGAN666/OpenBio-Intel.git
cd OpenBio-Intel
./quickstart.sh

6.2Use it from Claude

The bundled MCP server exposes every tool and the full Smart Table pipeline to Claude Desktop, Claude Code or any MCP client, running against your own data.

{
  "mcpServers": {
    "openbio-intel": {
      "command": "uv",
      "args": ["run", "--project", "/path/to/OpenBio-Intel",
               "python", "mcp_server.py"]
    }
  }
}

6.3Deploy it

The repository includes a reference AWS deployment in Terraform (ECS Fargate, a load balancer and EFS) with a GitHub Actions pipeline. It is optional; Docker Compose on a single machine works too.

Cite this software

If OpenBio-Intel supports your research, please cite it.

@software{narayanaswamy_openbiointel,
  author  = {Narayanaswamy, Jagannath},
  title   = {OpenBio-Intel},
  version = {0.1.0},
  license = {MIT},
  url     = {https://github.com/JAGAN666/OpenBio-Intel}
}

Created and maintained by Jagannath Narayanaswamy. Contributions are welcome: see the contributing guide or open an issue.