1. Conduid
  2. Developer Tools
  3. Python Can
MCP server · Developer Tools

Python Can

The can package provides controller area network support for Python developers

Unclaimed LGPL-3.0 can-busdevtoolspython
92Excellent

Scored 7 hours ago · breakdown

About Python Can

Python Can is an MCP server published by hardbyte in the Developer Tools category: the can package provides controller area network support for Python developers.

The repository has 1.6K stars and 700 forks, with the last commit 3 months ago. Recent commit activity is the strongest signal that reported issues will get attention.

Install

From source
git clone https://github.com/hardbyte/python-can

This server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.

Ask AI

✦

Ask AI about Python Can

Powered by Claude · Grounded in docs

I know everything about Python Can. Ask me about installation, configuration, usage, or troubleshooting.

Security checks

Static checks derived from the repository 7 hours ago. Heuristics on the source, not an audit.

  • ✓README presentThe repository ships documentation.
  • ✓License declaredUsable under a stated license.
  • ✓Tests presentA test suite exists in the repository.
  • !Dependencies pinnedNo lockfile. Installs can pull different code over time.
  • ✓No dynamic code executionSource scan found no eval, dynamic Function, or shell execution.
  • !Scoped permissionsDoesn't declare a permission scope. Assume it can do anything its process can.

Releases

