OpenAI or ChatGPT

You can use the following code to integrate b.well Health SDK with OpenAI.

Pre-requisite

Install the OpenAI python library:

pip install OpenAI

If you have already received a b.well user token from Identity Gateway

from openai import OpenAI

openai_key = "{insert your openai key here}"

user_token = "{insert your user token here}"

client = OpenAI(
    api_key=openai_key
)

mcp_fhir_agent_url = "https://mcpfhiragent.client-sandbox.icanbwell.com"

response = client.responses.create(
  model="gpt-4o",
  tools=[{
    "type": "mcp",
    "server_label": "bwell-mcp-fhir-agent",
    "server_url": mcp_fhir_agent_url,
    "require_approval": "never",
    "headers": {
          "Authorization": f"Bearer {user_token}",
          "Accept": "application/json, text/event-stream",
     },
  }],
  input=f"Get Active Medications"
)

print(response.output_text)

If you only have a client key and user JWE

from openai import OpenAI

openai_key = "{insert your openai key here}"

user_jwe = "{insert your user jwe here}"

client_key = "{insert client key assigned by b.well to your company}"

client = OpenAI(
    api_key=openai_key
)

mcp_fhir_agent_url = "https://mcpfhiragent.client-sandbox.icanbwell.com"

response = client.responses.create(
  model="gpt-4o",
  tools=[{
    "type": "mcp",
    "server_label": "bwell-mcp-fhir-agent",
    "server_url": mcp_fhir_agent_url,
    "require_approval": "never",
    "headers": {
          "Authorization": f"{user_jwe}",
          "ClientKey": f"{client_key}",
          "Accept": "application/json, text/event-stream",
     },
  }],
  input=f"Get Active Medications"
)

print(response.output_text)

Using curl

curl --request POST \
  --url https://api.openai.com/v1/responses \
  --header 'authorization: Bearer {openai key}' \
  --header 'content-type: application/json' \
  --data '{
  "model": "gpt-4o",
  "tools": [
    {
      "type": "mcp",
      "server_label": "bwell-mcp-fhir-agent",
      "server_url": "https://mcpfhiragent.client-sandbox.icanbwell.com",
      "require_approval": "never",
      "headers": {
        "Authorization": "{user jwe}",
        "ClientKey": "{client key}",
        "Accept": "application/json, text/event-stream"
      }
    }
  ],
  "input": "Get Active Medications for person_id='\''{person id}'\''"
}'