Skip to main content
Glama
limjonathan

runtime-mcp-connect

by limjonathan

runtime-mcp

Живое состояние вашего приложения — логи, схема БД, конфиг, фича-флаги — как MCP-инструменты для агентов-кодеров.

npm core npm integrations npm connect node tests license

Встройте его в своё приложение. Ваш агент перестанет гадать.


Когда opencode, Claude Code или Cursor отлаживают ваше приложение, они работают вслепую: устаревшие догадки о схеме, вставленные фрагменты логов, выдуманные значения конфигурации.

runtime-mcp закрывает этот разрыв. Две строки настройки — и любой агент, говорящий на MCP, может запросить то, что реально видит ваш запущенный процесс:

Agent: "why is checkout failing?"
  ├─ get_errors   → TypeError at checkout.ts:42, full stack trace
  ├─ db_query     → orders table has no `coupon_id` column
  ├─ config://    → STRIPE_KEY: [REDACTED], TAX_RATE: 0  ← there it is
  └─ "Found it — you renamed the env var."

Быстрый старт

0 — Установка:

npm install runtime-mcp runtime-mcp-integrations

1 — Инструментируйте своё приложение (один импорт):

import { runtimeMcp } from 'runtime-mcp';
import { pgAdapter } from 'runtime-mcp-integrations/pg';

await runtimeMcp({
  db: pgAdapter(pool),
  config: process.env,
  flags: myFlagRegistry,
});

2 — Зарегистрируйте шим в файле .mcp.json вашего проекта:

{
  "mcpServers": {
    "runtime": { "command": "npx", "args": ["-y", "runtime-mcp-connect"] }
  }
}

3 — Запустите приложение. Вот и всё. Агент подключается автоматически и с этого момента видит живое состояние.

Related MCP server: Krometrail

Что получают агенты

Инструменты

Инструмент

Описание

get_logs

Последние логи · фильтр по уровню, полнотекстовый запрос, окно времени

get_errors

Записи об ошибках со стектрейсами — первый вызов, когда что-то сломалось

db_query

SQL только на чтение (только SELECT/WITH) · запись отклоняется · автоматический LIMIT

app_info

Имя, версия, PID, аптайм, зарегистрированные маршруты

Ресурсы

Ресурс

Описание

config://current

Живой конфиг с секретами, заменёнными на [REDACTED]

flags://state

Состояния фича-флагов по окружениям

schema://tables

Инвентаризация таблиц

schema://table/{name}

Колонки, первичные ключи, индексы, внешние ключи

Архитектура

┌──────────────────────────────┐          ┌─────────────────────────────┐
│         Your App             │          │   Agent (opencode/Claude)   │
│                              │          │                             │
│  runtimeMcp({ db, config })  │          │  .mcp.json                  │
│   ├─ log ring buffer         │          │    └─ runtime-mcp-connect   │
│   ├─ schema introspection    │          │          │ stdio            │
│   ├─ config + redaction      │◄─────────┼──────────┘                  │
│   └─ feature flags           │  loopback│                             │
│                              │   HTTP   │                             │
│  127.0.0.1:<port>/mcp        │          │                             │
│  .runtime-mcp.json ──────────┼─ pid·url·token·(chmod 600)             │
└──────────────────────────────┘          └─────────────────────────────┘

Почему две части? Агенты запускают собственные процессы — они не могут заглянуть внутрь вашего приложения. Файл обнаружения соединяет их: библиотека пишет его при запуске, шим читает его при каждом вызове. Приложение перезапущено с новым портом или токеном? Шим переподключается автоматически. Никогда ничего не нужно перенастраивать.

Адаптеры

npm install runtime-mcp runtime-mcp-integrations

Пример структурированного логирования:

import pino from 'pino';
import { createRuntimeMcpPinoDestination } from 'runtime-mcp-integrations/pino';

const logger = pino(pino.multistream([
  pino.destination(1),
  createRuntimeMcpPinoDestination(),
]));

Нет подключённого логгера? Захват консоли включён по умолчанию — console.error и прочее попадают в тот же буфер.

Модель безопасности

Создано для локальной разработки и стейджинга. Защита в глубину по умолчанию:

Контроль

Поведение

Loopback-привязка

Эндпоинт слушает только 127.0.0.1; удалённый доступ требует явного согласия

Токен-аутентификация

Bearer-токен на каждый запуск приложения, хранится с правами chmod 600 в .runtime-mcp.json

SQL только для чтения

Парсер по белому списку: не-SELECT отклоняется, составные запросы отклоняются, ключевые слова внутри строк/комментариев игнорируются

Редактирование секретов

Ключи вида password/token/key/auth и известные форматы токенов превращаются в [REDACTED] до выхода из процесса

Нет телеметрии

Ноль обращений домой

Добавьте .runtime-mcp.json в .gitignore.

Почему сейчас

Существующее решение

Ограничение

Next.js 16 /_next/mcp

Привязано к фреймворку

Vercel runtime logs MCP

Только облачная платформа

Datadog / Sentry / Supabase MCPs

SaaS-аккаунты; не ваш живой процесс разработки

Каждая платформа строит это внутрь себя. Никто не сделал это универсально. Это оно.

Демо

packages/demo-app — это Express + SQLite-хранилище с двумя намеренно посаженными багами — N+1-запрос на /orders и неправильно названная env-переменная DEMO_TAX_RATE, которая молча обнуляет налог при оформлении заказа. Наведите на него своего агента и спросите «почему суммы при оформлении неверны?»

pnpm install && pnpm -r build
pnpm --filter @runtime-mcp/demo-app dev

Пакеты

Все пакеты опубликованы в npm (v0.1.0):

Пакет

npm

Назначение

runtime-mcp

npm ↗

Внутрипроцессный реестр · loopback-эндпоинт · обнаружение · редактирование

runtime-mcp-connect

npm ↗

stdio-шим, который агенты регистрируют в .mcp.json

runtime-mcp-integrations

npm ↗

Адаптеры для фреймворков, логгеров и баз данных

@runtime-mcp/demo-app

Демо для отладки с посаженными багами (только в репозитории)

Требуется Node ≥ 20. ESM.

Разработка

pnpm install
pnpm -r build
pnpm test    # unit + end-to-end over real HTTP and stdio transports
  • Живой хвост логов через MCP-подписки на ресурсы

  • Адаптеры Fastify / Hono

  • Адаптеры интроспекции MySQL / Drizzle

  • Паритет Python SDK (FastAPI / Django)

  • Мультипроектные рабочие пространства в connect-шиме

Лицензия

MIT

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

No tool schema history has been recorded yet.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

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/limjonathan/runtime-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server