Real-time package ecosystem data for AI coding agents -- ships the `facto` CLI
Project description
facto.run
The facto CLI shipped via PyPI.
facto is a local MCP server that feeds
real-time package ecosystem data (latest versions, release dates, runtime
EOL, lockfile audits) to AI coding agents (Claude Code, Cursor, Copilot,
...). It stops your agent from recommending outdated packages, deprecated
libraries, or metadata past its training cutoff.
Install
# Ephemeral (recommended for MCP wiring, zero-install)
uvx facto.run mcp
# Persistent: puts `facto` on your PATH
uv tool install facto.run
facto mcp
Pin a specific version:
uvx 'facto.run==0.1.0' mcp
Wire into Claude Code
claude mcp add facto -- uvx facto.run mcp
Documentation
Tool reference, threat model, configuration, and source code live in the main repository:
https://github.com/ggueret/facto
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file facto_run-0.1.0a1.tar.gz.
File metadata
- Download URL: facto_run-0.1.0a1.tar.gz
- Upload date:
- Size: 81.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3e3cadb72d611f52f679e761d04be31f558512271f0c2699c3b0cde26052c6ff
|
|
| MD5 |
0388c18005779dfdc28967bdc1e54044
|
|
| BLAKE2b-256 |
e994a146c0b190fee4d079cea2515e0fbce631064ea50cc55bf0f56ed62d13f2
|
Provenance
The following attestation bundles were made for facto_run-0.1.0a1.tar.gz:
Publisher:
release.yml on ggueret/facto
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
facto_run-0.1.0a1.tar.gz -
Subject digest:
3e3cadb72d611f52f679e761d04be31f558512271f0c2699c3b0cde26052c6ff - Sigstore transparency entry: 1810975293
- Sigstore integration time:
-
Permalink:
ggueret/facto@43cc902e51404213098752c0aca00e9bd114dd37 -
Branch / Tag:
refs/tags/v0.1.0-alpha.1 - Owner: https://github.com/ggueret
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@43cc902e51404213098752c0aca00e9bd114dd37 -
Trigger Event:
push
-
Statement type:
File details
Details for the file facto_run-0.1.0a1-py3-none-win_amd64.whl.
File metadata
- Download URL: facto_run-0.1.0a1-py3-none-win_amd64.whl
- Upload date:
- Size: 4.2 MB
- Tags: Python 3, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e9f5f208d40cb150a803b9867abc79657aed3b0d602bbdadad5020b9cce32c49
|
|
| MD5 |
3b250e3bb806256168952c4f7b2a9777
|
|
| BLAKE2b-256 |
53fd635f25d8bb433b623b0a7375b82784cba0433fc68fb4ccda6ad719fecc56
|
Provenance
The following attestation bundles were made for facto_run-0.1.0a1-py3-none-win_amd64.whl:
Publisher:
release.yml on ggueret/facto
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
facto_run-0.1.0a1-py3-none-win_amd64.whl -
Subject digest:
e9f5f208d40cb150a803b9867abc79657aed3b0d602bbdadad5020b9cce32c49 - Sigstore transparency entry: 1810975413
- Sigstore integration time:
-
Permalink:
ggueret/facto@43cc902e51404213098752c0aca00e9bd114dd37 -
Branch / Tag:
refs/tags/v0.1.0-alpha.1 - Owner: https://github.com/ggueret
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@43cc902e51404213098752c0aca00e9bd114dd37 -
Trigger Event:
push
-
Statement type:
File details
Details for the file facto_run-0.1.0a1-py3-none-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: facto_run-0.1.0a1-py3-none-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 4.6 MB
- Tags: Python 3, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8400f1bd32438c5f2178fddc863b18dc67dc91fff3fc20b4eb1e7754feed8171
|
|
| MD5 |
148bee58b3206c68062a3918fd8f8d55
|
|
| BLAKE2b-256 |
1e5d49b7ebe2b50e53f2d048b40751009b1a1739fab2552635e777699de34ce6
|
Provenance
The following attestation bundles were made for facto_run-0.1.0a1-py3-none-musllinux_1_2_x86_64.whl:
Publisher:
release.yml on ggueret/facto
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
facto_run-0.1.0a1-py3-none-musllinux_1_2_x86_64.whl -
Subject digest:
8400f1bd32438c5f2178fddc863b18dc67dc91fff3fc20b4eb1e7754feed8171 - Sigstore transparency entry: 1810975497
- Sigstore integration time:
-
Permalink:
ggueret/facto@43cc902e51404213098752c0aca00e9bd114dd37 -
Branch / Tag:
refs/tags/v0.1.0-alpha.1 - Owner: https://github.com/ggueret
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@43cc902e51404213098752c0aca00e9bd114dd37 -
Trigger Event:
push
-
Statement type:
File details
Details for the file facto_run-0.1.0a1-py3-none-musllinux_1_2_aarch64.whl.
File metadata
- Download URL: facto_run-0.1.0a1-py3-none-musllinux_1_2_aarch64.whl
- Upload date:
- Size: 4.2 MB
- Tags: Python 3, musllinux: musl 1.2+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c3bbf673566b0b7338e1568adedb83fd1d83743687da14ca9a1dbfaf72d8cb88
|
|
| MD5 |
be4c626811bc5ec3213aac423ce625f1
|
|
| BLAKE2b-256 |
10f379fb1f351a51025654effb3f6222696efaa1d8793e89763529eb6684f1be
|
Provenance
The following attestation bundles were made for facto_run-0.1.0a1-py3-none-musllinux_1_2_aarch64.whl:
Publisher:
release.yml on ggueret/facto
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
facto_run-0.1.0a1-py3-none-musllinux_1_2_aarch64.whl -
Subject digest:
c3bbf673566b0b7338e1568adedb83fd1d83743687da14ca9a1dbfaf72d8cb88 - Sigstore transparency entry: 1810975445
- Sigstore integration time:
-
Permalink:
ggueret/facto@43cc902e51404213098752c0aca00e9bd114dd37 -
Branch / Tag:
refs/tags/v0.1.0-alpha.1 - Owner: https://github.com/ggueret
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@43cc902e51404213098752c0aca00e9bd114dd37 -
Trigger Event:
push
-
Statement type:
File details
Details for the file facto_run-0.1.0a1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: facto_run-0.1.0a1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 4.5 MB
- Tags: Python 3, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7c17440a3d490b5a3295c27f1904a354c670f7a3a7ff174b735b162a3dffd058
|
|
| MD5 |
322ef6faa17352df14df3fbd2e171910
|
|
| BLAKE2b-256 |
7c118fb411e249069e657cb4c617c5d2fe75b120a43bef5da9ebd690aabde37e
|
Provenance
The following attestation bundles were made for facto_run-0.1.0a1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:
Publisher:
release.yml on ggueret/facto
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
facto_run-0.1.0a1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -
Subject digest:
7c17440a3d490b5a3295c27f1904a354c670f7a3a7ff174b735b162a3dffd058 - Sigstore transparency entry: 1810975379
- Sigstore integration time:
-
Permalink:
ggueret/facto@43cc902e51404213098752c0aca00e9bd114dd37 -
Branch / Tag:
refs/tags/v0.1.0-alpha.1 - Owner: https://github.com/ggueret
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@43cc902e51404213098752c0aca00e9bd114dd37 -
Trigger Event:
push
-
Statement type:
File details
Details for the file facto_run-0.1.0a1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: facto_run-0.1.0a1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 4.1 MB
- Tags: Python 3, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
762fcd4fb072c4c5f8e24804ee477f175f857fbc043c72a3dbadecb28f1b602b
|
|
| MD5 |
5955e630eb19998c9333bc7c8c28dc28
|
|
| BLAKE2b-256 |
fc3480c2de21c06f317a4556dc55f937f0970549e66e9cdfe0474423422a7a03
|
Provenance
The following attestation bundles were made for facto_run-0.1.0a1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:
Publisher:
release.yml on ggueret/facto
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
facto_run-0.1.0a1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl -
Subject digest:
762fcd4fb072c4c5f8e24804ee477f175f857fbc043c72a3dbadecb28f1b602b - Sigstore transparency entry: 1810975475
- Sigstore integration time:
-
Permalink:
ggueret/facto@43cc902e51404213098752c0aca00e9bd114dd37 -
Branch / Tag:
refs/tags/v0.1.0-alpha.1 - Owner: https://github.com/ggueret
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@43cc902e51404213098752c0aca00e9bd114dd37 -
Trigger Event:
push
-
Statement type:
File details
Details for the file facto_run-0.1.0a1-py3-none-macosx_11_0_arm64.whl.
File metadata
- Download URL: facto_run-0.1.0a1-py3-none-macosx_11_0_arm64.whl
- Upload date:
- Size: 4.2 MB
- Tags: Python 3, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ac065e47a00e3d0ec0c2846bc97178d149bc22a4822638d39a366a32377b63de
|
|
| MD5 |
a27ed9a9d4108bb36c1048fbb66ede08
|
|
| BLAKE2b-256 |
2b5a243693054528dac4898fb6ba0becdf8b1d52aab1ba66f23d139b495cef9d
|
Provenance
The following attestation bundles were made for facto_run-0.1.0a1-py3-none-macosx_11_0_arm64.whl:
Publisher:
release.yml on ggueret/facto
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
facto_run-0.1.0a1-py3-none-macosx_11_0_arm64.whl -
Subject digest:
ac065e47a00e3d0ec0c2846bc97178d149bc22a4822638d39a366a32377b63de - Sigstore transparency entry: 1810975348
- Sigstore integration time:
-
Permalink:
ggueret/facto@43cc902e51404213098752c0aca00e9bd114dd37 -
Branch / Tag:
refs/tags/v0.1.0-alpha.1 - Owner: https://github.com/ggueret
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@43cc902e51404213098752c0aca00e9bd114dd37 -
Trigger Event:
push
-
Statement type:
File details
Details for the file facto_run-0.1.0a1-py3-none-macosx_10_12_x86_64.whl.
File metadata
- Download URL: facto_run-0.1.0a1-py3-none-macosx_10_12_x86_64.whl
- Upload date:
- Size: 4.4 MB
- Tags: Python 3, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1c470db223b0f1926a0acefd0b68cd5ac2123f3544d1f15e69221b7651128ff0
|
|
| MD5 |
6d0944b97b7f939fa5423898dc8ee57b
|
|
| BLAKE2b-256 |
f8efe9d80a389c8401b0f1900dcff8ae7173000a7cae4511f003704488097e48
|
Provenance
The following attestation bundles were made for facto_run-0.1.0a1-py3-none-macosx_10_12_x86_64.whl:
Publisher:
release.yml on ggueret/facto
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
facto_run-0.1.0a1-py3-none-macosx_10_12_x86_64.whl -
Subject digest:
1c470db223b0f1926a0acefd0b68cd5ac2123f3544d1f15e69221b7651128ff0 - Sigstore transparency entry: 1810975320
- Sigstore integration time:
-
Permalink:
ggueret/facto@43cc902e51404213098752c0aca00e9bd114dd37 -
Branch / Tag:
refs/tags/v0.1.0-alpha.1 - Owner: https://github.com/ggueret
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@43cc902e51404213098752c0aca00e9bd114dd37 -
Trigger Event:
push
-
Statement type: