$npx skillfedfor your agent

matrix-nio

A Python Matrix client library, designed according to sans I/O principles.

Worth itPyPI InternetReleased Jul 2026943.8K downloads / moPure Python

Decision gist · record as of 2026-08-14

pure-Python wheel — matrix_nio-0.26.0-py3-none-any.whl
v0.26.0 · released 2026-07-23 · Python >=3.10 · 8 runtime deps: aiohttp, aiofiles, h11, h2, jsonschema, unpaddedbase64, pycryptodome, aiohttp-socks

Yes. matrix-nio is actively maintained, has low install friction, no known vulnerabilities, and a permissive license. It is the standard choice for Python developers building Matrix clients or bots. Install without hesitation if you need Matrix protocol support; add the [e2e] extra only if you need end-to-end encryption and can install libolm on your system.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires Python 3.10 or later.
  • For end-to-end encryption, libolm C library (version 3.x) must be installed system-wide before installing matrix-nio[e2e].
  • Low friction install with a pure-Python wheel; active maintenance with a recent release 22 days ago.

License · maintenance · safety

(unclear) — Licensed under the Internet Systems Consortium license (ISC), a permissive open-source license similar to MIT. No notable restrictions for commercial or private use.

last release 2026-07-23 (22 days) · last repo commit 2026-08-08 · 705 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 943,808 downloads/mo, #4,671 on PyPI

Verify before relying

pip install matrix-nio

import asyncio
from nio import AsyncClient

async def main():
    client = AsyncClient("https://matrix.org", "@user:matrix.org")
    await client.login("password")
    await client.sync()
    await client.close()

asyncio.run(main())
  • Whether cross-signing and server-side key backup features are planned or deprioritized
  • Performance characteristics under high message volume or large room counts
  • Compatibility with non-standard or older Matrix homeserver implementations
Same gist for agents: .md · .json

What it is and what it does

matrix-nio is a multilayered Matrix protocol client library that separates the protocol logic (sans-IO base layer) from the network transport (asyncio/aiohttp layer). It handles the full lifecycle of Matrix client operations—authentication, room management, message synchronization, and user presence—with built-in support for end-to-end encryption when the optional libolm dependency is installed.

The library is designed for developers building bots, bridges, or interactive clients that need to connect to Matrix homeservers. It provides type hints throughout, supports custom authentication flows, and includes features like typing notifications, read receipts, message redaction, and emoji verification. File uploads and downloads are encrypted when E2EE is enabled. The package depends on aiohttp for HTTP, aiofiles for async file operations, h11 and h2 for HTTP protocol handling, jsonschema for validation, and pycryptodome for cryptographic operations.

Use it for

  • Build a Matrix chat bot that listens to room messages and responds based on commands or triggers
  • Create a bridge between Matrix and another chat platform by syncing messages bidirectionally
  • Develop a custom Matrix client UI with end-to-end encryption support for secure messaging
  • Monitor Matrix rooms programmatically and log or alert on specific message patterns
  • Automate user registration and room management tasks on a Matrix homeserver

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

Worth it

Yes.

matrix-nio is actively maintained, has low install friction, no known vulnerabilities, and a permissive license. It is the standard choice for Python developers building Matrix clients or bots. Install without hesitation if you need Matrix protocol support; add the [e2e] extra only if you need end-to-end encryption and can install libolm on your system.

Install

matrix-nio on PyPI

Before you install

Low friction install with a pure-Python wheel; active maintenance with a recent release 22 days ago. Optional E2EE support requires the libolm C library (version 3.x) installed separately via system package manager.

Requires Python 3.10 or later. For end-to-end encryption, libolm C library (version 3.x) must be installed system-wide before installing matrix-nio[e2e].

License in practice

Licensed under the Internet Systems Consortium license (ISC), a permissive open-source license similar to MIT. No notable restrictions for commercial or private use.

Quickstart

pip install matrix-nio

import asyncio
from nio import AsyncClient

async def main():
    client = AsyncClient("https://matrix.org", "@user:matrix.org")
    await client.login("password")
    await client.sync()
    await client.close()

asyncio.run(main())

Verify before relying

  • Whether cross-signing and server-side key backup features are planned or deprioritized
  • Performance characteristics under high message volume or large room counts
  • Compatibility with non-standard or older Matrix homeserver implementations

Package facts

LicenseNot declared unclear
Python supportSupports the current Python release >=3.10
Install frictionLow. Pure-Python wheel
Runtime dependencies
8 packages
aiohttpaiofilesh11h2jsonschemaunpaddedbase64pycryptodomeaiohttp-socks
MaintenanceActively maintained 22 days since the last release
Last repo commit
First released
Downloads943,808 / month, #4,671 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14

Evidence: matrix_nio-0.26.0-py3-none-any.whl

Tags

Capabilities
matrix client library pythonmatrix protocol asyncioend-to-end encryption matrixmatrix chat client sdkmatrix homeserver pythonmatrix room managementmatrix live sync
Topics
matrix-protocolasync-ioe2e-encryption

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “matrix room management”

  • matrix-niomatrix-nio is an asyncio-based Python client library for the Matrix…
  • matrix-clientPython client library for connecting to and interacting with Matrix…
  • mautrixAn asyncio Matrix framework for Python that provides HTTP client…

Give your agent the search over MCP, or paste the wish link into any chat.

More Internet packages

botocore Worth it
PyPI · Internet · released Aug 2026

Botocore provides low-level, data-driven access to Amazon Web Services APIs, serving as the foundation for the AWS CLI and boto3 libraries.

Install it if you need programmatic access to AWS services.

permissive licensepure Python · 3.10+
1.5Bdownloads / mo
aiobotocore Worth it
PyPI · Internet · released Aug 2026

Provides an async client for AWS services using botocore and aiohttp, allowing you to call AWS APIs asynchronously within asyncio-based applications.

Install it if you need to call AWS services from async Python code; it is the standard way to do so.

Apache-2.0pure Python · 3.10+
1.2Bdownloads / mo
pydantic Worth it
PyPI · Python Modules · released May 2026

Pydantic validates Python data structures against type hints, coercing and checking input at runtime to ensure it matches a declared schema.

MITpure Python · 3.9+
1.1Bdownloads / mo
filelock Worth it
PyPI · Libraries · released Aug 2026

Provides a platform-independent file locking mechanism to coordinate access to files across processes and threads.

MITpure Python · 3.10+
717.1Mdownloads / mo
fastapi Worth it
PyPI · Software Development · released Jul 2026

FastAPI is a Python web framework for building REST APIs using type hints, with automatic request validation, serialization, and interactive API documentation.

MITpure Python · 3.10+
568.6Mdownloads / mo
googleapis-common-protos Worth it
PyPI · Internet · released Aug 2026

Provides common Protocol Buffer message definitions used across Google Cloud APIs, enabling Python clients to interact with Google services.

Apache-2.0pure Python · 3.10+
513.7Mdownloads / mo

See also matrix-client · mautrix · vodozemac · matrix-synapse · aiohttp · aiorecollect · aioridwell · python-olm · aiosignal · sqlcipher3