Skip to main content
Glama
Ayushsharma109

OpsMCP

🚀 OpsMCP — AI 기반 회사 운영 에이전트

Model Context Protocol (MCP) 을 사용하여 자연어 AI 상호작용을 PostgreSQL 데이터베이스에 안전하게 연결하는 AI 기반 회사 운영 에이전트입니다.

📌 개요

OpsMCP를 사용하면 SQL 쿼리를 직접 작성하거나 복잡한 관리자 패널을 탐색하는 대신 자연어로 회사 데이터와 상호작용할 수 있습니다.

이 시스템은 MCP 도구를 통해 AI 에이전트를 PostgreSQL 데이터베이스에 연결하여, 에이전트가 정보를 검색하고 사용자를 분석하며 승인된 데이터베이스 작업을 수행할 수 있게 합니다.

민감한 쓰기 작업의 경우, 데이터베이스를 수정하기 전에 사용자의 명시적 확인이 필요합니다.


Related MCP server: Postgres MCP Server

🎯 문제점

기존의 내부 회사 시스템은 사용자에게 다음과 같은 작업을 요구하는 경우가 많습니다:

  • 여러 관리 대시보드 탐색

  • 데이터베이스 구조 이해

  • SQL 쿼리 작성

  • 반복적인 작업을 수동으로 수행

  • 데이터베이스 수정 사항을 별도로 추적

이로 인해 일상적인 회사 운영에 불필요한 복잡성이 발생합니다.


💡 해결책

OpsMCP는 회사 운영을 위한 자연어 인터페이스를 제공합니다.

다음과 같이 작성하는 대신:

SELECT id, name, email, role
FROM users
ORDER BY id;

사용자는 간단히 이렇게 물어볼 수 있습니다:

"모든 사용자를 보여줘."

AI는 어떤 MCP 도구가 필요한지 판단하고, 이를 실행하며, 결과를 받아 사람이 이해하기 쉬운 응답으로 변환합니다.


🧠 작동 방식

                   ┌──────────────────────┐
                   │      Web Dashboard   │
                   └──────────┬───────────┘
                              │
                              ▼
                   ┌──────────────────────┐
                   │      AI Agent        │
                   │  Natural Language    │
                   └──────────┬───────────┘
                              │
                       MCP Tool Calling
                              │
                              ▼
                   ┌──────────────────────┐
                   │     MCP Server       │
                   │                      │
                   │ Tools • Resources    │
                   │ Prompts • Security   │
                   └──────────┬───────────┘
                              │
                              ▼
                   ┌──────────────────────┐
                   │     PostgreSQL       │
                   │      Database        │
                   └──────────────────────┘

✨ 주요 기능

🤖 자연어 데이터베이스 작업

사용자는 일반 언어로 회사 데이터와 상호작용할 수 있습니다.

예시:

Show me all users.
Find user with ID 2.
Create a new user named Rahul with role developer.
Change Rahul's role to manager.
Analyze all users and tell me which role has the most users.

🔧 MCP 도구

이 프로젝트는 데이터베이스 작업을 MCP 도구로 노출합니다.

현재 포함된 도구:

도구

용도

get_users

모든 사용자 검색

get_user_by_id

특정 사용자 검색

create_user

새 사용자 생성

update_user_role

사용자 역할 업데이트

analyze_users

사용자 분포 분석


📚 MCP 리소스

이 프로젝트는 AI 에이전트에게 구조화된 상황 정보를 제공하는 MCP 리소스도 시연합니다.

예시:

company://info

이 리소스에는 다음에 대한 정보가 포함됩니다:

  • 부서

  • 회사 역할

  • 조직 구조


🧩 MCP 프롬프트

사용자 분석과 같은 구조화된 작업을 위한 재사용 가능한 MCP 프롬프트가 포함되어 있습니다.

분석 워크플로 예시:

1. Count total users
2. Group users by role
3. Identify unusual roles
4. Generate a summary

🔐 보안

보안은 이 프로젝트의 중요한 부분입니다.

API 키 인증

MCP 서버는 HTTP 인증 헤더를 사용한 API 키 인증을 지원합니다.

두 가지 권한 수준이 구현되어 있습니다:

READ_ONLY
READ_WRITE

권한 부여

읽기 전용 권한으로 읽기 작업을 수행할 수 있습니다.

데이터베이스를 변경하는 작업에는 다음이 필요합니다:

READ_WRITE

권한.


⚠️ 쓰기 작업 전 확인

데이터베이스를 변경하는 작업을 실행하기 전에 AI 클라이언트는 사용자에게 확인을 요청합니다.

예시:

⚠️ WRITE OPERATION REQUIRES CONFIRMATION

Tool      : update_user_role
Arguments : {
    "user_id": 2,
    "new_role": "manager"
}

Do you want to continue? (yes/no)

명시적 승인 후에만 데이터베이스가 수정됩니다.


🛡️ 입력 검증

데이터베이스 작업 전에 사용자 입력이 검증됩니다.

예를 들어, 지원되는 역할은 다음과 같습니다:

developer
designer
product manager
manager

다음과 같은 잘못된 입력은:

aestronuot

데이터베이스에 삽입되는 대신 거부됩니다.


📋 감사 로깅

데이터베이스를 변경하는 작업은 감사 로그에 기록됩니다.

예시:

action          | tool_name        | status
----------------+------------------+---------
update_user_role| update_user_role  | SUCCESS

이를 통해 민감한 작업에 대한 추적 가능성이 제공됩니다.


🗂️ 프로젝트 구조

