Skip to main content
Glama

@arizeai/phoenix-mcp

Official
by Arize-ai
openai_agents_basic.ipynb3.65 kB
{ "cells": [ { "cell_type": "markdown", "metadata": { "id": "SUknhuHKyc-E" }, "source": [ "# <center>OpenAI agent pattern: basic agent</center>\n", "\n", "A starter guide for building a basic agent with tool calling using the `openai-agents` library. \n", "\n", "Here we've setup a basic agent that can answer questions about stocks using `web_search`. " ] }, { "cell_type": "markdown", "metadata": { "id": "n69HR7eJswNt" }, "source": [ "### Install Libraries" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install base libraries for OpenAI\n", "!pip install -q openai openai-agents\n", "\n", "# Install optional libraries for OpenInference/OpenTelemetry tracing\n", "!pip install -q arize-phoenix-otel openinference-instrumentation-openai-agents openinference-instrumentation-openai" ] }, { "cell_type": "markdown", "metadata": { "id": "jQnyEnJisyn3" }, "source": [ "### Setup Keys\n", "\n", "Add your OpenAI API key to the environment variable `OPENAI_API_KEY`.\n", "\n", "Copy your Phoenix `API_KEY` from your settings page at [app.phoenix.arize.com](https://app.phoenix.arize.com)." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "import os\n", "from getpass import getpass\n", "\n", "if \"OPENAI_API_KEY\" not in os.environ:\n", " os.environ[\"OPENAI_API_KEY\"] = getpass(\"🔑 Enter your OpenAI API key: \")\n", "\n", "if \"PHOENIX_API_KEY\" not in os.environ:\n", " os.environ[\"PHOENIX_API_KEY\"] = getpass(\"🔑 Enter your Phoenix API key: \")\n", "\n", "if \"PHOENIX_COLLECTOR_ENDPOINT\" not in os.environ:\n", " os.environ[\"PHOENIX_COLLECTOR_ENDPOINT\"] = getpass(\"🔑 Enter your Phoenix Collector Endpoint\")" ] }, { "cell_type": "markdown", "metadata": { "id": "kfid5cE99yN5" }, "source": [ "### Setup Tracing" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "from phoenix.otel import register\n", "\n", "tracer_provider = register(\n", " project_name=\"openai-agents\",\n", " auto_instrument=True,\n", ")" ] }, { "cell_type": "markdown", "metadata": { "id": "bLVAqLi5_KAi" }, "source": [ "## Create your basic agent" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "from agents import Agent, Runner, WebSearchTool\n", "\n", "agent = Agent(\n", " name=\"Finance Agent\",\n", " instructions=\"You are a finance agent that can answer questions about stocks. Use web search to retrieve up‑to‑date context. Then, return a brief, concise answer that is one sentence long.\",\n", " tools=[WebSearchTool(search_context_size=\"low\")],\n", " model=\"gpt-4.1-mini\",\n", ")" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "from pprint import pprint\n", "\n", "result = await Runner.run(agent, \"what is the latest news on Apple?\")\n", "\n", "# Get the final output\n", "print(result.final_output)\n", "\n", "# Get the entire list of messages recorded to generate the final output\n", "pprint(result.to_input_list())" ] } ], "metadata": { "language_info": { "name": "python" } }, "nbformat": 4, "nbformat_minor": 0 }

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Arize-ai/phoenix'

If you have feedback or need assistance with the MCP directory API, please join our Discord server