Command Palette

Search for a command to run...

UnylyUnyly
Browse all

Database Remote

FreeNot checked

Enables remote database access (RDBMS and MongoDB) through MCP tools, supporting read/write queries, schema management, and more.

GitHubEmbed

About

Enables remote database access (RDBMS and MongoDB) through MCP tools, supporting read/write queries, schema management, and more.

README

リモートデータベースへのアクセス機能を Model Context Protocol (MCP) ツールとして公開するサーバーです。HTTPstdio の両トランスポートに対応しています。

概要

  • MCP_TRANSPORT 環境変数でトランスポートを切替
    • 未設定 / http → HTTP サーバーモード(/mcp, /mcp/stream
    • stdio → stdin/stdout MCP プロトコルモード
  • DB_TYPE に応じてランタイムを自動切替
    • sqlserver / postgres / mysql -> RDBMS runtime
    • mongodb -> NoSQL runtime
  • ツールの有効化は環境変数で制御
    • RDBMS: ENABLED_TOOLS
    • NoSQL: ENABLED_NOSQL_TOOLS

現在の対応機能

RDBMS ツール

  • read_query
  • write_query
  • export_query
  • list_tables
  • describe_table
  • get_schema
  • create_table
  • alter_table
  • drop_table
  • append_insight
  • list_insights

NoSQL ツール

  • list_collections(MongoDB のコレクション一覧取得)

NoSQL は現在 list_collections のみ実装済みです。

サポートDB

  • SQL Server(mssql
  • PostgreSQL(pg
  • MySQL(mysql2
  • MongoDB(mongodb

システム要件

  • Node.js >= 24
  • pnpm 推奨

起動

pnpm install
pnpm build
pnpm start          # HTTPモード(デフォルト)

stdioモード:

MCP_TRANSPORT=stdio pnpm start

開発モード(HTTP):

pnpm start:dev

MCP クライアント設定例

stdio

Claude Code / Claude Desktop

Claude Code — グローバル登録(全プロジェクトで利用可能):

claude mcp add database-remote-mcp --scope user -e MCP_TRANSPORT=stdio -- \
  node --env-file=/path/to/database-remote-mcp/.env /path/to/database-remote-mcp/dist/main.js

Claude Code — プロジェクトローカル(.mcp.json):

{
  "mcpServers": {
    "database-remote-mcp": {
      "command": "node",
      "args": [
        "--env-file=/path/to/database-remote-mcp/.env",
        "/path/to/database-remote-mcp/dist/main.js"
      ],
      "env": {
        "MCP_TRANSPORT": "stdio"
      }
    }
  }
}

Claude Desktopclaude_desktop_config.json:

{
  "mcpServers": {
    "database-remote-mcp": {
      "command": "node",
      "args": [
        "--env-file=/path/to/database-remote-mcp/.env",
        "/path/to/database-remote-mcp/dist/main.js"
      ],
      "env": {
        "MCP_TRANSPORT": "stdio"
      }
    }
  }
}

Codex

~/.codex/config.toml:

[mcp_servers.database-remote-mcp]
command = "node"
args = [
  "--env-file=/path/to/database-remote-mcp/.env",
  "/path/to/database-remote-mcp/dist/main.js"
]

[mcp_servers.database-remote-mcp.env]
MCP_TRANSPORT = "stdio"

GitHub Copilot(VS Code)

.vscode/mcp.json:

{
  "servers": {
    "database-remote-mcp": {
      "type": "stdio",
      "command": "node",
      "args": [
        "--env-file=/path/to/database-remote-mcp/.env",
        "/path/to/database-remote-mcp/dist/main.js"
      ],
      "env": {
        "MCP_TRANSPORT": "stdio"
      }
    }
  }
}

HTTP

Claude Code / Claude Desktop

Claude Code — グローバル登録:

claude mcp add database-remote-mcp --scope user --transport http \
  http://localhost:3000/mcp/stream

Claude Desktopclaude_desktop_config.json:

{
  "mcpServers": {
    "database-remote-mcp": {
      "type": "http",
      "url": "http://localhost:3000/mcp/stream"
    }
  }
}

Codex

~/.codex/config.toml:

[mcp_servers.database-remote-mcp]
url = "http://localhost:3000/mcp/stream"
enabled = true

GitHub Copilot(VS Code)

.vscode/mcp.json:

{
  "servers": {
    "database-remote-mcp": {
      "type": "http",
      "url": "http://localhost:3000/mcp/stream"
    }
  }
}

環境変数

.env.sample.env にコピーして設定します。

共通

APP_PORT=3000          # HTTPモードのみ使用
ALLOWED_ORIGINS=
DB_TYPE=postgres
MCP_TRANSPORT=         # 未設定またはhttp=HTTPモード / stdio=stdioモード

ツール有効化

ENABLED_TOOLS=
ENABLED_NOSQL_TOOLS=

RDBMS 接続

SERVER=localhost
PORT=5432
DATABASE=postgres
USER=postgres
PASSWORD=
DB_SSL=

DB_TYPEsqlserver / postgres / mysql のときに利用されます。

MongoDB 接続

MONGO_URI=mongodb://localhost:27017
MONGO_DATABASE=admin

MONGO_URI 未設定時は mongodb://SERVER:PORT を使用します。

アーキテクチャ

依存方向: Presentation -> Application -> Domain <- Infrastructure

src/
├── app.module.ts          # HTTPモード用ルートモジュール
├── app-stdio.module.ts    # stdioモード用ルートモジュール(Presentation層なし)
├── presentation/          # HTTPモードのみ使用
│   └── mcp/
│       ├── mcp.controller.ts
│       ├── mcp.controller.module.ts
│       └── sse.interceptor.ts
├── application/
│   └── mcp/
│       ├── mcp.service.ts
│       ├── runtime-resolver.service.ts
│       ├── shared/           # connectStdio() を含む共通実装
│       ├── rdbms/
│       └── nosql/
├── domain/
│   ├── mcp/
│   │   ├── shared/
│   │   ├── rdbms/
│   │   └── nosql/
│   ├── rdbms/
│   └── nosql/
└── infrastructure/
    ├── config/
    ├── rdbms/
    └── nosql/

テスト・品質チェック

pnpm lint
pnpm build
pnpm test

from github.com/agts86/database-remote-mcp

Installing Database Remote

This server has no published package — it is built from source. Open the repository and follow its README.

▸ github.com/agts86/database-remote-mcp

FAQ

Is Database Remote MCP free?

Yes, Database Remote MCP is free — one-click install via Unyly at no cost.

Does Database Remote need an API key?

No, Database Remote runs without API keys or environment variables.

Is Database Remote hosted or self-hosted?

Self-hosted: the server runs locally on your machine via the install command above.

How do I install Database Remote in Claude Desktop, Claude Code or Cursor?

Open Database Remote on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.

Related MCPs

Compare Database Remote with

Not sure what to pick?

Find your stack in 60 seconds

Author?

Embed badge for your README

Browse similar

All data MCPs