OPSMCP-AI-AGENNT/
│
├── server/
│   ├── auth/
│   ├── database/
│   │   └── connection.py
│   │
│   ├── prompts/
│   │   └── user_analysis.py
│   │
│   ├── resources/
│   │   └── company.py
│   │
│   └── tools/
│       ├── audit.py
│       └── user_tools.py
│
├── static/
│   ├── app.js
│   └── style.css
│
├── templates/
│   └── index.html
│
├── ai_client.py
├── web_app.py
├── run_server.py
├── requirements.txt
├── .gitignore
└── README.md

🛠️ 기술 스택

백엔드

  • Python

  • FastAPI

  • Uvicorn

AI

  • OpenAI 호환 API

  • 함수/도구 호출

  • 자연어 상호작용

프로토콜

  • Model Context Protocol (MCP)

  • Streamable HTTP 전송

데이터베이스

  • PostgreSQL

  • Psycopg

프론트엔드

  • HTML

  • CSS

  • JavaScript

보안

  • API 키 인증

  • 읽기/쓰기 권한 부여

  • 확인 기반 데이터베이스 변경

  • 입력 검증

  • 감사 로깅


⚙️ 로컬 설정

1. 저장소 클론

git clone https://github.com/Ayushsharma109/OPSMCP-AI-AGENNT.git

cd OPSMCP-AI-AGENNT

2. 가상 환경 생성

Windows:

python -m venv .venv

활성화:

.venv\Scripts\activate

3. 의존성 설치

pip install -r requirements.txt

4. 환경 변수 구성

.env 파일 생성:

MCP_API_KEY=your_main_api_key
MCP_READONLY_KEY=your_readonly_api_key

OPENAI_API_KEY=your_api_key
OPENAI_BASE_URL=your_base_url
OPENAI_MODEL=your_model

DB_NAME=mcp_demo
DB_USER=postgres
DB_PASSWORD=your_password
DB_HOST=localhost
DB_PORT=5432

.env 파일이나 API 키를 GitHub에 커밋하지 마세요.

5. PostgreSQL 시작

PostgreSQL이 실행 중이고 필요한 데이터베이스/테이블이 존재하는지 확인하세요.

6. MCP 서버 시작

python run_server.py

MCP 서버는 다음에서 실행됩니다:

http://127.0.0.1:8000

7. 웹 애플리케이션 시작

다른 터미널을 엽니다:

python web_app.py

대시보드는 다음에서 확인할 수 있습니다:

http://127.0.0.1:8080

🧪 예시 워크플로

사용자

Show me all users.

AI 에이전트

get_users가 필요하다고 판단합니다.

MCP

다음을 실행합니다:

get_users()

PostgreSQL

사용자 레코드를 반환합니다.

AI

데이터베이스 결과를 자연어 응답으로 변환합니다.


🔄 쓰기 작업 워크플로

User Request
     ↓
AI Agent
     ↓
MCP Tool Selection
     ↓
Permission Check
     ↓
User Confirmation
     ↓
Input Validation
     ↓
PostgreSQL Update
     ↓
Audit Log
     ↓
AI Response

이 설계는 우발적인 데이터베이스 수정을 방지하는 데 도움이 됩니다.


🏆 해커톤 MVP

OpsMCP는 MCP를 사용하여 AI 에이전트를 실제 엔터프라이즈 데이터 및 제어된 백엔드 작업에 연결하는 방법을 시연하는 데 초점을 맞춘 MVP로 개발되었습니다.

이 프로젝트는 다음에 중점을 둡니다:

  • AI 도구 호출

  • MCP 아키텍처

  • 안전한 데이터베이스 상호작용

  • 변경 사항에 대한 인간 확인

  • 감사 가능성

  • 자연어 회사 운영


🚀 향후 개선 사항

잠재적인 향후 개선 사항은 다음과 같습니다:

  • 역할 기반 대시보드 접근

  • 더 많은 엔터프라이즈 MCP 도구

  • 고급 분석

  • 다중 데이터베이스 지원

  • 더 나은 감사 로그 시각화

  • 배포 준비 완료 인증

  • 엔터프라이즈 SSO 통합

  • 더 세분화된 권한


👨💻 작성자

Ayush Sharma

다음을 탐구하는 솔로 해커톤 프로젝트로 제작되었습니다:

AI 에이전트 + MCP + PostgreSQL + 안전한 도구 실행


📄 라이선스

이 프로젝트는 주로 해커톤 및 학습 프로젝트로 사용하기 위한 것입니다.

F
license - not found
Not graded
quality - not tested
B
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
    A
    quality
    D
    maintenance
    Enables AI assistants to interact with PostgreSQL databases using natural language queries, providing secure read-only access to database schemas and SQL translation capabilities.
    6
    7
  • F
    license
    A
    quality
    Not graded
    maintenance
    Enables comprehensive PostgreSQL database management through natural language including queries, schema operations, user management, and administrative tasks. Features enterprise-grade connection pooling, transaction support, and full database administration capabilities.
    11
    225
    1
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables natural language interaction with PostgreSQL databases, supporting query execution, schema management, data operations, user management, and database maintenance with secure remote access via HTTP/SSE transport.
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables secure, read-only PostgreSQL database interaction through natural language, with automatic database discovery and connection management.
    2
    MIT

View all related MCP servers

Related MCP Connectors

  • Query PostgreSQL databases in plain English — LLM-generated, safety-validated SQL.

  • The grounded data layer for any LLM: governed SQL, metrics, lineage and catalog over your data.

  • GibsonAI MCP server: manage your databases with natural language

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/Ayushsharma109/OPSMCP-AI-AGENNT'

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