LlamaIndex Tools Integration: ChronoVerify
Verify when a photo was taken and its provenance from a LlamaIndex agent.
ChronoVerify checks an image for C2PA Content Credentials, EXIF capture metadata, and pixel-level consistency, then returns a structured verdict (provenance_confirmed, consistent, inconclusive, metadata_anomaly, or manipulation_indicated) with a confidence score from 0 to 100, the capture time, capture device, and capture location when available, and file hashes.
ChronoVerify validates provenance. It is not a deepfake or AI-generation detector. Treat results as investigative triage, not proof.
Installation
pip install llama-index-tools-chronoverify
API key
The tool works without an API key on a free, rate limited keyless tier. For metered use, get a free API key:
curl -X POST https://chronoverify.com/v1/keys/free -d "email=you@example.com"
Set it as an environment variable:
export CHRONOVERIFY_API_KEY=cv_live_...
Usage
from llama_index.tools.chronoverify import ChronoVerifyToolSpec
from llama_index.core.agent.workflow import FunctionAgent
from llama_index.llms.openai import OpenAI
tool_spec = ChronoVerifyToolSpec()
# or with a key: ChronoVerifyToolSpec(api_key="cv_live_...")
agent = FunctionAgent(
tools=tool_spec.to_tool_list(),
llm=OpenAI(model="gpt-4.1"),
)
print(
await agent.run(
"When was the photo at https://example.com/photo.jpg taken, "
"and does it carry valid provenance?"
)
)
Direct call without an agent:
result = tool_spec.verify_image_provenance(url="https://example.com/photo.jpg")
# or from a local file:
result = tool_spec.verify_image_provenance(file_path="/path/to/photo.jpg")
print(result["verdict"], result["confidence"])
Available functions
- verify_image_provenance: Verify when a photo was taken and its provenance. Accepts exactly one of
url(a public image URL) orfile_path(a local image file to upload). Returns the API response as a dict with the verdict, confidence, capture details, C2PA validation results, and integrity hashes.
API reference
- Machine-readable onboarding: https://chronoverify.com/v1/onboarding
- Response schema: https://chronoverify.com/v1/verify.schema.json
Metadata
Release files for llama-index-tools-chronoverify 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| llama_index_tools_chronoverify-0.1.0.tar.gz | 5.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| llama_index_tools_chronoverify-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 10.8 kB
Release files / llama_index_tools_chronoverify-0.1.0.tar.gz
| Download URL | llama_index_tools_chronoverify-0.1.0.tar.gz |
|---|---|
| Size | 5.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b587f11d8b4cbfcb76e75aee460753f60fd0828b99abfa080e2d8412a5081315
|
|
BLAKE2b-256 checksum How to use checksums |
af7ae12c900bdbccf458571a8df53ce9d46b28945cd93ccd305c0a55d12a00d8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.2
|
Release files / llama_index_tools_chronoverify-0.1.0-py3-none-any.whl
| Download URL | llama_index_tools_chronoverify-0.1.0-py3-none-any.whl |
|---|---|
| Size | 5.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f99de46110a320a28476275c70c384919de224b489441428a1792a920d225f06
|
|
BLAKE2b-256 checksum How to use checksums |
d1b03370fa80522e1d28b28d773c1e274a8e6aee96467cb7c899565d1145537e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.2
|