How to Use the Epic Fhir MCP in CrewAI
Deploy autonomous agent crews on Epic data with CrewAI. Assign roles for patient search, data analysis, and clinical summarization.
Works with every AI agent you already use
…and any MCP-compatible client
Connect Epic Fhir MCP to CrewAI
Create your Vinkius account to connect Epic Fhir to CrewAI and route execution through our secure gateway. The platform manages server hosting, runtime updates, and security layers. Configuration requires no manual server provisioning.
Assemble a Clinical Research Crew
This server gives your CrewAI agents the tools to work together on patient data. Assign one agent the role of 'Patient Finder' and give it the `search_patients` tool. A second 'Data Analyst' agent can then take the patient ID and use `list_conditions` and `list_medications` to pull the history. A final 'Summarizer' agent can take the structured data from the analyst and write a clean summary. CrewAI's shared memory means the agents pass context seamlessly. You're not just running a script; you're coordinating a team.
Monitor Patient Data with Specialized Agents
Create a 'Vitals Monitor' agent that periodically uses the `list_observations` tool to check for new `vital-signs` data. If it spots an anomaly, it can pass the patient ID to an 'Escalation' agent. The 'Escalation' agent could then use `get_patient` to get contact info and `list_appointments` to see the primary provider, then formulate a notification. This is how you build an autonomous monitoring system using this MCP server and CrewAI.
Delegate Data Pulls with a CrewAI MCP Server
Stop writing monolithic data-fetching scripts. With CrewAI, you can have one agent dedicated to pulling `list_diagnostic_reports` and another focused on `list_immunizations`. You can filter which tools each agent in your crew gets, enforcing separation of concerns. This approach makes your system cleaner and easier to debug. If the immunization data is wrong, you know exactly which agent—and which tool call—is the source of the problem. It's a smarter way to work with complex data sources like the Epic FHIR API.
Set up Epic Fhir MCP in CrewAI
Prerequisites
- Python 3.10+ installed
-
crewaipackage (pip install crewai) - Active Vinkius subscription with a valid endpoint token
- 1
Install CrewAI
Run
pip install crewaito install the framework. MCP support is built-in via themcpsparameter. - 2
Add the MCP URL to your agent
Pass your Vinkius endpoint directly to the
mcpslist. Replace[YOUR_TOKEN_HERE]with your token from cloud.vinkius.com. CrewAI handles tool discovery and caching automatically. - 3
Kick off your crew
Create a
Crewwith your agent and tasks. Callcrew.kickoff()— the agent will automatically invoke Epic Fhir tools as needed.
from crewai import Agent, Task, Crew
agent = Agent(
role="Epic Fhir Analyst",
goal="Access and analyze Epic Fhir data via MCP.",
backstory="Expert analyst with direct Epic Fhir access.",
mcps=[
"https://edge.vinkius.com/[YOUR_TOKEN_HERE]/mcp"
],
)
task = Task(
description="List recent Epic Fhir transactions",
agent=agent,
expected_output="A summary of recent activity",
)
crew = Crew(agents=[agent], tasks=[task])
result = crew.kickoff()
print(result) Prerequisites
- Python 3.10+ installed
-
crewai+crewai-toolspackages - Active Vinkius subscription with a valid endpoint token
- 1
Install dependencies
Run
pip install crewai crewai-tools. TheMCPServerAdapterhandles lifecycle management and tool conversion. - 2
Connect with MCPServerAdapter
Use
MCPServerAdapteras a context manager withSseServerParameterspointing to your Vinkius endpoint. The adapter automatically manages connection lifecycle. - 3
Assign tools and run
Pass the returned
mcp_toolsto your agent'stoolsparameter. The adapter converts MCP tools to nativeBaseToolobjects compatible with all CrewAI agents.
from crewai import Agent, Task, Crew
from crewai_tools import MCPServerAdapter
from mcp import SseServerParameters
server_params = SseServerParameters(
url="https://edge.vinkius.com/[YOUR_TOKEN_HERE]/mcp"
)
with MCPServerAdapter(server_params) as mcp_tools:
agent = Agent(
role="Epic Fhir Analyst",
goal="Access and analyze Epic Fhir data via MCP.",
backstory="Expert analyst with direct Epic Fhir access.",
tools=mcp_tools,
)
task = Task(
description="List recent Epic Fhir transactions",
agent=agent,
expected_output="A summary of recent activity",
)
crew = Crew(agents=[agent], tasks=[task])
result = crew.kickoff()
print(result) Independent Platform Disclaimer: Vinkius is an independent platform and is not affiliated with, endorsed by, sponsored by, verified by, or otherwise authorized by Epic Fhir. All third-party trademarks, logos, and brand names are the property of their respective owners. Their use on this website is strictly for informational purposes to identify service compatibility and interoperability.
Why Choose Vinkius
Vinkius connects your tools to AI with real-time monitoring and automatic cost savings — all from one dashboard.
Real-time monitoring
Live
visibility into every interaction
Connect your favorite tools to your AI and see exactly what's happening — every request, every response, in real time.
Built-in savings
60%
lower AI costs
Vinkius compresses data between your apps and your AI automatically. Lower bills every month — no configuration required.
Single dashboard
One
place for every integration
Every tool your AI connects to, managed from a single screen. One account, complete control.
Common questions about Epic Fhir MCP in CrewAI
Use it with your favorite AI tools
Connect this server to Cursor, Claude, VS Code, and more.
Start using the Epic Fhir MCP today
We host it, we monitor it, we maintain it. You just paste one token.