링크된 문서
ArangoDB
ArangoDB
ArangoDB MCP 서버는 ArangoDB 데이터베이스와 인터랙션하기 위한 Model Context Protocol(MCP) 서버입니다. TypeScript로 구현되었으며, ArangoDB의 문서 및 그래프 데이터 관리 기능을 MCP를 통해 사용할 수 있게 합니다. 이를 통해 AI 어시스턴트가 ArangoDB에 저장된 데이터에 접근하고 조작할 수 있습니다.
특징
- AQL(ArangoDB Query Language) 쿼리 실행 지원
- 문서 삽입, 업데이트, 삭제 기능 제공
- 컬렉션 관리 기능 (목록 조회, 생성)
- 데이터베이스 백업 기능
- 파라미터화된 쿼리 지원
- Claude Desktop 및 VSCode와 통합 가능
제공 도구
데이터 쿼리 및 조작
- arango_query: AQL 쿼리 실행
- 필수 매개변수: AQL 쿼리 문자열
- 선택적 매개변수: 파라미터화된 쿼리를 위한 바인드 변수
-
반환: JSON 형식의 쿼리 결과
-
arango_insert: 컬렉션에 문서 삽입
- 필수 매개변수: 컬렉션 이름, 문서 객체
- 문서 키가 제공되지 않으면 자동 생성
-
반환: 생성된 문서 메타데이터
-
arango_update: 기존 문서 업데이트
- 필수 매개변수: 컬렉션 이름, 문서 키, 업데이트 객체
-
반환: 업데이트된 문서 메타데이터
-
arango_remove: 컬렉션에서 문서 제거
- 필수 매개변수: 컬렉션 이름, 문서 키
- 반환: 제거된 문서 메타데이터
데이터베이스 관리
- arango_backup: 모든 컬렉션을 JSON 파일로 백업
- 필수 매개변수: 출력 디렉토리 경로
- 선택적 매개변수: 컬렉션 이름, 문서 제한 수
-
각 컬렉션의 데이터를 JSON 파일로 저장
-
arango_list_collections: 데이터베이스의 모든 컬렉션 목록 표시
-
반환: 컬렉션 이름, ID 및 유형을 포함한 컬렉션 정보 배열
-
arango_create_collection: 데이터베이스에 새 컬렉션 생성
- 필수 매개변수: 컬렉션 이름
- 선택적 매개변수: 컬렉션 유형(문서 또는 엣지 컬렉션), waitForSync 동작
- 반환: 이름, 유형 및 상태를 포함한 컬렉션 정보
설치 및 사용 방법
NPM을 통한 전역 설치
npm install -g arango-server
설치 없이 직접 실행
npx arango-server
Claude Desktop 구성
Claude Desktop의 설정 파일을 편집합니다:
- MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
- Windows: %APPDATA%/Claude/claude_desktop_config.json
다음과 같은 구성을 mcpServers 섹션에 추가합니다:
{
"mcpServers": {
"arango": {
"command": "node",
"args": ["/path/to/arango-server/build/index.js"],
"env": {
"ARANGO_URL": "your_database_url",
"ARANGO_DB": "your_database_name",
"ARANGO_USERNAME": "your_username",
"ARANGO_PASSWORD": "your_password"
}
}
}
}
환경 변수 요구사항
- ARANGO_URL: ArangoDB 서버 URL (기본 포트는 8529)
- ARANGO_DB: 데이터베이스 이름
- ARANGO_USERNAME: 데이터베이스 사용자
- ARANGO_PASSWORD: 데이터베이스 비밀번호
VSCode에서 사용
VSCode Copilot 에이전트와 함께 사용하려면 VSCode 1.99.0 이상이 설치되어 있어야 합니다:
.vscode/mcp.json파일을 생성하거나 편집합니다.- 다음 구성을 추가합니다:
{ "servers": { "arango-mcp": { "type": "stdio", "command": "npx", "args": ["arango-server"], "env": { "ARANGO_URL": "http://localhost:8529", "ARANGO_DB": "your_database", "ARANGO_USERNAME": "your_username", "ARANGO_PASSWORD": "your_password" } } } } - VSCode의 명령 팔레트(Ctrl+Shift+P 또는 Cmd+Shift+P)를 열고 "MCP: Start Server" 명령을 실행하여 arango-mcp를 선택합니다.
- VSCode의 채팅 뷰를 열고 에이전트 모드로 전환하여 arango-server 도구를 사용할 수 있는지 확인합니다.
사용 예시
다음은 서버 사용 예시입니다:
모든 사용자 쿼리
{
"query": "FOR user IN users RETURN user"
}
새 문서 삽입
{
"collection": "users",
"document": {
"name": "John Doe",
"email": "john@example.com"
}
}
문서 업데이트
{
"collection": "users",
"key": "123456",
"update": {
"name": "Jane Doe"
}
}
문서 삭제
{
"collection": "users",
"key": "123456"
}
모든 컬렉션 목록 조회
{} // 매개변수 필요 없음
새 컬렉션 생성
{
"name": "products",
"type": "document", // "document" 또는 "edge" (선택 사항, 기본값은 "document")
"waitForSync": false // 선택 사항, 기본값은 false
}
보안 고려사항
이 도구는 로컬 개발 환경에서만 사용하도록 설계되었습니다. 프로덕션 데이터베이스에 연결할 수 있지만, 이는 상당한 보안 위험을 초래할 수 있으므로 권장하지 않습니다. 개발과 프로덕션 환경의 분리를 유지하고 프로덕션 데이터를 보호하기 위해 개발 데이터베이스에서만 사용하는 것이 좋습니다.
라이선스
이 프로젝트는 MIT 라이선스 하에 제공됩니다.