ShadowShield MCP
🛡️ ShadowShield MCP
Сократите впустую потраченные токены LLM, прежде чем они попадут в ваше контекстное окно.
Локальный сервер Model Context Protocol (MCP), который снижает расход токенов LLM для разработчиков, использующих Claude Desktop, Cursor или Claude Code.
npx shadowshield-mcp installНикаких аккаунтов. Никакого облачного бэкенда. Никаких изменений в рабочем процессе.
📖 Содержание
Related MCP server: Refract
🤔 Зачем нужен ShadowShield?
Современные AI-агенты потребляют токены не только из того, что вы печатаете, — они молча сжигают контекст в фоновом режиме при каждом вызове инструмента.
Во время длительных агентных сессий они регулярно:
🔁 Перечитывают файлы, которые уже видели
🔁 Выполняют один и тот же вызов инструмента дважды
📦 Получают раздутые ответы API, полные шума
🗂️ Проносят разросшиеся промпты и результаты через контекстное окно
🧹 Тратят токены на нулевые значения, мёртвые метаданные и дублирующуюся информацию
AI Agent
│
├── list_issues() ───────► 3,000 tokens
│
├── read(config.py) ─────► 1,200 tokens
│
├── read(config.py) ─────► 1,200 tokens (again 🙃)
│
└── large tool response ─► 4,000 tokensНичего здесь не сломано — но ваше контекстное окно заполняется быстрее, запросы становятся больше, и вы платите за токены, которые вам никогда не были нужны.
ShadowShield MCP прозрачно располагается между вашим AI-клиентом и другими MCP-инструментами (GitHub, файловая система, веб-поиск и другие), перехватывая, дедуплицируя, сжимая и оптимизируя контекстный трафик — без каких-либо изменений в вашем обычном рабочем процессе.
⚡ Ключевые возможности
🧠 Умный кэш дедупликации
Вычисляет детерминированные отпечатки для каждого вызова MCP-инструмента. Когда тот же инструмент вызывается снова с идентичными аргументами в пределах скользящего окна сессии, ShadowShield возвращает кэшированный ответ вместо повторного выполнения операции.
First request Repeated request
Agent → Tool Call → MCP Server Agent → Tool Call → ShadowShield Cache
│ │
▼ ▼
Cache Response ⚡Исключает повторное выполнение инструментов
Устраняет дублирующийся контекст
Снижает ненужный расход токенов
Улучшает задержку ответа при попадании в кэш
✂️ Интеллектуальный компрессор вывода
Правило-ориентированный оптимизатор, который очищает ответы инструментов до того, как они попадут в контекст модели.
Удаляет нулевые и пустые свойства
Обрезает чрезмерно длинные текстовые поля
Убирает избыточные метаданные
Применяет фильтрацию по белому списку ключей
Сокращает излишне многословные структурированные ответы
// Before
{
"id": 4812,
"title": "Authentication bug",
"body": "...very large response...",
"metadata": null,
"unused_field": "",
"internal_data": "..."
}
// After
{
"id": 4812,
"title": "Authentication bug",
"body": "...trimmed, relevant content..."
}Отправляйте модели полезную информацию, а не структурный шум.
🔧 Оптимизатор кода и промптов
Автоматически переписывает чрезмерно большие промпты или файлы, чтобы минимизировать их токенный след, — с проверкой локальной косинусной близостью эмбеддингов (all-MiniLM-L6-v2), которая помогает убедиться, что смысл сохранён до принятия любого изменения.
Original Content
│
▼
Optimization
│
▼
Candidate Output
│
▼
Local Embedding Verification
│
├── Similar enough ──► ✅ Accept
│
└── Unsafe change ───► ❌ RejectПринципы безопасности:
Исходные файлы никогда не перезаписываются молча
Оптимизированные версии могут записываться отдельно для проверки
Преобразования с низкой уверенностью отклоняются автоматически
Оптимизация сосредоточена на избыточности, а не на переписывании смысла вашего кода
📊 Локальная панель экономии в одном файле
Лёгкий статический dashboard.html — без аккаунта, без бэкенда, без сервисов аналитики — показывающий:
💰 Всего сэкономлено токенов
🔁 Экономия от дедупликации
✂️ Экономия от сжатия
🔧 Экономия от оптимизации
📈 Дневные тренды экономии
🕒 Последние события оптимизации
~/.shadowshield/dashboard.html🧰 Установщик без настройки
Одна команда находит конфигурацию вашего MCP-клиента, регистрирует ShadowShield и сохраняет все существующие записи серверов — ручное редактирование JSON не требуется.
🚀 Быстрый старт
Требования
Node.js (v18+)
npm
Поддерживаемый MCP-совместимый клиент (Claude Desktop, Cursor, Claude Code)
1. Установка
npx shadowshield-mcp installИли сборка из исходников:
git clone <your-repository-url>
cd shadowshield-mcp
npm install
npm run build
node bin/install.jsУстановщик:
Найдёт конфигурацию вашего поддерживаемого MCP-клиента
Зарегистрирует ShadowShield как MCP-сервер
Сохранит все существующие записи MCP-серверов
Создаст локальный каталог данных
~/.shadowshield/Настроит необходимые пути выполнения
2. Перезапустите ваш AI-клиент
Перезапустите Claude Desktop, Cursor или ваше окружение Claude Code. ShadowShield подключится автоматически и предоставит:
shadowshield_dedup_cache
shadowshield_compress_output
shadowshield_optimize3. Просто пользуйтесь своим AI — как обычно
Отдельного рабочего процесса ShadowShield учить не нужно.
You
│
▼
AI Client
│
▼
ShadowShield
│
├── Deduplication
├── Compression
└── Optimization
│
▼
MCP Tools / Context4. Проверьте свою экономию
Откройте панель в любом браузере:
~/.shadowshield/dashboard.html🏗️ Как это работает
┌──────────────────────────┐
│ Claude / Cursor │
│ / MCP Client │
└────────────┬─────────────┘
│
▼
┌──────────────────────────┐
│ ShadowShield MCP │
│ │
│ ┌────────────────────┐ │
│ │ Dedup Cache │ │
│ ├────────────────────┤ │
│ │ Output Compressor │ │
│ ├────────────────────┤ │
│ │ Prompt Optimizer │ │
│ └────────────────────┘ │
└────────────┬─────────────┘
│
▼
┌──────────────────────────┐
│ MCP Tools │
│ │
│ GitHub · Filesystem │
│ Search · APIs · etc. │
└──────────────────────────┘Каждое событие оптимизации измеряется и записывается локально, так что вы всегда точно знаете, откуда берётся ваша экономия.
🔒 Локальность как принцип
Ваш контекст разработки должен оставаться под вашим контролем.
~/.shadowshield/
├── cache.db
├── savings-log.jsonl
└── dashboard.htmlShadowShield не требует:
❌ Аккаунта ShadowShield
❌ Облачной базы данных ShadowShield
❌ Отдельного бэкенда аналитики
❌ Аутентификации на панели
❌ Загрузки вашей истории экономии куда-либо
Ваш кэш, журналы, учёт токенов, проверка эмбеддингов и данные панели остаются полностью на вашей машине.
Любое внешнее взаимодействие с моделью, используемое настроенной функциональностью оптимизации, зависит от вашей собственной настройки модели/провайдера.
🧰 Технологический стек
Компонент | Технология |
Язык | TypeScript |
Среда выполнения | Node.js |
MCP |
|
Кэш | SQLite |
Журналирование | JSONL |
Подсчёт токенов |
|
Семантическая проверка |
|
Метрика близости | Косинусная близость |
Панель | HTML + Chart.js |
Распространение | npm |
📁 Структура репозитория
shadowshield-mcp/
│
├── bin/
│ └── install.js # npx installer entry point
│
├── src/
│ ├── server.ts # MCP server entry point
│ │
│ ├── tools/
│ │ ├── dedupCache.ts # Tool call deduplication cache logic
│ │ ├── outputCompressor.ts # Rule-based tool output compressor
│ │ └── optimizer.ts # Prompt & code optimizer with embedding verification
│ │
│ ├── storage/
│ │ ├── sqlite.ts # SQLite cache database (~/.shadowshield/cache.db)
│ │ └── logger.ts # Append-only logger (~/.shadowshield/savings-log.jsonl)
│ │
│ └── utils/
│ ├── tokenCount.ts # tiktoken token counter wrapper
│ └── embeddings.ts # Local feature extraction & cosine similarity wrapper
│
├── dashboard.html # Static savings visualization dashboard
├── downstream.example.json
├── package.json
├── tsconfig.json
├── README.md
└── LICENSE🛠️ Разработка
Клонируйте репозиторий и установите зависимости:
git clone (https://github.com/Mahesh8214/ShadowShield-MCP)
cd shadowshield-mcp
npm installСоберите проект:
npm run buildЗапустите установщик локально:
node bin/install.jsПроверьте пакет перед публикацией:
npm pack --dry-run🎯 Принципы проектирования
ShadowShield следует четырём основным принципам:
# | Принцип | Описание |
1 | Сокращать потери, а не возможности | Оптимизация имеет смысл только если итоговый контекст остаётся полезным для модели. |
2 | Оставаться невидимым | Вам не нужно менять то, как вы работаете со своими AI-инструментами, чтобы экономить токены. |
3 | Предпочитать локальную инфраструктуру | Кэширование, журналы, измерения, проверка и визуализация — всё локально, без облачных сервисов. |
4 | Не изменять больше необходимого | Оптимизация консервативна и точечна, а не повод переписывать несвязанный код. |
🗺️ Дорожная карта
Расширение VS Code для встроенных предложений по оптимизации
Аналитика экономии токенов по проектам
Дополнительные интеграции MCP-клиентов
Улучшенные стратегии сжатия для конкретных инструментов
Настраиваемые пороги оптимизации
Еженедельные локальные сводки экономии
Улучшенная атрибуция и отчётность по экономии
🤝 Участие в разработке
Вклад приветствуется! 🎉
Если вы нашли ошибку, у вас есть идея по оптимизации или вы хотите улучшить поддержку другого MCP-клиента или инструмента:
Сначала проверьте существующие issues
Откройте новый issue с описанием проблемы или идеи
Для значительных архитектурных изменений откройте issue до отправки PR, чтобы подход можно было обсудить
🔐 Безопасность
Если вы обнаружили уязвимость в безопасности, пожалуйста, не публикуйте детали эксплуатации в публичном issue.
Сообщите о ней приватно через настроенный канал безопасности репозитория.
📄 Лицензия
Выпущено под лицензией MIT. Полные условия см. в LICENSE.
🛡️ ShadowShield MCP
Меньше избыточного контекста. Меньше потраченных впустую токенов. Тот же рабочий процесс.
npx shadowshield-mcp installСоздан для разработчиков, которые хотят, чтобы их AI-инструменты использовали контекст эффективнее.
⭐ Если ShadowShield экономит ваши токены, поставьте звёздочку репозиторию!
This server cannot be deployed
Maintenance
Related MCP Connectors
LLM cost optimization gateway, repo token-waste auditor & model arbitrage MCP server.
51LLM cost optimization gateway, repo token-waste auditor & model arbitrage MCP server.
51MCP server for your apps' tools and custom tools, plus hosted AI agents and approval-gated workflows
AI Reasoning Cache & Consensus Layer with 11 MCP tools via Streamable HTTP.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceA proxy server that wraps existing MCP servers to significantly reduce token consumption by compressing tool descriptions into a two-step interface. It enables users to integrate extensive toolsets without exceeding context limits or incurring high API costs.137Apache 2.0
- AlicenseAqualityCmaintenanceMCP proxy that compresses tool schemas on the fly. Up to 98% token reduction, 100% signal preserved verified after every compression. Zero LLM calls, fully deterministic.53MIT
- AlicenseBqualityDmaintenanceLocal MCP server for token optimization, providing tools to compress code/JSON, optimize prompts, and manage placeholder-based content redaction and hydration to reduce LLM token usage.5ISC
- AlicenseNot gradedqualityAmaintenanceMCP server that minimizes LLM token usage by compressing, summarizing, filtering, chunk-referencing, and pruning large context before it reaches the model, with heuristic or local-SLM smart actions, caching, and token counting.20 npmMIT