Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Get Started with Microsoft Agent Framework Copilot Studio

Please install this package via pip:

pip install agent-framework-copilotstudio --pre

Copilot Studio Agent

The Copilot Studio agent enables integration with Microsoft Copilot Studio, allowing you to interact with published copilots through the Agent Framework.

Prerequisites

Before using the Copilot Studio agent, you need:

  1. Copilot Studio Environment: Access to a Microsoft Copilot Studio environment with a published copilot
  2. App Registration: An Azure AD App Registration with appropriate permissions for Power Platform API
  3. Environment Configuration: Set the required environment variables or pass them as parameters

Environment Variables

The following environment variables are used for configuration:

  • COPILOTSTUDIOAGENT__ENVIRONMENTID - Your Copilot Studio environment ID
  • COPILOTSTUDIOAGENT__SCHEMANAME - Your copilot's agent identifier/schema name
  • COPILOTSTUDIOAGENT__AGENTAPPID - Your App Registration client ID
  • COPILOTSTUDIOAGENT__TENANTID - Your Azure AD tenant ID

Basic Usage Example

import asyncio
from agent_framework.microsoft import CopilotStudioAgent

async def main():
    # Create agent using environment variables
    agent = CopilotStudioAgent()

    # Run a simple query
    result = await agent.run("What is the capital of France?")
    print(result)

asyncio.run(main())

Explicit Configuration Example

import asyncio
import os
from agent_framework.microsoft import CopilotStudioAgent, acquire_token
from microsoft_agents.copilotstudio.client import ConnectionSettings, CopilotClient, PowerPlatformCloud, AgentType

async def main():
    # Acquire authentication token
    token = acquire_token(
        client_id=os.environ["COPILOTSTUDIOAGENT__AGENTAPPID"],
        tenant_id=os.environ["COPILOTSTUDIOAGENT__TENANTID"]
    )

    # Create connection settings
    settings = ConnectionSettings(
        environment_id=os.environ["COPILOTSTUDIOAGENT__ENVIRONMENTID"],
        agent_identifier=os.environ["COPILOTSTUDIOAGENT__SCHEMANAME"],
        cloud=PowerPlatformCloud.PROD,
        copilot_agent_type=AgentType.PUBLISHED,
        custom_power_platform_cloud=None,
        # Raise aiohttp's per-line buffer above the 512 KB default so large Copilot Studio
        # activities (for example, sizeable connector payloads) don't raise LineTooLong.
        client_session_settings={"read_bufsize": 1024 * 1024},
    )

    # Create client and agent
    client = CopilotClient(settings=settings, token=token)
    agent = CopilotStudioAgent(client=client)

    # Run a query
    result = await agent.run("What is the capital of Italy?")
    print(result)

asyncio.run(main())

Authentication

The package uses MSAL (Microsoft Authentication Library) for authentication with interactive flows when needed. Ensure your App Registration has:

  • API Permissions: Power Platform API permissions (https://api.powerplatform.com/.default)
  • Redirect URIs: Configured appropriately for your authentication method
  • Public Client Flows: Enabled if using interactive authentication

Examples

For more comprehensive examples, see the Copilot Studio examples which demonstrate:

  • Basic non-streaming and streaming execution
  • Explicit settings and manual token acquisition
  • Different authentication patterns
  • Error handling and troubleshooting

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

agent_framework_copilotstudio-1.0.0b260813.tar.gz (9.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file agent_framework_copilotstudio-1.0.0b260813.tar.gz.

File metadata

  • Download URL: agent_framework_copilotstudio-1.0.0b260813.tar.gz
  • Upload date:
  • Size: 9.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.32 {"installer":{"name":"uv","version":"0.11.32","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for agent_framework_copilotstudio-1.0.0b260813.tar.gz
Algorithm Hash digest
SHA256 1ad7a88d8a00f87f0401d6050dbeb7baaff8f8fcbdfe18230c7f4f7ad61d58e0
MD5 c37c06f5ecb609f2c6a1a06d9dab21a7
BLAKE2b-256 c8eab0fc375ad21ed7033c9c0f330d9ba97831e61e31cf673da824025f930ef7

See more details on using hashes here.

File details

Details for the file agent_framework_copilotstudio-1.0.0b260813-py3-none-any.whl.

File metadata

  • Download URL: agent_framework_copilotstudio-1.0.0b260813-py3-none-any.whl
  • Upload date:
  • Size: 10.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.32 {"installer":{"name":"uv","version":"0.11.32","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for agent_framework_copilotstudio-1.0.0b260813-py3-none-any.whl
Algorithm Hash digest
SHA256 4512bd5e9d7c6185bf8dfc521b34749024698c4d0fad48531cdc4fd27c0c00d9
MD5 da8b84d416af6fee6d8793ff42ac8f64
BLAKE2b-256 f4527097c911dd1efae7a0f828c824892571ccd8b746c0793498529c1f33fbea

See more details on using hashes here.

Release history Release notifications | RSS feed

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page