examples/integrations/ms-agent-framework-python/README.md
This is a starter template for building CopilotKit experiences using the Microsoft Agent Framework. It ships with a Next.js UI and a FastAPI server that exposes a Microsoft Agent Framework agent over the AG-UI protocol, so you can study and customize both sides of the stack.
Install dependencies using your preferred package manager:
# Using npm (default)
npm install
# Using pnpm
pnpm install
# Using yarn
yarn install
# Using bun
bun install
Note: This automatically sets up the Python environment as well.
If you have manual issues, you can run:
shnpm run install:agent
Set up your agent credentials. The backend automatically uses Azure when the Azure env vars below are present; otherwise it falls back to OpenAI. Create a .env file inside the agent folder with one of the following configurations:
OpenAI
OPENAI_API_KEY=sk-...your-openai-key-here...
OPENAI_CHAT_MODEL_ID=gpt-4o-mini
Azure OpenAI
AZURE_OPENAI_ENDPOINT=https://your-resource.openai.azure.com/
AZURE_OPENAI_CHAT_DEPLOYMENT_NAME=gpt-4o-mini
# If you are not relying on az login:
# AZURE_OPENAI_API_KEY=...
Start the development server:
# Using npm (default)
npm run dev
# Using pnpm
pnpm dev
# Using yarn
yarn dev
# Using bun
bun run dev
This will start both the UI and the Microsoft Agent Framework server concurrently.
The following scripts can also be run using your preferred package manager:
dev β Starts both UI and agent servers in development modedev:debug β Starts development servers with debug logging enableddev:ui β Starts only the Next.js UI serverdev:agent β Starts only the Microsoft Agent Framework serverbuild β Builds the Next.js application for productionstart β Starts the production serverlint β Runs ESLint for code lintinginstall:agent β Installs Python dependencies for the agentThe main UI component is in src/app/page.tsx. You can:
Feel free to submit issues and enhancement requests! This starter is designed to be easily extensible.
This project is licensed under the MIT License β see the LICENSE file for details.
If you see "I'm having trouble connecting to my tools", make sure:
If you encounter Python import errors:
cd agent
uv sync
uv run src/main.py