screenshotmcp
Zero-dependency synchronous Python SDK for ScreenshotMCP.
pip install screenshotmcp
Hosted mode is the default
import os
from screenshotmcp import SiteScreenshotClient
client = SiteScreenshotClient(access_token=os.environ["SCREENSHOTMCP_TOKEN"])
result = client.capture("https://example.com", device="both")
print(result["files"])
Omitting base_url targets https://snapforge.web-tasarimci.com and reports mode=hosted. Hosted use requires a free-account API key or account-bound OAuth token and shares the 500 capture credits/month pool with REST, CLI, JavaScript and MCP.
Requests carry credential-free client metadata with package name, package version and hosted/self-hosted mode. A hosted failure is surfaced as SiteScreenshotError; the SDK never falls back to localhost or another origin.
Explicit self-hosted/community mode
self_hosted = SiteScreenshotClient("http://localhost:3010")
Any explicit non-managed HTTP(S) origin is mode=self-hosted. Origins containing credentials, paths, queries or fragments are rejected.
get_job(), download_job(), and download_job_file() map to persisted screenshot job routes. The previous agentforge_site_screenshot import remains available for compatibility.
Forward-compatible raw requests
Compatible public endpoints can be called before a typed helper ships with client.request('/api/v1/...', method='POST', json_body={...}). Authentication, timeout, idempotency and error redaction remain enforced; private/admin paths are rejected.
Migration from the previous default
If an earlier Python integration relied on implicit http://localhost:3010, pass base_url="http://localhost:3010" explicitly (or the first positional base URL). Omitting base_url now intentionally selects managed SnapForge.
Hosted auth onboarding metadata
The Python library never opens a browser. Use hosted_account_urls() for safe account/login/signup/upgrade URLs. SiteScreenshotError exposes code, account_url, login_url, signup_url, and upgrade_url when returned by the hosted API. Configured bearer tokens and URL secrets are redacted from error messages and bodies.
from screenshotmcp import hosted_account_urls
print(hosted_account_urls()["signupUrl"])
Metadata
Release files for screenshotmcp 0.3.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 | Provenance | |
|---|---|---|---|---|
| screenshotmcp-0.3.0.tar.gz | 23.2 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| screenshotmcp-0.3.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 43.7 kB
Release files / screenshotmcp-0.3.0.tar.gz
| Download URL | screenshotmcp-0.3.0.tar.gz |
|---|---|
| Size | 23.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d7b38668a6d3b5f4cbf38d54f359d6c338220ba33ff1ce5d3c50411392bfb31b
|
|
BLAKE2b-256 checksum How to use checksums |
e3263655e0a4af7c03939c700553cf8e626ec6cc67f28ee8103d524f731f03b2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / screenshotmcp-0.3.0-py3-none-any.whl
| Download URL | screenshotmcp-0.3.0-py3-none-any.whl |
|---|---|
| Size | 20.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b08cb7f6708caab29630c477f33cc51ec1e2e6f670839ae449f7b3b4bedf7778
|
|
BLAKE2b-256 checksum How to use checksums |
2e3d6e72e22d53779d27f179e90f560c52ab7d7174acd1bdde6f3ab4486a4473
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Security for screenshotmcp 0.3.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.