A complete rewrite of the InterSystems FHIR/AI Hackathon Kit. It still covers similar ground to V1, but is restructured into standalone tutorials by data type. A Docker setup brings up InterSystems IRIS for Health with a FHIR server.
Tutorials are Jupyter notebooks (with markdown versions) that you can run in order:
Setup scripts are included that recreate the tables earlier tutorials build, so you can start from a later tutorial.
The V1 patient chatbot with Ollama is still available as release v1.0.0 and the V1 branch.
See the README for setup steps.
Hands-on Jupyter tutorials for building Python applications on InterSystems IRIS for Health. Load CSV and FHIR data, query it with Python and SQL, run vector search, and build LangChain AI agents and MCP servers on top of it.
V1 branch.This kit is a set of tutorials to demonstrate how users can build applications with InterSystems IRIS for Health, using FHIR data, Python and AI Agents. This is designed to be a fast entrypoint to using InterSystems IRIS with Python and AI.
This is a series of interactive tutorials on building applications using Python and InterSystems IRIS For Health server as the backend data platform. There is a docker template which sets up InterSystems IRIS For Health with a FHIR server. This is followed by a series of tutorials on how to access or add data to the FHIR Server or to the SQL database from Python Application.
The tutorials also cover using vector data for fast semantic matching. This is a very effective way to build searches against unlabelled, unstructured data. It is particularly effective when combined with AI Agents.
Finally, the tutorials cover building basic AI Agents which can access the data from the InterSystems IRIS for Health instance, including building MCP servers to provide access to existing agents.
These tutorials are designed to be a rapid quickstart for you to include InterSystems IRIS into your applications.
This tutorial series has undergone a complete re-write since version 1 (published October 2025), although still covers similar ground. The previous version is still available in the V1 branch, and features the building of a patient chatbot with Vector Search on Patient vectorized and embedded Patient data. It also made use of On-device local AI with Ollama.
V2 features more standalone tutorials on using InterSystems IRIS for Health with tabular data, FHIR data and Vector data. It also covers building AI Agents and MCP servers in Python.
This re-write was driven by the desire to cover more up-to-date features in the Agentic AI world, as well as a desire to replace extremely computationally heavy, slow and ineffective local AI Models with fast and cheap OpenAI models.
This series is not an in-depth look at InterSystems IRIS. The inner workings of InterSystems IRIS are extensive and powerful. There are industry-leading features for integrating healthcare systems and transforming data that are not touched upon in this series. There is also a suite for creating analytics dashboards directly on the data being used.
In-depth programming with all of the features of InterSystems IRIS benefits from knowledge of InterSystems IRIS Classes and some knowledge of ObjectScript. However, there are still many valuable aspects of InterSystems IRIS that can be accessed through external applications as shown here.
If you are interested in going into depth with InterSystems IRIS, there are many learning courses available on the InterSystems Learning Services platform. It’s a steep learning curve, but highly fulfilling and provides access to an incredibly powerful data platform.
AI coding agents are also able to flatten this learning curve, so if you do need features revolving around connecting different health systems or transforming data in a structured and audited way, do not be afraid to ask your coding agent of choice for help on this. The effectiveness of coding agents can also be dramatically improved by equipping it with the iris-agentic-dev MCP Server to give access to InterSystems IRIS. This will be less useful for the Python uses shown in this tutorial series though.
Docker must be installed and running.
Clone the repo:
git clone https://github.com/intersystems-community/FHIR-AI-Hackathon-Kit.git
cd FHIR-AI-Hackathon-Kit
From the root of this repository:
# 1. Start InterSystems IRIS for Health with a FHIR server (use start.ps1 in PowerShell) # This also creates the .venv virtual environment (if it does not exist yet) # and installs intersystems-irispython package ./docker-iris-fhir/start.sh2. Activate the virtual environment
source .venv/bin/activate # Git Bash: source .venv/Scripts/activate | PowerShell: .venv\Scripts\Activate.ps1
3. Install dependencies
pip install -r requirements.txt
4. Add your OpenAI API key: copy the template, then replace the placeholder in .env
cp .env.example .env
All tutorials and scripts that call OpenAI read the key from the .env file in the root of this repository. For more detail on each step, see 1.1 Setting Up the Environment.
This tutorial series spans 3 main data-types:
For CSV and FHIR data, there are separate tutorials to cover the loading of data into InterSystems IRIS, and the querying of this data. For Vector data, this is combined into a single tutorial on vector search.
Following the data loading there are also tutorials on using AI Agents and creating MCP servers around our data access. These later tutorials make use of the data created in earlier tutorials, so you should either run through the earlier tutorials, or run the Python table setup scripts which perform the same steps.
Choose your path:
Each of the tutorials are IPython (Jupyter) notebooks. These are notebooks which use a continuous Python kernel with executable “cells” containing code. The variables created in this notebook stay in memory, meaning the tutorial can be run interactively, with instructions in-line with code.
Found a bug or have a suggestion? Please open an issue.
This project is licensed under the MIT License.