skillfed

msgraph-core

Core component of the Microsoft Graph Python SDK

msgraph-core v1.5.1 13.8M downloads/30d#1,265 on PyPI289
Permissive license MIT Active released

What it is and what it does

msgraph-core is the foundational HTTP client library for the Microsoft Graph Python SDK, built on the Kiota framework. It handles authentication, request building, and HTTP communication with the Microsoft Graph API. The library is async-first, designed to work with async environments, and integrates with microsoft-kiota-authentication-azure for credential management.

This is a major version rewrite from the previous core library, introducing breaking changes. It provides the BaseGraphRequestAdapter class that accepts an AuthenticationProvider to handle authenticated requests. The library captures telemetry metadata (SDK version, runtime environment, host OS) by default to improve the developer experience.

Use it for:

  • Building Python applications that interact with Microsoft Graph data via the Graph API with async/await patterns
  • Integrating authentication into custom Graph API clients without using the full SDK
  • Sending raw HTTP requests to Graph endpoints using RequestInformation objects and custom response types
  • Developing services that need to call Microsoft Graph with managed identity or environment-based credentials

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Provides core HTTP client infrastructure for the Microsoft Graph Python SDK to authenticate and send requests to the Microsoft Graph API.

Yes, if you are building a Python application that needs to call Microsoft Graph API. Install it as a dependency of the full Microsoft Graph Python SDK, or directly if you need low-level control over Graph requests. The library is production-stable, actively maintained, and has no known vulnerabilities. Requires Python 3.10+ and async-capable code.

Install

msgraph-core on PyPI

pip

pip install msgraph-core

uv

uv add msgraph-core

poetry

poetry add msgraph-core

Installing msgraph-core

Before you install

Low friction installation with a wheel distribution. Actively maintained with recent releases; last commit 2026-08-08 and production-stable status. Supports current Python versions (3.10+).

License in practice

MIT license permits commercial and private use with minimal restrictions; suitable for most projects.

Quickstart

pip install msgraph-core

from msgraph_core.authentication import AzureIdentityAuthenticationProvider
from msgraph_core import BaseGraphRequestAdapter

auth_provider = AzureIdentityAuthenticationProvider(credential)
adapter = BaseGraphRequestAdapter(auth_provider)

Requires Python 3.10 or later. Requires async-compatible environment and properly configured authentication credentials.

Verify before relying

  • Whether this library can be used standalone or only as a dependency of the full Microsoft Graph Python SDK
  • Performance characteristics and throughput limits for high-volume Graph API calls
  • Compatibility with synchronous code patterns or whether async is mandatory

Package facts

License MIT (permissive)
Python support supports the current Python release (>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 4 — microsoft-kiota-abstractions, microsoft-kiota-authentication-azure, microsoft-kiota-http, httpx
Maintenance actively maintained — 32 days since the last release
Last repo commit
First released
Downloads 13,779,426/month — #1,265 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: msgraph_core-1.5.1-py3-none-any.whl

Keywords: msgraph, openAPI, Microsoft, Graph

Development Status :: 5 - Production/StableProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14

Tags

microsoft graph api clientgraph sdk http adapterkiota http clientmicrosoft graph python coregraph authentication adapter
microsoft-graphasync-http-client

More WWW/HTTP packages

urllib3

urllib3 is an HTTP client library that provides…

permissive · top 100 on PyPI

requests

Requests is a Python HTTP library that…

permissive · top 100 on PyPI

h11

h11 is a pure-Python HTTP/1.1 protocol…

permissive · top 100 on PyPI

httpx

HTTPX is a fully featured HTTP client library…

permissive · top 100 on PyPI

httpcore

A minimal low-level HTTP client library that…

permissive · top 100 on PyPI

aiohttp

aiohttp is an async HTTP client and server…

permissive · top 100 on PyPI

microsoft-kiota-bundle

Provides default client setup and request…

permissive · top 15,000 on PyPI

microsoft-kiota-authentication-azure

Provides Azure identity authentication for HTTP…

permissive · top 5,000 on PyPI

msgraph-beta-sdk

Provides async-first Python bindings to the…

unclear · top 15,000 on PyPI

microsoft-kiota-http

Provides an HTTP client implementation for…

permissive · top 5,000 on PyPI

msgraph-sdk

Python client library for calling Microsoft…

permissive · top 5,000 on PyPI

microsoft-kiota-abstractions

Provides core abstractions and base classes…

permissive · top 5,000 on PyPI

microsoft-kiota-serialization-json

Serializes and deserializes JSON payloads for…

permissive · top 5,000 on PyPI

microsoft-kiota-serialization-multipart

Handles multipart/form-data serialization for…

permissive · top 5,000 on PyPI

microsoft-kiota-serialization-form

Handles serialization of data into…

permissive · top 5,000 on PyPI

microsoft-kiota-serialization-text

Serializes and deserializes plain text payloads…

permissive · top 5,000 on PyPI