Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

mmheydari97/mcp-foundry

Open more actions menu
 
 

Azure AI Agent Service MCP Server

This MCP server integrates with Azure AI Foundry to enable connections to your existing Azure AI Agents, utilizing the wide range of models and knowledge tools available within Azure AI Foundry, such as Azure AI Search and Bing Web Grounding.

demo

GitHub watchers GitHub forks GitHub stars

Azure AI Community Discord

Features

  • 🤖 Agent Integration - Connect to your existing Azure AI Agents
  • 🔄 Seamless Workflow - Use your agents directly within any MCP client
  • 🛡️ Secure - All connections use your Azure credentials
  • 🧠 Conversation Memory - Each client session maintains isolated conversation history

Tools

  • connect_agent

    • Connect to a specific Azure AI Agent by ID
    • Inputs:
      • agent_id (string): The ID of the Azure AI Agent to connect to
      • query (string): The question or request to send to the agent
      • thread_id (string, optional): Thread ID for continuation of conversation
    • Returns: Formatted response from the agent
  • query_default_agent

    • Send a query to the default configured agent
    • Inputs:
      • query (string): The question or request to send to the agent
      • thread_id (string, optional): Thread ID for continuation of conversation
    • Returns: Formatted response from the default agent
  • list_agents

    • List all available Azure AI Agents in your project
    • Returns: List of available agents with their IDs and names

Configuration

Setting up Azure

  1. Create Azure AI Agents through Azure AI Foundry
  2. Note your Azure AI Project connection string
  3. Note your agents' IDs (you'll need these to connect to specific agents)
  4. Authenticate using Azure credentials: az login

Environment Variables

This server requires the following environment variables:

# Required
PROJECT_CONNECTION_STRING=your-project-connection-string

# Optional (configure default agent)
DEFAULT_AGENT_ID=your-default-agent-id

Installation

Prerequisites

  • Python 3.10+
  • Azure CLI (az) installed and configured
  • Existing Azure AI Agents with desired capabilities

Python Setup

# Setup environment
python -m venv .venv
.venv\Scripts\activate  # On Windows
source .venv/bin/activate  # On macOS/Linux

# Install dependencies
pip install mcp[cli] azure-identity python-dotenv azure-ai-projects aiohttp

# Run server directly (from ./src/python)
python -m azure_agent_mcp_server

If you prefer using uv:

# Setup environment with uv
uv venv
.venv\Scripts\activate  # On Windows
source .venv/bin/activate  # On macOS/Linux

# Install dependencies
uv add mcp[cli] azure-identity python-dotenv azure-ai-projects aiohttp

# Run server (F)
uv run -m azure_agent_mcp_server

TypeScript Setup

# Navigate to the TypeScript directory
cd src/typescript

# Install dependencies
npm install

# Build the server
npm run build

# Run the server
npm start

Usage with Claude Desktop

To use with Claude Desktop, add the following to your configuration file:

Python Version

{
  "mcpServers": {
    "azure-agent": {
      "command": "uv",
      "args": [
        "--directory",
        "/ABSOLUTE/PATH/TO/PARENT/FOLDER",
        "run",
        "-m",
        "azure_agent_mcp_server"
      ],
      "env": {
        "PROJECT_CONNECTION_STRING": "your-project-connection-string",
        "DEFAULT_AGENT_ID": "your-default-agent-id"
      }
    }
  }
}

If you don't want to use uv, you can use python:

{
  "mcpServers": {
    "azure-agent": {
      "command": "python",
      "args": ["-m", "azure_agent_mcp_server"],
      "cwd": "/ABSOLUTE/PATH/TO/PARENT/FOLDER",
      "env": {
        "PYTHONPATH": "/ABSOLUTE/PATH/TO/PARENT/FOLDER",
        "PROJECT_CONNECTION_STRING": "your-project-connection-string",
        "DEFAULT_AGENT_ID": "your-default-agent-id"
      }
    }
  }
}

TypeScript Version

{
  "mcpServers": {
    "azure-agent": {
      "command": "node",
      "args": ["/ABSOLUTE/PATH/TO/mcp-foundry/src/typescript/build/index.js"],
      "env": {
        "PROJECT_CONNECTION_STRING": "your-project-connection-string",
        "DEFAULT_AGENT_ID": "your-default-agent-id"
      }
    }
  }
}

Usage with Other MCP Clients

This server follows the MCP protocol specification and can be used with any MCP-compatible client. Refer to your client's documentation for specific instructions on how to connect to external MCP servers.

Development Notes

This project follows a polyglot structure with implementations in both Python and TypeScript:

Python Development

  1. Python code is located in the src/python directory
  2. Always activate the virtual environment from the project root
  3. For package installation, ensure you're in the Python directory where pyproject.toml is located

TypeScript Development

  1. TypeScript code is located in the src/typescript directory
  2. Uses ES Modules for modern JavaScript compatibility
  3. Standard npm workflow: npm installnpm run buildnpm start

License

This project is licensed under the MIT License. This means you are free to use, modify, and distribute the software, subject to the terms and conditions of the MIT License. For more details, please see the LICENSE file in the project repository.

About

A MCP Server for Azure AI Foundry

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 37.2%
  • Bicep 31.7%
  • Python 28.6%
  • Dockerfile 2.5%
Morty Proxy This is a proxified and sanitized view of the page, visit original site.