mtp-rs

Talk to MTP/PTP devices in pure Rust. No libmtp, no FFI, just async USB (uses nusb). Async streaming uploads/downloads, device events, two-level API for Android phones or raw camera access

A new way for AI to search for data
View on GitHub
50GitHub stars
354commits on main
12forks
latest release, 2026-10-31

Rust 99.2%, Just 0.8% · created 2026-01-30 · last push 2026-10-31

What XERJ indexed

Snapshot

Whole repository

The whole repository at commit 0012adcba4 (2026-10-22). main is 58 commits ahead.

Selected work

Piero
@IoSonoPiero

“List folders with GetObjectPropList when the device advertises it”. 3 files, 424 lines in crates/mtp-rs.

Licence

The repository

NOASSERTION

LICENSE file checked at the pinned commit; the author agreed to inclusion.

The XERJ corpus

NOASSERTION, with credit

The author agreed by email on 2026-10-24. Same terms as the repository. Answers name the repo, the commit and the file:line.

selected for the XERJ Corpus Hublicence clearedsuggested use: adapt with attribution

androidasynccross-platformfile-transfermedia-transfer-protocolmtpptprust

Example questions

Inside the indexed corpus

Licence on GitHub and in the corpus

GitHub reported Apache-2.0 for vdavid/mtp-rs on 2026-10-31, but the LICENSE file at commit 0012adcba4 was reviewed as NOASSERTION. The corpus is the pinned commit, so answers from it follow NOASSERTION.

Contributors

Piero (@IoSonoPiero) has 1 selected repository on the hub.

Using XERJ with mtp-rs

The prompt

Paste it into your AI agent. It clones vdavid/mtp-rs at the pinned commit and indexes it on your machine.

Search the GitHub repository vdavid/mtp-rs with XERJ (https://hub.xerj.org/corpus/vdavid--mtp-rs).
Run these in a shell, in order, and check each result before the next:
1. xerj --help  (success: it prints usage). If xerj is missing: curl -fsSL https://xerj.org/get | sh
2. git clone https://github.com/vdavid/mtp-rs mtp-rs && git -C mtp-rs checkout 0012adcba44e0f217276d84c9b0f97e9dbe13474
3. Start a local node and leave it running: xerj --insecure --data-dir ./xerj-data
4. xerj autoindex ./mtp-rs --url http://127.0.0.1:9200 --prefix mtp-rs --progress plain
5. xerj autoindex map --url http://127.0.0.1:9200
Then answer my question from the indexed files and cite the ax_path of every hit. Query syntax: https://xerj.org/llms.txt
Licence: check the LICENSE file. Keep the copyright notice and credit the authors.

Related

Stats: GitHub API, fetched 2026-10-31. Selected work and consent: the XERJ registry.