mcpkill 0.1.0

Universal MCP proxy — semantic cache + chunking to kill token waste
Documentation
# Changelog

All notable changes to this project will be documented in this file.

The format follows [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]

## [0.1.0] - 2026-03-18

### Added
- Universal MCP stdio proxy — wraps any MCP server transparently
- Semantic cache backed by SQLite with cosine similarity search (rayon-parallel)
- Smart chunking: markdown headers / JSON keys / paragraph fallback
- Local embeddings via `fastembed` (all-MiniLM-L6-v2, ~23 MB, ONNX)
- Token savings tracking (`original_tokens`, `returned_tokens`, `hit_count`)
- TTL-based cache eviction (`--ttl-days`)
- LRU eviction when DB exceeds `--max-db-mb`
- `mcpkill stats` — formatted table of savings
- `mcpkill stats --json` — machine-readable output
- `mcpkill clear --all / --expired / --older-than <N>` — cache management
- `mcpkill print-config` — show effective merged configuration
- `~/.mcpkill.toml` config file with CLI override
- `--dry-run` — inspect filtering decisions without modifying responses
- `--stats-interval <N>` — periodic stats during proxy run
- SIGINT / SIGTERM graceful shutdown
- Schema migration via SQLite `user_version`
- First-run UX: model download notice
- GitHub Actions CI (ubuntu + macos, fmt + clippy + test + bench-compile)
- Criterion benchmarks: cosine, chunker, token estimator
- 20 tests (13 unit + 7 integration)

[Unreleased]: https://github.com/rustkit-ai/mcpkill/compare/v0.1.0...HEAD
[0.1.0]: https://github.com/rustkit-ai/mcpkill/releases/tag/v0.1.0