magentic_ui


Namemagentic_ui JSON
Version 0.1.0 PyPI version JSON
download
home_pageNone
SummaryA research prototype of a human-centered interface powered by a multi-agent system
upload_time2025-07-25 20:35:41
maintainerNone
docs_urlNone
authorNone
requires_python>=3.10
licenseNone
keywords agents ai-assistant browser-use multi-agent playwright web-automation
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <div align="center">
<img src="docs/img/magui-readme-logo.svg" alt="Magentic-UI Logo">


_Automate your web tasks while you stay in control_

[![image](https://img.shields.io/pypi/v/magentic_ui.svg)](https://pypi.python.org/pypi/magentic_ui)
[![image](https://img.shields.io/pypi/l/magentic_ui.svg)](https://pypi.python.org/pypi/magentic_ui)
![Python Versions](https://img.shields.io/badge/python-3.10%20%7C%203.11%20%7C%203.12%20%7C%203.13-blue)

</div>

---

Magentic-UI is a **research prototype** of a human-centered interface powered by a multi-agent system that can browse and perform actions on the web, generate and execute code, and generate and analyze files.

  https://github.com/user-attachments/assets/7975fc26-1a18-4acb-8bf9-321171eeade7

## 🚀 Quick Start

Here's how you can get started with Magentic-UI:

```bash
# 1. Setup environment
python3 -m venv .venv
source .venv/bin/activate
pip install magentic-ui --upgrade

# 2. Set your API key
export OPENAI_API_KEY="your-api-key-here"

# 3. Launch Magentic-UI
magentic-ui --port 8081
```

Then open <http://localhost:8081> in your browser to interact with Magentic-UI!

> **Prerequisites**: Requires Docker and Python 3.10+. Windows users should use WSL2. See [detailed installation](#️-installation) for more info.

## ✨ What's New

- **File Upload Support**: Upload any file through the UI for analysis or modification
- **MCP Agents**: Extend capabilities with your favorite MCP servers
- **No more building Dockers**: We have uploaded our docker containers to GHCR so you no longer need to build any containers!

## Alternative Usage Options

**Without Docker** (limited functionality: no code execution):
```bash
magentic-ui --run-without-docker --port 8081
```

**Command Line Interface**:
```bash
magentic-cli --work-dir PATH/TO/STORE/DATA
```

**Custom LLM Clients**:
```bash
# Azure
pip install magentic-ui[azure]

# Ollama (local models)
pip install magentic-ui[ollama]
```

For further details on installation please read the   <a href="#️-installation">🛠️ Installation</a> section. For common installation issues and their solutions, please refer to the [troubleshooting document](TROUBLESHOOTING.md). See advanced usage instructions with the command `magentic-ui --help`. 


## Quick Navigation:
<p align="center">
  <a href="#-how-it-works">🟪 How it Works</a> &nbsp;|&nbsp;
  <a href="#️-installation">🛠️ Installation</a> &nbsp;|&nbsp;
  <a href="#troubleshooting">⚠️ Troubleshooting</a> &nbsp;|&nbsp; 
  <a href="#contributing">🤝 Contributing</a> &nbsp;|&nbsp;
  <a href="#license">📄 License</a>
</p>

---

## 🟪 How it Works
<p align="center">
  <img src="./docs/img/magenticui_running.png" alt="Magentic-UI" height="400">
</p>

Magentic-UI is especially useful for web tasks that require actions on the web (e.g., filling a form, customizing a food order), deep navigation through websites not indexed by search engines (e.g., filtering flights, finding a link from a personal site) or tasks that need web navigation and code execution (e.g., generate a chart from online data).

The interface of Magentic-UI is displayed in the screenshot above and consists of two panels. The left side panel is the sessions navigator where users can create new sessions to solve new tasks, switch between sessions and check on session progress with the session status indicators (🔴 needs input, ✅ task done, ↺ task in progress).

The right-side panel displays the session selected. This is where you can type your query to Magentic-UI alongside any file attachments and observe detailed task progress as well as  interact with the agents. The session display itself is split in two panels: the left side is where Magentic-UI presents the plan, task progress and asks for action approvals, the right side is a browser view where you can see web agent actions in real time and interact with the browser. Finally, at the top of the session display is a progress bar that updates as Magentic-UI makes progress.


The example below shows a step by step user interaction with Magentic-UI:

<!-- Screenshots -->
<p align="center">
  <img src="docs/img/magui-landing.png" alt="Magentic-UI Landing" width="45%" style="margin:10px;">
  <img src="docs/img/magui-coplanning.png" alt="Co-Planning UI" width="45%" style="margin:10px;">
  <img src="docs/img/magui-cotasking.png" alt="Co-Tasking UI" width="45%" style="margin:10px;">
  <img src="docs/img/magui-actionguard.png" alt="Action Guard UI" width="45%" style="margin:10px;">
</p>


What differentiates Magentic-UI from other browser use offerings is its transparent and controllable interface that allows for efficient human-in-the-loop involvement. Magentic-UI is built using [AutoGen](https://github.com/microsoft/autogen) and provides a platform to study human-agent interaction and experiment with web agents. Key features include:

- 🧑‍🤝‍🧑 **Co-Planning**: Collaboratively create and approve step-by-step plans using chat and the plan editor.
- 🤝 **Co-Tasking**: Interrupt and guide the task execution using the web browser directly or through chat. Magentic-UI can also ask for clarifications and help when needed.
- 🛡️ **Action Guards**: Sensitive actions are only executed with explicit user approvals.
- 🧠 **Plan Learning and Retrieval**: Learn from previous runs to improve future task automation and save them in a plan gallery. Automatically or manually retrieve saved plans in future tasks.
- 🔀 **Parallel Task Execution**: You can run multiple tasks in parallel and session status indicators will let you know when Magentic-UI needs your input or has completed the task.

<div align="center">
  <a href="https://www.youtube.com/watch?v=wOs-5SR8xOc" target="_blank">
    <img src="https://img.youtube.com/vi/wOs-5SR8xOc/maxresdefault.jpg" alt="Watch the demo video" width="600"/>
  </a>
  <br>
  ▶️ <em> Click to watch a video and learn more about Magentic-UI </em>
</div>

### Autonomous Evaluation

To evaluate its autonomous capabilities, Magentic-UI has been tested against several benchmarks when running with o4-mini: [GAIA](https://huggingface.co/datasets/gaia-benchmark/GAIA) test set (42.52%), which assesses general AI assistants across reasoning, tool use, and web interaction tasks ; [AssistantBench](https://huggingface.co/AssistantBench) test set (27.60%), focusing on realistic, time-consuming web tasks; [WebVoyager](https://github.com/MinorJerry/WebVoyager) (82.2%), measuring end-to-end web navigation in real-world scenarios; and [WebGames](https://webgames.convergence.ai/) (45.5%), evaluating general-purpose web-browsing agents through interactive challenges.
To reproduce these experimental results, please see the following [instructions](experiments/eval/README.md).



If you're interested in reading more checkout our [blog post](https://www.microsoft.com/en-us/research/blog/magentic-ui-an-experimental-human-centered-web-agent/).

## 🛠️ Installation
### Pre-Requisites

**Note**: If you're using Windows, we highly recommend using [WSL2](https://docs.microsoft.com/en-us/windows/wsl/install) (Windows Subsystem for Linux).

1. If running on **Windows** or **Mac** you should use [Docker Desktop](https://www.docker.com/products/docker-desktop/) or if inside WSL2 you can install Docker directly inside WSL [docker in WSL2 guide](https://gist.github.com/dehsilvadeveloper/c3bdf0f4cdcc5c177e2fe9be671820c7). If running on **Linux**, you should use [Docker Engine](https://docs.docker.com/engine/install/). 

If using Docker Desktop, make sure it is set up to use WSL2:
    - Go to Settings > Resources > WSL Integration
    - Enable integration with your development distro You can find more detailed instructions about this step [here](https://docs.microsoft.com/en-us/windows/wsl/tutorials/wsl-containers).



2. During the Installation step, you will need to set up your `OPENAI_API_KEY`. To use other models, review the [Custom Client Configuration](#configuration) section below.

3. You need at least [Python 3.10](https://www.python.org/downloads/) installed.


If you are on Windows, we recommend to run Magentic-UI inside [WSL2](https://docs.microsoft.com/en-us/windows/wsl/install) (Windows Subsystem for Linux) for correct Docker and file path compatibility.



### PyPI Installation

Magentic-UI is available on PyPI. We recommend using a virtual environment to avoid conflicts with other packages.

```bash
python3 -m venv .venv
source .venv/bin/activate
pip install magentic-ui
```

Alternatively, if you use [`uv`](https://docs.astral.sh/uv/getting-started/installation/) for dependency management, you can install Magentic-UI with:

```bash
uv venv --python=3.12 .venv
. .venv/bin/activate
uv pip install magentic-ui
```


### Running Magentic-UI

To run Magentic-UI, make sure that Docker is running, then run the following command:

```bash
magentic-ui --port 8081
```

>**Note**: Running this command for the first time will pull two docker images required for the Magentic-UI agents. If you encounter problems, you can build them directly with the following command:
```bash
cd docker
sh build-all.sh
```

If you face issues with Docker, please refer to the [TROUBLESHOOTING.md](TROUBLESHOOTING.md) document.

Once the server is running, you can access the UI at <http://localhost:8081>.


### Configuration

#### Model Client Configuration

If you want to use a different OpenAI key, or if you want to configure use with Azure OpenAI or Ollama, you can do so inside the UI by navigating to settings (top right icon) and changing model configuration.


#### MCP Server Configuration

You can also extend Magentic-UI's capabilities by adding custom "McpAgents" to the multi-agent team. Each McpAgent can have access to one or more MCP Servers. You can specify these agents via the `mcp_agent_configs` parameter in your `config.yaml`.

For example, here's an agent called "airbnb_surfer" that has access to the OpenBnb MCP Server running locally via Stdio.

```yaml
mcp_agent_configs:
  - name: airbnb_surfer
    description: "The airbnb_surfer has direct access to AirBnB."
    model_client: 
      provider: OpenAIChatCompletionClient
      config:
        model: gpt-4.1-2025-04-14
      max_retries: 10
    system_message: |-
      You are AirBnb Surfer, a helpful digital assistant that can help users acces AirBnB.

      You have access to a suite of tools provided by the AirBnB API. Use those tools to satisfy the users requests.
    reflect_on_tool_use: false
    mcp_servers:
      - server_name: AirBnB
        server_params:
          type: StdioServerParams
          command: npx
          args:
            - -y
            - "@openbnb/mcp-server-airbnb"
            - --ignore-robots-txt
```

Under the hood, each `McpAgent` is just a `autogen_agentchat.agents.AssistantAgent` with the set of MCP Servers exposed as an `AggregateMcpWorkbench` which is simply a named collection of `autogen_ext.tools.mcp.McpWorkbench` objects (one per MCP Server).

Currently the supported MCP Server types are `autogen_ext.tools.mcp.StdioServerParams` and `autogen_ext.tools.mcp.SseServerParams`.

### Building Magentic-UI from source

This step is primarily for users seeking to make modifications to the code, are having trouble with the pypi installation or want the latest code before a pypi version release.

#### 1. Make sure the above prerequisites are installed, and that Docker is running.

#### 2. Clone the repository to your local machine:

```bash
git clone https://github.com/microsoft/magentic-ui.git
cd magentic-ui
```

#### 3. Install Magentic-UI's dependencies with uv or your favorite package manager:

```bash
# install uv through https://docs.astral.sh/uv/getting-started/installation/
uv venv --python=3.12 .venv
uv sync --all-extras
source .venv/bin/activate
```

#### 4. Build the frontend:

First make sure to install node:

```bash
# install nvm to install node
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
nvm install node
```

Then install the frontend:

```bash
cd frontend
npm install -g gatsby-cli
npm install --global yarn
yarn install
yarn build
```

#### 5. Run Magentic-UI, as usual.

```bash
magentic-ui --port 8081
```


#### Running the UI from source

If you are making changes to the source code of the UI, you can run the frontend in development mode so that it will automatically update when you make changes for faster development.

1. Open a separate terminal and change directory to the frontend

```bash
cd frontend
```

2. Create a `.env.development` file.

```bash
cp .env.default .env.development
```

3. Launch frontend server

```bash
npm run start
```

4. Then run the UI:

```bash
magentic-ui --port 8081
```

The frontend from source will be available at <http://localhost:8000>, and the compiled frontend will be available at <http://localhost:8081>.




## Troubleshooting


If you were unable to get Magentic-UI running, do not worry! The first step is to make sure you have followed the steps outlined above, particularly with the [pre-requisites](#pre-requisites).

For common issues and their solutions, please refer to the [TROUBLESHOOTING.md](TROUBLESHOOTING.md) file in this repository. If you do not see your problem there, please open a `GitHub Issue`. 

## Contributing

This project welcomes contributions and suggestions. For information about contributing to Magentic-UI, please see our [CONTRIBUTING.md](CONTRIBUTING.md) guide, which includes current issues to be resolved and other forms of contributing.

This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). For more information, see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.

## License

Microsoft, and any contributors, grant you a license to any code in the repository under the [MIT License](https://opensource.org/licenses/MIT). See the [LICENSE](LICENSE) file.

Microsoft, Windows, Microsoft Azure, and/or other Microsoft products and services referenced in the documentation
may be either trademarks or registered trademarks of Microsoft in the United States and/or other countries.
The licenses for this project do not grant you rights to use any Microsoft names, logos, or trademarks.
Microsoft's general trademark guidelines can be found at <http://go.microsoft.com/fwlink/?LinkID=254653>.

Any use of third-party trademarks or logos are subject to those third-party's policies.

Privacy information can be found at <https://go.microsoft.com/fwlink/?LinkId=521839>

Microsoft and any contributors reserve all other rights, whether under their respective copyrights, patents, or trademarks, whether by implication, estoppel, or otherwise.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "magentic_ui",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": null,
    "keywords": "agents, ai-assistant, browser-use, multi-agent, playwright, web-automation",
    "author": null,
    "author_email": "Microsoft Corporation <magui@service.microsoft.com>",
    "download_url": "https://files.pythonhosted.org/packages/3c/6e/2356b35bef11cc0793f7f718c1bfb539a1edd646eeab1cefd84c80b9fa56/magentic_ui-0.1.0.tar.gz",
    "platform": null,
    "description": "<div align=\"center\">\n<img src=\"docs/img/magui-readme-logo.svg\" alt=\"Magentic-UI Logo\">\n\n\n_Automate your web tasks while you stay in control_\n\n[![image](https://img.shields.io/pypi/v/magentic_ui.svg)](https://pypi.python.org/pypi/magentic_ui)\n[![image](https://img.shields.io/pypi/l/magentic_ui.svg)](https://pypi.python.org/pypi/magentic_ui)\n![Python Versions](https://img.shields.io/badge/python-3.10%20%7C%203.11%20%7C%203.12%20%7C%203.13-blue)\n\n</div>\n\n---\n\nMagentic-UI is a **research prototype** of a human-centered interface powered by a multi-agent system that can browse and perform actions on the web, generate and execute code, and generate and analyze files.\n\n  https://github.com/user-attachments/assets/7975fc26-1a18-4acb-8bf9-321171eeade7\n\n## \ud83d\ude80 Quick Start\n\nHere's how you can get started with Magentic-UI:\n\n```bash\n# 1. Setup environment\npython3 -m venv .venv\nsource .venv/bin/activate\npip install magentic-ui --upgrade\n\n# 2. Set your API key\nexport OPENAI_API_KEY=\"your-api-key-here\"\n\n# 3. Launch Magentic-UI\nmagentic-ui --port 8081\n```\n\nThen open <http://localhost:8081> in your browser to interact with Magentic-UI!\n\n> **Prerequisites**: Requires Docker and Python 3.10+. Windows users should use WSL2. See [detailed installation](#\ufe0f-installation) for more info.\n\n## \u2728 What's New\n\n- **File Upload Support**: Upload any file through the UI for analysis or modification\n- **MCP Agents**: Extend capabilities with your favorite MCP servers\n- **No more building Dockers**: We have uploaded our docker containers to GHCR so you no longer need to build any containers!\n\n## Alternative Usage Options\n\n**Without Docker** (limited functionality: no code execution):\n```bash\nmagentic-ui --run-without-docker --port 8081\n```\n\n**Command Line Interface**:\n```bash\nmagentic-cli --work-dir PATH/TO/STORE/DATA\n```\n\n**Custom LLM Clients**:\n```bash\n# Azure\npip install magentic-ui[azure]\n\n# Ollama (local models)\npip install magentic-ui[ollama]\n```\n\nFor further details on installation please read the   <a href=\"#\ufe0f-installation\">\ud83d\udee0\ufe0f Installation</a> section. For common installation issues and their solutions, please refer to the [troubleshooting document](TROUBLESHOOTING.md). See advanced usage instructions with the command `magentic-ui --help`. \n\n\n## Quick Navigation:\n<p align=\"center\">\n  <a href=\"#-how-it-works\">\ud83d\udfea How it Works</a> &nbsp;|&nbsp;\n  <a href=\"#\ufe0f-installation\">\ud83d\udee0\ufe0f Installation</a> &nbsp;|&nbsp;\n  <a href=\"#troubleshooting\">\u26a0\ufe0f Troubleshooting</a> &nbsp;|&nbsp; \n  <a href=\"#contributing\">\ud83e\udd1d Contributing</a> &nbsp;|&nbsp;\n  <a href=\"#license\">\ud83d\udcc4 License</a>\n</p>\n\n---\n\n## \ud83d\udfea How it Works\n<p align=\"center\">\n  <img src=\"./docs/img/magenticui_running.png\" alt=\"Magentic-UI\" height=\"400\">\n</p>\n\nMagentic-UI is especially useful for web tasks that require actions on the web (e.g., filling a form, customizing a food order), deep navigation through websites not indexed by search engines (e.g., filtering flights, finding a link from a personal site) or tasks that need web navigation and code execution (e.g., generate a chart from online data).\n\nThe interface of Magentic-UI is displayed in the screenshot above and consists of two panels. The left side panel is the sessions navigator where users can create new sessions to solve new tasks, switch between sessions and check on session progress with the session status indicators (\ud83d\udd34 needs input, \u2705 task done, \u21ba task in progress).\n\nThe right-side panel displays the session selected. This is where you can type your query to Magentic-UI alongside any file attachments and observe detailed task progress as well as  interact with the agents. The session display itself is split in two panels: the left side is where Magentic-UI presents the plan, task progress and asks for action approvals, the right side is a browser view where you can see web agent actions in real time and interact with the browser. Finally, at the top of the session display is a progress bar that updates as Magentic-UI makes progress.\n\n\nThe example below shows a step by step user interaction with Magentic-UI:\n\n<!-- Screenshots -->\n<p align=\"center\">\n  <img src=\"docs/img/magui-landing.png\" alt=\"Magentic-UI Landing\" width=\"45%\" style=\"margin:10px;\">\n  <img src=\"docs/img/magui-coplanning.png\" alt=\"Co-Planning UI\" width=\"45%\" style=\"margin:10px;\">\n  <img src=\"docs/img/magui-cotasking.png\" alt=\"Co-Tasking UI\" width=\"45%\" style=\"margin:10px;\">\n  <img src=\"docs/img/magui-actionguard.png\" alt=\"Action Guard UI\" width=\"45%\" style=\"margin:10px;\">\n</p>\n\n\nWhat differentiates Magentic-UI from other browser use offerings is its transparent and controllable interface that allows for efficient human-in-the-loop involvement. Magentic-UI is built using [AutoGen](https://github.com/microsoft/autogen) and provides a platform to study human-agent interaction and experiment with web agents. Key features include:\n\n- \ud83e\uddd1\u200d\ud83e\udd1d\u200d\ud83e\uddd1 **Co-Planning**: Collaboratively create and approve step-by-step plans using chat and the plan editor.\n- \ud83e\udd1d **Co-Tasking**: Interrupt and guide the task execution using the web browser directly or through chat. Magentic-UI can also ask for clarifications and help when needed.\n- \ud83d\udee1\ufe0f **Action Guards**: Sensitive actions are only executed with explicit user approvals.\n- \ud83e\udde0 **Plan Learning and Retrieval**: Learn from previous runs to improve future task automation and save them in a plan gallery. Automatically or manually retrieve saved plans in future tasks.\n- \ud83d\udd00 **Parallel Task Execution**: You can run multiple tasks in parallel and session status indicators will let you know when Magentic-UI needs your input or has completed the task.\n\n<div align=\"center\">\n  <a href=\"https://www.youtube.com/watch?v=wOs-5SR8xOc\" target=\"_blank\">\n    <img src=\"https://img.youtube.com/vi/wOs-5SR8xOc/maxresdefault.jpg\" alt=\"Watch the demo video\" width=\"600\"/>\n  </a>\n  <br>\n  \u25b6\ufe0f <em> Click to watch a video and learn more about Magentic-UI </em>\n</div>\n\n### Autonomous Evaluation\n\nTo evaluate its autonomous capabilities, Magentic-UI has been tested against several benchmarks when running with o4-mini: [GAIA](https://huggingface.co/datasets/gaia-benchmark/GAIA) test set (42.52%), which assesses general AI assistants across reasoning, tool use, and web interaction tasks ; [AssistantBench](https://huggingface.co/AssistantBench) test set (27.60%), focusing on realistic, time-consuming web tasks; [WebVoyager](https://github.com/MinorJerry/WebVoyager) (82.2%), measuring end-to-end web navigation in real-world scenarios; and [WebGames](https://webgames.convergence.ai/) (45.5%), evaluating general-purpose web-browsing agents through interactive challenges.\nTo reproduce these experimental results, please see the following [instructions](experiments/eval/README.md).\n\n\n\nIf you're interested in reading more checkout our [blog post](https://www.microsoft.com/en-us/research/blog/magentic-ui-an-experimental-human-centered-web-agent/).\n\n## \ud83d\udee0\ufe0f Installation\n### Pre-Requisites\n\n**Note**: If you're using Windows, we highly recommend using [WSL2](https://docs.microsoft.com/en-us/windows/wsl/install) (Windows Subsystem for Linux).\n\n1. If running on **Windows** or **Mac** you should use [Docker Desktop](https://www.docker.com/products/docker-desktop/) or if inside WSL2 you can install Docker directly inside WSL [docker in WSL2 guide](https://gist.github.com/dehsilvadeveloper/c3bdf0f4cdcc5c177e2fe9be671820c7). If running on **Linux**, you should use [Docker Engine](https://docs.docker.com/engine/install/). \n\nIf using Docker Desktop, make sure it is set up to use WSL2:\n    - Go to Settings > Resources > WSL Integration\n    - Enable integration with your development distro You can find more detailed instructions about this step [here](https://docs.microsoft.com/en-us/windows/wsl/tutorials/wsl-containers).\n\n\n\n2. During the Installation step, you will need to set up your `OPENAI_API_KEY`. To use other models, review the [Custom Client Configuration](#configuration) section below.\n\n3. You need at least [Python 3.10](https://www.python.org/downloads/) installed.\n\n\nIf you are on Windows, we recommend to run Magentic-UI inside [WSL2](https://docs.microsoft.com/en-us/windows/wsl/install) (Windows Subsystem for Linux) for correct Docker and file path compatibility.\n\n\n\n### PyPI Installation\n\nMagentic-UI is available on PyPI. We recommend using a virtual environment to avoid conflicts with other packages.\n\n```bash\npython3 -m venv .venv\nsource .venv/bin/activate\npip install magentic-ui\n```\n\nAlternatively, if you use [`uv`](https://docs.astral.sh/uv/getting-started/installation/) for dependency management, you can install Magentic-UI with:\n\n```bash\nuv venv --python=3.12 .venv\n. .venv/bin/activate\nuv pip install magentic-ui\n```\n\n\n### Running Magentic-UI\n\nTo run Magentic-UI, make sure that Docker is running, then run the following command:\n\n```bash\nmagentic-ui --port 8081\n```\n\n>**Note**: Running this command for the first time will pull two docker images required for the Magentic-UI agents. If you encounter problems, you can build them directly with the following command:\n```bash\ncd docker\nsh build-all.sh\n```\n\nIf you face issues with Docker, please refer to the [TROUBLESHOOTING.md](TROUBLESHOOTING.md) document.\n\nOnce the server is running, you can access the UI at <http://localhost:8081>.\n\n\n### Configuration\n\n#### Model Client Configuration\n\nIf you want to use a different OpenAI key, or if you want to configure use with Azure OpenAI or Ollama, you can do so inside the UI by navigating to settings (top right icon) and changing model configuration.\n\n\n#### MCP Server Configuration\n\nYou can also extend Magentic-UI's capabilities by adding custom \"McpAgents\" to the multi-agent team. Each McpAgent can have access to one or more MCP Servers. You can specify these agents via the `mcp_agent_configs` parameter in your `config.yaml`.\n\nFor example, here's an agent called \"airbnb_surfer\" that has access to the OpenBnb MCP Server running locally via Stdio.\n\n```yaml\nmcp_agent_configs:\n  - name: airbnb_surfer\n    description: \"The airbnb_surfer has direct access to AirBnB.\"\n    model_client: \n      provider: OpenAIChatCompletionClient\n      config:\n        model: gpt-4.1-2025-04-14\n      max_retries: 10\n    system_message: |-\n      You are AirBnb Surfer, a helpful digital assistant that can help users acces AirBnB.\n\n      You have access to a suite of tools provided by the AirBnB API. Use those tools to satisfy the users requests.\n    reflect_on_tool_use: false\n    mcp_servers:\n      - server_name: AirBnB\n        server_params:\n          type: StdioServerParams\n          command: npx\n          args:\n            - -y\n            - \"@openbnb/mcp-server-airbnb\"\n            - --ignore-robots-txt\n```\n\nUnder the hood, each `McpAgent` is just a `autogen_agentchat.agents.AssistantAgent` with the set of MCP Servers exposed as an `AggregateMcpWorkbench` which is simply a named collection of `autogen_ext.tools.mcp.McpWorkbench` objects (one per MCP Server).\n\nCurrently the supported MCP Server types are `autogen_ext.tools.mcp.StdioServerParams` and `autogen_ext.tools.mcp.SseServerParams`.\n\n### Building Magentic-UI from source\n\nThis step is primarily for users seeking to make modifications to the code, are having trouble with the pypi installation or want the latest code before a pypi version release.\n\n#### 1. Make sure the above prerequisites are installed, and that Docker is running.\n\n#### 2. Clone the repository to your local machine:\n\n```bash\ngit clone https://github.com/microsoft/magentic-ui.git\ncd magentic-ui\n```\n\n#### 3. Install Magentic-UI's dependencies with uv or your favorite package manager:\n\n```bash\n# install uv through https://docs.astral.sh/uv/getting-started/installation/\nuv venv --python=3.12 .venv\nuv sync --all-extras\nsource .venv/bin/activate\n```\n\n#### 4. Build the frontend:\n\nFirst make sure to install node:\n\n```bash\n# install nvm to install node\ncurl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash\nnvm install node\n```\n\nThen install the frontend:\n\n```bash\ncd frontend\nnpm install -g gatsby-cli\nnpm install --global yarn\nyarn install\nyarn build\n```\n\n#### 5. Run Magentic-UI, as usual.\n\n```bash\nmagentic-ui --port 8081\n```\n\n\n#### Running the UI from source\n\nIf you are making changes to the source code of the UI, you can run the frontend in development mode so that it will automatically update when you make changes for faster development.\n\n1. Open a separate terminal and change directory to the frontend\n\n```bash\ncd frontend\n```\n\n2. Create a `.env.development` file.\n\n```bash\ncp .env.default .env.development\n```\n\n3. Launch frontend server\n\n```bash\nnpm run start\n```\n\n4. Then run the UI:\n\n```bash\nmagentic-ui --port 8081\n```\n\nThe frontend from source will be available at <http://localhost:8000>, and the compiled frontend will be available at <http://localhost:8081>.\n\n\n\n\n## Troubleshooting\n\n\nIf you were unable to get Magentic-UI running, do not worry! The first step is to make sure you have followed the steps outlined above, particularly with the [pre-requisites](#pre-requisites).\n\nFor common issues and their solutions, please refer to the [TROUBLESHOOTING.md](TROUBLESHOOTING.md) file in this repository. If you do not see your problem there, please open a `GitHub Issue`. \n\n## Contributing\n\nThis project welcomes contributions and suggestions. For information about contributing to Magentic-UI, please see our [CONTRIBUTING.md](CONTRIBUTING.md) guide, which includes current issues to be resolved and other forms of contributing.\n\nThis project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). For more information, see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.\n\n## License\n\nMicrosoft, and any contributors, grant you a license to any code in the repository under the [MIT License](https://opensource.org/licenses/MIT). See the [LICENSE](LICENSE) file.\n\nMicrosoft, Windows, Microsoft Azure, and/or other Microsoft products and services referenced in the documentation\nmay be either trademarks or registered trademarks of Microsoft in the United States and/or other countries.\nThe licenses for this project do not grant you rights to use any Microsoft names, logos, or trademarks.\nMicrosoft's general trademark guidelines can be found at <http://go.microsoft.com/fwlink/?LinkID=254653>.\n\nAny use of third-party trademarks or logos are subject to those third-party's policies.\n\nPrivacy information can be found at <https://go.microsoft.com/fwlink/?LinkId=521839>\n\nMicrosoft and any contributors reserve all other rights, whether under their respective copyrights, patents, or trademarks, whether by implication, estoppel, or otherwise.\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "A research prototype of a human-centered interface powered by a multi-agent system",
    "version": "0.1.0",
    "project_urls": {
        "Homepage": "https://github.com/microsoft/magentic-ui",
        "Issues": "https://github.com/microsoft/magentic-ui/issues",
        "Repository": "https://github.com/microsoft/magentic-ui"
    },
    "split_keywords": [
        "agents",
        " ai-assistant",
        " browser-use",
        " multi-agent",
        " playwright",
        " web-automation"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "b222908bbc6182e84393189e0a7dccace439b0aed1d345f7b56c50bc23f6c245",
                "md5": "19d7318445c138282a17c6b687452425",
                "sha256": "82a6990d4c26fe0afeef8b41b9f40f155fd301828ec7dd387d895e6f69fa20ca"
            },
            "downloads": -1,
            "filename": "magentic_ui-0.1.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "19d7318445c138282a17c6b687452425",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 4455248,
            "upload_time": "2025-07-25T20:35:39",
            "upload_time_iso_8601": "2025-07-25T20:35:39.970990Z",
            "url": "https://files.pythonhosted.org/packages/b2/22/908bbc6182e84393189e0a7dccace439b0aed1d345f7b56c50bc23f6c245/magentic_ui-0.1.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "3c6e2356b35bef11cc0793f7f718c1bfb539a1edd646eeab1cefd84c80b9fa56",
                "md5": "28276e21c90fb3387c4121a7f71bd079",
                "sha256": "69039c0e7db73aa5b070a8f4b49eb2a846bdff5316e2308b3ce65850f84f2ca4"
            },
            "downloads": -1,
            "filename": "magentic_ui-0.1.0.tar.gz",
            "has_sig": false,
            "md5_digest": "28276e21c90fb3387c4121a7f71bd079",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 4355200,
            "upload_time": "2025-07-25T20:35:41",
            "upload_time_iso_8601": "2025-07-25T20:35:41.785310Z",
            "url": "https://files.pythonhosted.org/packages/3c/6e/2356b35bef11cc0793f7f718c1bfb539a1edd646eeab1cefd84c80b9fa56/magentic_ui-0.1.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-25 20:35:41",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "microsoft",
    "github_project": "magentic-ui",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "magentic_ui"
}
        
Elapsed time: 1.88475s