v4.6.14.6.1 · 12 Aug 2025Version [v4.6.1](https://github.com/hardbyte/python-can/tree/v4.6.1) - 2025-08-12 Fixed Fix initialisation of an slcan bus, when setting a bitrate. When using CAN 2.0 (not FD), the default setting for `data_bitrate` was invalid, causing an…
v4.6.0v4.6.0 · 8 Aug 2025🚀 Highlights 🆕 **New CLI tool**: `can_bridge` — bridge two physical CAN buses in software via `python -m can.bridge`. 📡 **Expanded protocol support**: 11-bit identifiers, remote frames, and error frames in the `serial` interface. CAN FD…
v4.5.04.5.0 · 28 Nov 2024Features gs_usb command-line support (and documentation updates and stability fixes) by @BenGardiner in https://github.com/hardbyte/python-can/pull/1790 Faster and more general MF4 support by @cssedev in…
v4.4.24.4.2 · 23 Jun 2024Bug Fixes Remove `abstractmethod` decorator from `Listener.stop()` (#1770, #1795) Fix `SizedRotatingLogger` file suffix bug (#1792, #1793) gs_usb: Use `BitTiming` class internally to configure bitrate (#1747, #1748) pcan: Fix unpack error…
v4.4.04.4.0 · 7 Jun 2024Features TRC 1.3 Support: Added support for .trc log files as generated by PCAN Explorer v5 and other tools, expanding compatibility with common log file formats (#1753). ASCReader refactor: improved the ASCReader code (#1717). SYSTEC…

README

python-can

|pypi| |conda| |python_implementation| |downloads| |downloads_monthly|

|docs| |github-actions| |coverage| |formatter|

.. |pypi| image:: https://img.shields.io/pypi/v/python-can.svg :target: https://pypi.python.org/pypi/python-can/ :alt: Latest Version on PyPi

.. |conda| image:: https://img.shields.io/conda/v/conda-forge/python-can :target: https://github.com/conda-forge/python-can-feedstock :alt: Latest Version on conda-forge

.. |python_implementation| image:: https://img.shields.io/pypi/implementation/python-can :target: https://pypi.python.org/pypi/python-can/ :alt: Supported Python implementations

.. |downloads| image:: https://static.pepy.tech/badge/python-can :target: https://pepy.tech/project/python-can :alt: Downloads on PePy

.. |downloads_monthly| image:: https://static.pepy.tech/badge/python-can/month :target: https://pepy.tech/project/python-can :alt: Monthly downloads on PePy

.. |formatter| image:: https://img.shields.io/badge/code%20style-black-000000.svg :target: https://github.com/python/black :alt: This project uses the black formatter.

.. |docs| image:: https://readthedocs.org/projects/python-can/badge/?version=stable :target: https://python-can.readthedocs.io/en/stable/ :alt: Documentation

.. |github-actions| image:: https://github.com/hardbyte/python-can/actions/workflows/ci.yml/badge.svg :target: https://github.com/hardbyte/python-can/actions/workflows/ci.yml :alt: Github Actions workflow status

.. |coverage| image:: https://coveralls.io/repos/github/hardbyte/python-can/badge.svg?branch=main :target: https://coveralls.io/github/hardbyte/python-can?branch=main :alt: Test coverage reports on Coveralls.io

The C\ ontroller A\ rea N\ etwork is a bus standard designed to allow microcontrollers and devices to communicate with each other. It has priority based bus arbitration and reliable deterministic communication. It is used in cars, trucks, boats, wheelchairs and more.

The can package provides controller area network support for Python developers; providing common abstractions to different hardware devices, and a suite of utilities for sending and receiving messages on a can bus.

The library currently supports CPython as well as PyPy and runs on Mac, Linux and Windows.

============================== =========== Library Version Python


2.x 2.6+, 3.4+ 3.x 2.7+, 3.5+ 4.0+ 3.7+ 4.3+ 3.8+ 4.6+ 3.9+ main branch 3.10+ ============================== ===========

Features

  • common abstractions for CAN communication
  • support for many different backends (see the docs <https://python-can.readthedocs.io/en/stable/interfaces.html>__)
  • receiving, sending, and periodically sending messages
  • normal and extended arbitration IDs
  • CAN FD <https://en.wikipedia.org/wiki/CAN_FD>__ support
  • many different loggers and readers supporting playback: ASC (CANalyzer format), BLF (Binary Logging Format by Vector), MF4 (Measurement Data Format v4 by ASAM), TRC, CSV, SQLite, and Canutils log
  • efficient in-kernel or in-hardware filtering of messages on supported interfaces
  • bus configuration reading from a file or from environment variables
  • command line tools for working with CAN buses (see the docs <https://python-can.readthedocs.io/en/stable/scripts.html>__)
  • more

Example usage

pip install python-can

.. code:: python

# import the library
import can

# create a bus instance using 'with' statement,
# this will cause bus.shutdown() to be called on the block exit;
# many other interfaces are supported as well (see documentation)
with can.Bus(interface='socketcan',
              channel='vcan0',
              receive_own_messages=True) as bus:

   # send a message
   message = can.Message(arbitration_id=123, is_extended_id=True,
                         data=[0x11, 0x22, 0x33])
   bus.send(message, timeout=0.2)

   # iterate over received messages
   for msg in bus:
       print(f"{msg.arbitration_id:X}: {msg.data}")

   # or use an asynchronous notifier
   notifier = can.Notifier(bus, [can.Logger("recorded.log"), can.Printer()])

You can find more information in the documentation, online at python-can.readthedocs.org <https://python-can.readthedocs.org/en/stable/>__.

Discussion

If you run into bugs, you can file them in our issue tracker <https://github.com/hardbyte/python-can/issues>__ on GitHub.

Stackoverflow <https://stackoverflow.com/questions/tagged/can+python>__ has several questions and answers tagged with python+can.

Wherever we interact, we strive to follow the Python Community Code of Conduct <https://www.python.org/psf/codeofconduct/>__.

Contributing

See doc/development.rst <doc/development.rst>__ for getting started.

README fetched from the repository 7 hours ago. The original is authoritative.

Questions

About Python Can

How do I install Python Can?

No package has been published for this server, so install it from source: clone the repository and follow its README.

Is Python Can safe to use with an AI agent?

Its trust score is 92 out of 100 (excellent). It passes 4 of the 6 static security checks run so far; the failures are listed above. It has no ConduID identity yet, so agent calls to it are not receipted.

Is Python Can still maintained?

Yes — the last commit was 3 months ago. The repository has 1.6K stars and 700 forks and 282 open issues.