hydris-diagnostic-mcp
hydris-mcp-integration
Hydris Pulse Bridge трек, Рабочий элемент 1: скелет диагностического MCP-сервера,
который будет находиться в lite/diagnostic_mcp/ внутри монорепозитория Lite. Он
реализует BRIDGE-2 (авторизация фабрики по вызову), BRIDGE-5
(аудит-логирование по вызову) и NFR-4 (безопасность), а также структурно
обеспечивает BRIDGE-1 (набор инструментов только для чтения).
См. docs/scope.md для точного описания того, что здесь построено, а что нет,
и docs/decisions.md для решений по открытым вопросам
(задержка отзыва, поведение при сбое аудита-приемника, форма ошибки без утечки,
схема версионирования набора инструментов), по которым этот скелет занял позицию
в ожидании ратификации Нематуллы.
Архитектура
Два субъекта, раздельные (
diagnostic_mcp/auth/): JWT сервисного принципала (области только для чтения, проверяется независимо) и JWT контекста пользователя для каждого вызова. Сервисный токен никогда не расширяет доступ.Один конвейер для каждого вызова (
diagnostic_mcp/registry/pipeline.py): аутентификация обоих субъектов, проверка аргументов, проверка активного разрешения фабрики пользователя (без кэширования), диспетчеризация, аудит-логирование результата — успех, отклонение или ошибка — каждый раз.Шлюз только для чтения на этапе регистрации (
diagnostic_mcp/registry/tool_registry.py): инструмент безclassification="read_only"или без обязательного аргументаfactory_idотклоняется при регистрации, а не при вызове.FastMCP для объявления схемы, одно переопределение для диспетчеризации (
diagnostic_mcp/server.py):tools/listпоступает от FastMCP как обычно;tools/callперехватывается один раз, на низкоуровневом сервере, так что каждый инструмент — настоящий или будущий — проходит через один и тот же конвейер без шаблонного кода для каждого инструмента.Один демонстрационный инструмент,
get_plant_overview(diagnostic_mcp/tools/plant_overview.py), работающий на основе заглушки в памяти слоя чтения Lite, заполненной точными фикстурами, указанными в исходных документах (u-ops-alphaпредоставленfx-mbr-01;u-ops-betaпредоставленfx-beta-01).
Related MCP server: system-monitor
Быстрый старт
python -m venv .venv
.venv/Scripts/pip install -e ".[dev]" # .venv/bin/pip on macOS/Linux
cp .env.example .env # then edit the two secretsЗапустите сервер:
set -a; source .env; set +a # or export the vars another way
python -m diagnostic_mcp.serverПо умолчанию он слушает streamable-http на http://127.0.0.1:8765/mcp.
Проверка от начала до конца
pytest -v # includes a real streamable-HTTP client/server round trip
ruff check .
mypy diagnostic_mcp tests
python scripts/check_no_write_imports.pyЧтобы вручную вызвать работающий сервер с официальным MCP-клиентом, создайте сервисный токен и токен контекста пользователя с теми же секретами, с которыми работает сервер:
from diagnostic_mcp.auth.service_principal import issue_service_token
from diagnostic_mcp.auth.user_context import issue_user_context_token
service_token = issue_service_token("<LITE_MCP_SERVICE_TOKEN_SECRET>")
user_token = issue_user_context_token("<LITE_MCP_USER_CONTEXT_SECRET>", "u-ops-alpha", "org-alpha")
print(f"Authorization: Bearer {service_token}")
print(f"X-Pulse-User-Context: {user_token}")Затем вызовите get_plant_overview с factory_id=fx-mbr-01 (разрешено —
успех) или factory_id=fx-beta-01 (не разрешено — отклонено, и обе попытки
попадают в audit.jsonl).
Критерии завершения рабочего элемента 1
Пункт | Статус |
MCP-сервер зарегистрирован в процессе, доступен через streamable-HTTP | Готово |
Реестр инструментов с классификацией только для чтения, отклоняющий несоответствующую регистрацию при запуске | Готово |
Сервисный принципал выпущен с областями только для чтения, инвентаризация областей записана для минимального набора из 15 инструментов | Готово — |
Заголовок контекста пользователя для каждого вызова разобран, разрешения получены, вызов отклонен до использования сервисного токена | Готово |
Форма ошибки авторизации без утечки согласована и реализована | Готово — см. O3 в |
Задержка отзыва выбрана и задокументирована | Готово — см. O1 в |
Аудит-приемник записывает все шесть обязательных полей при успехе, ошибке и отклонении | Готово |
Идентификатор сессии Pulse распространяется и записывается для соответствия TC-BRIDGE-5.3 | Готово — заголовок |
Поведение при сбое аудита-приемника согласовано с Нематуллой и реализовано | Предложено, ожидает ратификации — см. O2 |
CI-проверка запрета записи активна в репозитории Lite | Только временная — см. |
Секреты извлекаются из управляемого хранилища, TLS включен на слушателе | Секреты: готово (прослойка env-var). TLS: вопрос инфраструктуры, см. |
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Alicense-qualityDmaintenanceAn MCP server that provides secure, read-only access to the TrakSYS manufacturing analytics platform through entity-based tools and guided investigation prompts. It enables users to interact with manufacturing databases and perform data analysis via natural language.MIT
- FlicenseAqualityCmaintenanceA secure, read-only MCP server for AI-powered system monitoring. It provides real-time OS metrics, config discovery, and safe log tailing to enable autonomous infrastructure audits without shell access risks.4
- Alicense-qualityCmaintenanceA hardened MCP server exposing read-only orders tools to AI agents, with rigorous input validation and parameterized queries to prevent injection attacks.MIT
- Flicense-qualityBmaintenanceA read-only MCP server that exposes a materials distributor database with four tools for querying tables, describing schemas, sampling rows, and running SELECT queries, secured by three independent layers to prevent any write operations.
Related MCP Connectors
Read-only MCP server for wafergraph.com's semiconductor & AI supply-chain data: 30 tools, no auth.
Remote MCP for Android CLI agent build gate, structured receipts, audit logs, and reviewer-ready evi
Hosted MCP server for agent governance: MCP config audits, injection scans, scope-policy checks.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/tarun-km/hydris-mcp-integration'
If you have feedback or need assistance with the MCP directory API, please join our Discord server