LLM Responses MCP Server

MIT License
  • Linux

Integrations

  • Used for running the server, building the TypeScript code, and managing dependencies with commands like 'bun install', 'bun run build', and 'bun run dev'.

  • Provides containerization for deployment to EC2 or other server environments using Docker Compose.

  • Integrates with the MCP Inspector tool from GitHub (modelcontextprotocol/inspector) for testing and debugging the MCP server.

LLM 응답 MCP 서버

여러 AI 에이전트 간의 협력적 토론을 가능하게 하는 MCP(모델 컨텍스트 프로토콜) 서버로, 사용자 프롬프트에 대해 논의하고 합의에 도달할 수 있습니다.

개요

이 프로젝트는 다음과 같은 주요 기능을 통해 LLM 간 다중 턴 대화를 용이하게 하는 MCP 서버를 구현합니다.

  1. 세션 기반 협업 - LLM은 토론 세션에 참가자로 등록할 수 있습니다.
  2. 심의적 합의 - LLM은 합의에 도달하기 위해 확장된 토론에 참여할 수 있습니다.
  3. 실시간 응답 공유 - 모든 참가자가 서로의 기여를 보고 응답할 수 있습니다.

서버는 4가지 주요 도구 호출을 제공합니다.

  1. register-participant : LLM이 초기 응답을 통해 협업 세션에 참여할 수 있도록 허용합니다.
  2. submit-response : LLM이 토론 중에 후속 응답을 제출할 수 있도록 합니다.
  3. get-responses : LLM이 세션 내 다른 LLM의 모든 응답을 검색할 수 있도록 합니다.
  4. get-session-status : LLM이 등록 대기 기간이 완료되었는지 확인할 수 있도록 합니다.

이를 통해 여러 AI 에이전트(예: "에포르스 위원회")가 사용자의 질문에 대해 장기간 심의에 참여하고, 확고한 합의에 도달할 때까지 서로 토론하는 시나리오가 가능해집니다.

설치

지엑스피1

개발

# Build the TypeScript code bun run build # Start the server in development mode bun run dev

MCP Inspector로 테스트

이 프로젝트에는 MCP 서버를 테스트하고 디버깅하는 도구인 MCP Inspector 에 대한 지원이 포함되어 있습니다.

# Run the server with MCP Inspector bun run inspect

inspect 스크립트는 npx 사용하여 MCP Inspector를 실행하는데, 이 검사기는 브라우저에서 웹 인터페이스를 시작하여 MCP 서버와 상호 작용합니다.

이를 통해 다음을 수행할 수 있습니다.

  • 사용 가능한 도구와 리소스를 탐색하세요
  • 다른 매개변수를 사용한 테스트 도구 호출
  • 서버의 응답 보기
  • MCP 서버 구현 디버깅

용법

서버는 두 개의 엔드포인트를 노출합니다.

  • /sse - MCP 클라이언트가 연결할 서버 전송 이벤트 엔드포인트
  • /messages - MCP 클라이언트가 메시지를 보낼 수 있는 HTTP 엔드포인트

MCP 도구

등록-참가자

협업 세션에 참가자로 등록하세요:

// Example tool call const result = await client.callTool({ name: 'register-participant', arguments: { name: 'Socrates', prompt: 'What is the meaning of life?', initial_response: 'The meaning of life is to seek wisdom through questioning...', persona_metadata: { style: 'socratic', era: 'ancient greece' } // Optional } });

서버는 마지막 참가자가 참여한 후 3초의 등록 기간 동안 기다린 후 응답합니다. 응답에는 모든 참가자의 초기 응답이 포함되므로, 등록 기간이 종료되면 각 LLM이 다른 참가자의 의견에 즉시 응답할 수 있습니다.

제출-응답

토론 중에 후속 답변을 제출하세요.

// Example tool call const result = await client.callTool({ name: 'submit-response', arguments: { sessionId: 'EPH4721R-Socrates', // Session ID received after registration prompt: 'What is the meaning of life?', response: 'In response to Plato, I would argue that...' } });

get-responses

토론 세션의 모든 응답을 검색합니다.

// Example tool call const result = await client.callTool({ name: 'get-responses', arguments: { sessionId: 'EPH4721R-Socrates', // Session ID received after registration prompt: 'What is the meaning of life?' // Optional } });

응답에는 모든 참가자의 기여가 시간순으로 포함되어 있습니다.

세션 상태 가져오기

등록 대기 기간이 경과했는지 확인하세요.

// Example tool call const result = await client.callTool({ name: 'get-session-status', arguments: { prompt: 'What is the meaning of life?' } });

협력적 토론 흐름

  1. LLM은 프롬프트에 대한 초기 응답으로 참가자로 등록합니다.
  2. 서버는 마지막 등록 후 3초 동안 기다린 후 응답을 보냅니다.
  3. 등록 기간이 종료되면 모든 참가자는 모든 참가자의 초기 응답 요약을 받습니다.
  4. 그런 다음 참가자는 서로의 요점에 응답하여 후속 응답을 제출할 수 있습니다.
  5. 토론은 참가자들이 합의에 도달하거나 최대 라운드 수에 도달할 때까지 계속됩니다.

특허

MIT

EC2에 배포

이 프로젝트에는 EC2나 다른 서버 환경에 쉽게 배포할 수 있는 Docker 구성이 포함되어 있습니다.

필수 조건

  • Amazon Linux 2 또는 Ubuntu를 실행하는 EC2 인스턴스
  • 포트 62887에서 인바운드 트래픽을 허용하도록 구성된 보안 그룹
  • 인스턴스에 대한 SSH 액세스

배포 단계

  1. EC2 인스턴스에 저장소를 복제합니다.
    git clone <your-repository-url> cd <repository-directory>
  2. 배포 스크립트를 실행 가능하게 만듭니다.
    chmod +x deploy.sh
  3. 배포 스크립트를 실행합니다.
    ./deploy.sh

스크립트는 다음을 수행합니다.

  • Docker와 Docker Compose가 아직 설치되지 않았다면 설치하세요.
  • Docker 이미지 빌드
  • 컨테이너를 분리 모드로 시작합니다.
  • MCP 서버에 액세스할 수 있는 공개 URL을 표시합니다.

수동 배포

수동으로 배포하는 것을 선호하는 경우:

  1. Docker 이미지를 빌드합니다.
    docker-compose build
  2. 컨테이너를 시작합니다.
    docker-compose up -d
  3. 컨테이너가 실행 중인지 확인하세요.
    docker-compose ps

서버 접속

배포가 완료되면 MCP 서버에 다음 위치에서 액세스할 수 있습니다.

  • http://<ec2-public-ip>:62887/sse - SSE 엔드포인트
  • http://<ec2-public-ip>:62887/messages - 메시지 엔드포인트

EC2 보안 그룹에서 포트 62887이 열려 있는지 확인하세요!

-
security - not tested
A
license - permissive license
-
quality - not tested

여러 AI 에이전트 간의 협력적 토론을 가능하게 하는 모델 컨텍스트 프로토콜 서버로, 사용자 프롬프트에 대해 논의하고 합의에 도달할 수 있습니다.

  1. Overview
    1. Installation
      1. Development
        1. Testing with MCP Inspector
          1. Usage
            1. MCP Tools
          2. Collaborative Debate Flow
            1. License
              1. Deployment to EC2
                1. Prerequisites
                2. Deployment Steps
                3. Manual Deployment
                4. Accessing the Server
              ID: plnpezjkhp