ProtocolBox 📦
The Standard Library for the Agentic Web.
https://protocolbox.in
ProtocolBox is a collection of high-reliability MCP (Model Context Protocol) tools designed for AI Agents. It provides verified, token-efficient utilities that work out-of-the-box with Claude, Gemini, and other MCP-compliant agents.
🚀 Installation
pip install protocolbox
Initialize the configuration for your agent:
protocolbox init
🛠️ Tools
ProtocolBox currently exports 8 tools optimized for agent workflows:
| Tool | Signature | Description |
|---|---|---|
| Scrape | scrape(url: str) -> str |
Fetches a webpage and converts it to clean, token-saving Markdown. Removes ads, scripts, and clutter automatically. |
| Heal JSON | heal_json(json_str: str) -> dict |
Repairs malformed JSON strings often produced by LLMs (trailing commas, missing quotes, etc.) into valid Python dictionaries. |
| Web Search | web_search(query: str, max_results: int) -> str |
Privacy-focused web search using DuckDuckGo. Returns formatted Markdown results. |
| Safe Math | safe_math(expression: str) -> str |
Securely evaluates mathematical expressions without eval(). Supports arithmetic and common math functions. |
| Get Time | get_time(timezone: str) -> str |
Returns the current real-world time in any timezone (ISO 8601 format). |
| Get Transcript | get_transcript(video_url: str) -> str |
Fetches the English transcript of a YouTube video as clean text. |
| Remember | remember(key: str, value: str) -> str |
Stores a key-value pair in persistent local memory. |
| Recall | recall(key: str) -> str |
Retrieves a value from persistent local memory by key. |
⚡ Usage
Start the MCP server to expose these tools to your agent:
protocolbox start
Or using uv:
uv run protocolbox start
📦 Project Structure
protocolbox/
├── src/protocolbox/ # Core package
│ ├── server.py # FastMCP server
│ ├── cli.py # CLI entry point
│ └── tools/ # Tool implementations
│ ├── scraper.py # scrape()
│ ├── json_healer.py# heal_json()
│ ├── search.py # web_search()
│ ├── math_utils.py # safe_math()
│ ├── time_utils.py # get_time()
│ ├── youtube.py # get_transcript()
│ └── memory.py # remember() + recall()
├── tests/ # 280+ edge-case tests
├── docs/ # Documentation site
└── pyproject.toml # Project config
👨💻 Development
We recommend uv for a fast, reliable dev environment.
# Clone and setup
git clone https://github.com/ianuragbhatt/protocolbox.git
cd protocolbox
uv pip install -e ".[dev]"
# Run tests (100% pass rate required)
pytest tests/ -v
# Linting
ruff check .
🤝 Contributing
We welcome contributions! Please see CONTRIBUTING.md for details on how to add new tools.
Maintainer: Anurag Bhatt (@ianuragbhatt)
License
MIT © 2026 ProtocolBox.
Metadata
Release files for protocolbox 0.1.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| protocolbox-0.1.4.tar.gz | 103.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| protocolbox-0.1.4-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 116.9 kB
Release files / protocolbox-0.1.4.tar.gz
| Download URL | protocolbox-0.1.4.tar.gz |
|---|---|
| Size | 103.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
72dc72e578e16a1854325df78f7f779900a8aaa00a036cdb6b8240f433280162
|
|
BLAKE2b-256 checksum How to use checksums |
4af8ddc31d16b52ac531175bfe330f8bbed26eeb65d9d989a721bdf8f5114d97
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Feb 15, 2026.
Transparency logRelease files / protocolbox-0.1.4-py3-none-any.whl
| Download URL | protocolbox-0.1.4-py3-none-any.whl |
|---|---|
| Size | 13.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
09be38bd785479045082cf94b17dab62dfcd5e794d703df347053bdaa93b1600
|
|
BLAKE2b-256 checksum How to use checksums |
836d22e6a53745a0af08397ee312a9543c767b833b6ce1a7d1af4e02f62ce858
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Feb 15, 2026.
Transparency log