Skip to main content
Glama
HumanSamadian

Data Nexus MCP

Data Nexus MCP

모듈형이며 안전한 플랫폼으로, REST API, MCP(Model Context Protocol) 및 Vue.js 웹 UI를 통해 SQL 및 NoSQL 데이터베이스에 연결할 수 있습니다.

아키텍처

┌─────────────┐     ┌──────────────┐     ┌─────────────────┐
│   Web UI    │────▶│  REST API    │────▶│ core-db-command │
│  (Vue.js)   │     │  (FastAPI)   │     │  (Python lib)   │
└─────────────┘     └──────┬───────┘     └────────┬────────┘
                           │                       │
                    ┌──────▼───────┐               │
                    │  MCP Server  │───────────────┘
                    └──────┬───────┘
                           │
                    ┌──────▼───────┐
                    │  MCP Client  │──▶ AI Agents / LLMs
                    └──────────────┘

모듈

모듈

패키지

설명

core-db-command

core_db_command/

모든 데이터베이스 드라이버를 위한 플러그인 기반 Python 라이브러리

rest-api-command

rest_api_command/

OAuth2/LDAP/기본 인증을 포함한 FastAPI REST 계층

mcp-server

mcp_server/

MCP 도구: query_database, get_schema, list_tables, describe_table, execute_sql

mcp-client

mcp_client/

에이전트 통합을 위한 MCP 클라이언트 브리지

web-ui

web-ui/

Vue 3 + Pinia + Monaco Editor 쿼리 스튜디오

config

config/

${ENV} 대체를 지원하는 YAML 연결 정의

Related MCP server: Database MCP Server

지원되는 데이터베이스 유형

드라이버 레지스트리는 13개 카테고리에서 50개 이상의 데이터베이스 유형을 지원합니다:

  • 관계형: PostgreSQL, MySQL, MSSQL, Oracle, CockroachDB, TiDB, YugabyteDB, TimescaleDB, pgvector

  • 문서: MongoDB, DocumentDB, Firestore, Couchbase (스텁)

  • 키-값: Redis, DynamoDB, Memcached/etcd/RocksDB (스텁)

  • 와이드 컬럼: Cassandra, ScyllaDB, Bigtable/HBase (스텁)

  • 그래프: Neo4j, Neptune/JanusGraph/ArangoDB (스텁)

  • 시계열: InfluxDB, ClickHouse, Prometheus/QuestDB (스텁)

  • 벡터: Qdrant, Weaviate, Milvus, Pinecone

  • 검색: Elasticsearch, OpenSearch, Splunk/Solr (스텁)

  • 웨어하우스: BigQuery, Snowflake, Redshift/Databricks (스텁)

  • 멀티 모델: Cosmos DB, OrientDB (스텁)

  • 임베디드: SQLite, DuckDB, Realm/LMDB (스텁)

  • 원장: QLDB/BigchainDB (스텁)

  • NewSQL: Spanner (스텁)

완전히 구현된 드라이버에는 PostgreSQL, MySQL, MSSQL, Oracle, MongoDB, Redis, SQLite, DuckDB, Elasticsearch, ClickHouse, Neo4j, InfluxDB, Cassandra, DynamoDB, BigQuery, Snowflake, Qdrant, Weaviate, Milvus, Pinecone, Cosmos DB, Firestore가 포함됩니다. 스텁 드라이버는 등록되어 있으며 확장 가능합니다.

빠른 시작

사전 요구 사항

  • Python 3.11+

  • Node.js 20+ (웹 UI 개발용)

  • Docker 및 Docker Compose (선택 사항)

1. Python 종속성 설치

cp .env.example .env
pip install -e ".[dev]"

2. 연결 구성

config/connections.yaml을 편집하고 환경 변수를 통해 비밀 정보를 설정합니다:

connections:
  - name: postgres_prod
    type: postgresql
    host: localhost
    port: 5432
    database: mydb
    user: readonly_user
    password: ${PG_PASSWORD}

3. REST API 시작

db-rest-api
# or: uvicorn rest_api_command.app:app --reload

API 문서: http://localhost:8000/docs

4. 웹 UI 시작 (개발 모드)

cd web-ui
cp .env.example .env
npm install
npm run dev

http://localhost:5173 열기 — 기본 자격 증명: admin / changeme

5. Docker Compose로 실행

docker compose up -d

서비스:

REST API 엔드포인트

메서드

경로

설명

GET

/api/connections

연결 목록 (자격 증명 없음)

POST

/api/db/{name}/query

