Skip to main content
Glama
limjonathan

runtime-mcp-connect

by limjonathan

runtime-mcp

앱의 실시간 런타임 상태 — 로그, DB 스키마, 설정, 기능 플래그 — 코딩 에이전트를 위한 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 한 줄):

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에 shim 등록:

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

3 — 앱을 시작하세요. 그게 전부입니다. 에이전트가 자동으로 연결되어 그때부터 실시간 상태를 확인합니다.

Related MCP server: Engineering Intelligence MCP

에이전트가 얻는 것

도구

도구

설명

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)             │
└──────────────────────────────┘          └─────────────────────────────┘

왜 두 부분으로 나뉘나요? 에이전트는 자신만의 프로세스를 생성합니다 — 앱 내부에 접근할 수 없습니다. 디스커버리 파일이 그 둘을 연결합니다: 라이브러리는 부팅 시 파일을 작성하고, shim은 호출할 때마다 파일을 읽습니다. 앱이 새 포트나 토큰으로 재시작되었나요? shim이 자동으로 재연결합니다. 다시 설정할 필요가 전혀 없습니다.

어댑터

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와 그 외의 것들이 같은 버퍼로 흘러 들어갑니다.

보안 모델

로컬 개발과 스테이징을 위해 설계되었습니다. 기본적으로 심층 방어:

제어 항목

동작

루프백 바인딩

엔드포인트는 127.0.0.1에서만 수신 · 원격 노출은 명시적 옵트인 필요

토큰 인증

앱 시작 시 Bearer 토큰 생성, .runtime-mcp.json에 chmod 600으로 저장

읽기 전용 SQL

허용 목록 파서: SELECT가 아닌 것 거부, 연속 문장 거부, 문자열/주석 내부의 키워드 무시

비밀 값 마스킹

password/token/key/auth 형태의 키와 알려진 토큰 형식은 프로세스 밖으로 나가기 전에 [REDACTED]로 변환

텔레메트리 없음

외부 전송 제로

.runtime-mcp.json을 .gitignore에 추가하세요.

왜 지금인가

기존 솔루션

한계점

Next.js 16 /_next/mcp

프레임워크 종속

Vercel 런타임 로그 MCP

클라우드 플랫폼 전용

Datadog / Sentry / Supabase MCP

SaaS 계정 필요 · 실제 개발 프로세스 아님

모든 플랫폼이 이 방향으로 만들고 있습니다. 하지만 범용적으로 만든 곳은 없습니다. 이것이 바로 그것입니다.

데모

packages/demo-app은 Express + SQLite 스토어로, 두 개의 심어진 버그가 있습니다 — /orders의 N+1 쿼리, 그리고 체크아웃 세금을 조용히 0으로 만드는 잘못된 이름의 DEMO_TAX_RATE 환경 변수. 에이전트를 연결하고 *"체크아웃 합계가 왜 잘못됐지?"*라고 물어보세요.

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

패키지

모든 패키지는 npm에 게시됩니다 (v0.1.0):

패키지

npm

용도

runtime-mcp

npm ↗

프로세스 내 레지스트리 · 루프백 엔드포인트 · 디스커버리 · 마스킹

runtime-mcp-connect

npm ↗

에이전트가 .mcp.json에 등록하는 stdio shim

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 shim의 다중 프로젝트 워크스페이스

라이선스

MIT

Related MCP Connectors

Related MCP Servers