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 — Запустите приложение. Вот и всё. Агент подключается автоматически и с этого момента видит живое состояние.

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

Инструменты

Инструмент

Описание

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

-
license - not tested
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

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

  • Read-only bank access for your AI agent. Connects Claude, ChatGPT, Cursor, Gemini, Codex.

  • Shared, permission-aware company context for AI agents, with provenance, approvals and audit.

  • Read-only access to Auralogs production logs: search logs, inspect errors, review AI analyses.

View all MCP Connectors

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