매개변수화된 쿼리

POST

/api/db/{name}/sql

원시 SQL / 네이티브 명령

GET

/api/db/{name}/schema

데이터베이스 스키마

GET

/api/db/{name}/tables

테이블/컬렉션 목록

GET

/api/db/{name}/tables/{table}/describe

테이블 구조

GET/POST

/api/query-history

쿼리 기록

MCP 서버

.env 또는 Cursor MCP env에서 구성:

MCP_REST_API_URL=http://localhost:8000
# Option A: bearer token (when REST_API_AUTH_MODE=oauth2)
MCP_REST_API_TOKEN=<jwt-from-/api/auth/token>
# Option B: username/password (works with basic auth; auto-fetches JWT if oauth2)
MCP_REST_API_USER=admin
MCP_REST_API_PASSWORD=changeme

실행:

db-mcp-server

Cursor/Claude MCP 구성에 추가:

{
  "mcpServers": {
    "data-nexus-mcp": {
      "command": "db-mcp-server",
      "cwd": "/path/to/data_nexus_mcp",
      "env": {
        "MCP_REST_API_URL": "http://localhost:8000",
        "MCP_REST_API_USER": "admin",
        "MCP_REST_API_PASSWORD": "changeme"
      }
    }
  }
}

참고: REST_API_* 변수는 REST API 프로세스(db-rest-api)에 속하며 MCP 서버 구성에는 포함되지 않습니다.

MCP 클라이언트

db-mcp-client                    # list available tools
db-mcp-client query local_sqlite "SELECT 1"

인증

REST_API_AUTH_MODE를 다음 중 하나로 설정합니다:

  • basic — HTTP 기본 인증 (개발 기본값)

  • oauth2/api/auth/token을 통한 JWT 베어러 토큰

  • ldap — LDAP 바인드 (REST_API_LDAP_SERVERREST_API_LDAP_BASE_DN 필요)

새 드라이버 추가

  1. core_db_command/drivers/mydb.py 생성

  2. BaseDriver를 서브클래싱하고 driver_type 설정

  3. @DriverRegistry.register로 데코레이트

  4. core_db_command/drivers/registry_loader.py에서 가져오기

from core_db_command.base import BaseDriver, DriverRegistry

@DriverRegistry.register
class MyDBDriver(BaseDriver):
    driver_type = "mydb"

    async def connect(self): ...
    async def disconnect(self): ...
    async def query(self, query, params=None): ...
    async def execute(self, command, params=None): ...
    async def list_tables(self, schema=None): ...
    async def describe_table(self, table, schema=None): ...

테스트

pytest tests/ -v

보안 참고 사항

  • 자격 증명은 REST API 또는 MCP 서버에서 절대 반환되지 않음

  • 비밀 정보는 YAML 구성에서 ${ENV_VAR} 플레이스홀더를 사용해야 함

  • 모든 API 엔드포인트는 인증이 필요함

  • 쿼리 입력은 유효성 검사 및 길이 제한이 적용됨

프로젝트 구조

data-nexus-mcp/
├── core_db_command/       # Core library + drivers
├── rest_api_command/      # FastAPI REST API
├── mcp_server/            # MCP server
├── mcp_client/            # MCP client
├── web-ui/                # Vue.js frontend
├── config/                # YAML connection config
├── tests/                 # Unit tests
├── docker-compose.yml
├── Dockerfile
└── pyproject.toml

라이선스

MIT

Install Server
A
license - permissive license
B
quality
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 Servers

  • F
    license
    -
    quality
    C
    maintenance
    Enables LLMs and agents to interact with relational databases (SQL Server, MySQL, PostgreSQL) through MCP tools. Supports executing queries, inserting records, listing tables, and exposing database schemas with secure credential management.
  • A
    license
    -
    quality
    D
    maintenance
    Provides universal database operations for AI assistants through MCP, supporting 40+ databases including PostgreSQL, MySQL, MongoDB, Redis, and SQLite with built-in introspection tools for schema exploration.
    29
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Give your AI agent safe, plain-English access to any database via MCP. Ask questions in natural language, get SQL queries and results, run read-only queries, and set up scheduled alerts.
    9
    60
    MIT

View all related MCP servers

Related MCP Connectors

  • Free public MCP for AI agents — 193 tools, 44 workflows. No API key.

  • Analytical memory for AI agents: a real Postgres queried in plain English over MCP. One command.

  • Shared, governed long-term memory for AI agents across tools and sessions via MCP and REST.

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/HumanSamadian/data-nexus-mcp'

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