Meeting BaaS MCP Server

by Meeting-Baas

Integrations

  • Integrates with Google Calendar to list, manage, and retrieve calendar events. Enables scheduling recordings for meetings and connecting calendar data to meeting bots.

  • Allows bots to join and record Zoom meetings, automatically transcribing the content and making it searchable.

BaaS MCP 서버 회의

회의 내용, 녹음 내용, 일정 이벤트, 검색 기능 등 회의 데이터를 관리하기 위한 도구를 제공하는 MCP(Model Context Protocol) 서버입니다.

개요

이 프로젝트는 Claude와 Cursor와 같은 AI 비서가 회의 데이터에 접근하고 조작할 수 있도록 하는 모델 컨텍스트 프로토콜(MCP) 서버를 구현합니다. 다음과 같은 용도로 사용할 수 있는 도구와 리소스 세트를 제공합니다.

  • 회의 봇 초대 : 회의를 자동으로 녹화하고 기록하는 봇을 비디오 회의에 생성하고 초대합니다.지엑스피1
  • 회의 데이터 쿼리 : 전체 녹음을 보지 않고도 회의 기록을 검색하고 특정 정보를 찾을 수 있습니다.
    "Search my recent meetings for discussions about the quarterly budget" "Find all mentions of Project Apollo in yesterday's team meeting" "Show me parts of the meeting where Jane was speaking"
  • 캘린더 이벤트 관리 : 캘린더 항목과 예정된 회의를 보고 구성합니다.
  • 녹음 정보 액세스 : 회의 녹음 및 해당 상태에 대한 메타데이터 가져오기

필수 조건

  • Node.js(v16 이상)
  • 엔피엠
  • MeetingBaaS 계정 : 회사 이메일 주소를 사용하여 MeetingBaaS 계정에 액세스해야 합니다.
    • 모든 로그, 봇 및 공유 링크는 동일한 회사 도메인(gmail.com과 같은 개인 이메일 제외)을 사용하는 동료가 사용할 수 있습니다.
    • 이를 통해 모든 팀원이 조직의 모든 사람이 만든 회의 녹음 및 대본에 액세스할 수 있는 원활한 협업이 가능해집니다.

설치

  1. 저장소를 복제합니다.
    git clone <repository-url> cd mcp-baas
  2. 종속성 설치:
    npm install
  3. 프로젝트를 빌드하세요:
    npm run build

용법

서버를 시작합니다:

npm run start

기본적으로 서버는 포트 7017에서 실행되며 MCP 엔드포인트는 http://localhost:7017/mcp 에 노출됩니다.

사용 가능한 도구

서버는 MCP 프로토콜을 통해 여러 도구를 제공합니다.

캘린더 도구

  • oauthGuidance : Google 또는 Microsoft 캘린더에 대한 OAuth 설정에 대한 자세한 단계별 지침을 확인하세요.
    • 매개변수가 필요하지 않습니다
    • OAuth 자격 증명을 얻고 캘린더 통합을 설정하기 위한 포괄적인 지침을 반환합니다.
  • listRawCalendars : 통합 전에 Google 또는 Microsoft에서 사용 가능한 캘린더를 나열합니다.
    • 매개변수: platform ("Google" 또는 "Microsoft"), clientId , clientSecret , refreshToken
    • 사용 가능한 캘린더 목록을 ID와 기본 상태와 함께 반환합니다.
  • setupCalendarOAuth : OAuth 자격 증명을 사용하여 캘린더를 통합합니다.
    • 매개변수: platform ("Google" 또는 "Microsoft"), clientId , clientSecret , refreshToken , rawCalendarId (선택 사항)
    • 캘린더 세부 정보와의 성공적인 통합 확인을 반환합니다.
  • listCalendars : 통합된 모든 캘린더를 나열합니다.
    • 매개변수가 필요하지 않습니다
    • 이름, 이메일 주소, UUID가 포함된 모든 달력 목록을 반환합니다.
  • getCalendar : 특정 캘린더 통합에 대한 자세한 정보를 가져옵니다.
    • 매개변수: calendarId (캘린더의 UUID)
    • 포괄적인 일정 세부 정보를 반환합니다.
  • deleteCalendar : 캘린더 통합을 영구적으로 제거합니다.
    • 매개변수: calendarId (캘린더의 UUID)
    • 삭제 성공 확인이 반환됩니다.
  • resyncAllCalendars : 연결된 모든 캘린더를 강제로 새로 고칩니다.
    • 매개변수가 필요하지 않습니다
    • 동기화 작업의 상태를 반환합니다.
  • listUpcomingMeetings : 캘린더에서 예정된 회의를 나열합니다.
    • 매개변수: calendarId , status (선택 사항: "예정", "지난", "모두"), limit (선택 사항)
    • 이름, 시간 및 녹음 상태가 포함된 회의 목록을 반환합니다.
  • listEvents : 포괄적인 필터링 옵션을 사용하여 캘린더 이벤트를 나열합니다.
    • 매개변수: calendarId , startDateGte , startDateLte , attendeeEmail 등의 선택적 필터
    • 풍부한 정보가 포함된 자세한 이벤트 목록을 반환합니다.
  • listEventsWithCredentials : 쿼리에서 직접 제공된 자격 증명을 사용하여 캘린더 이벤트를 나열합니다.
    • 매개변수: calendarId , apiKey , listEvents 와 동일한 선택적 필터
    • listEvents 와 동일한 세부 정보를 반환하지만 직접 인증을 사용합니다.
  • getEvent : 특정 캘린더 이벤트에 대한 자세한 정보를 가져옵니다.
    • 매개변수: eventId (이벤트의 UUID)
    • 참석자 및 녹화 상태를 포함한 포괄적인 이벤트 세부 정보를 반환합니다.
  • scheduleRecording : 봇이 다가올 회의를 녹화하도록 예약합니다.
    • 매개변수: eventId , botName , botImage , recordingMode 등의 선택적 설정
    • 성공적인 일정 예약 확인을 반환합니다.
  • scheduleRecordingWithCredentials : 쿼리에서 직접 제공된 자격 증명을 사용하여 녹음을 예약합니다.
    • 매개변수: eventId , apiKey , botName , 그리고 scheduleRecording 과 동일한 선택적 설정
    • 성공적인 일정 예약 확인을 반환합니다.
  • cancelRecording : 이전에 예약된 녹음을 취소합니다.
    • 매개변수: eventId , allOccurrences (선택 사항, 반복 이벤트의 경우)
    • 취소 성공 확인이 반환됩니다.
  • cancelRecordingWithCredentials : 쿼리에서 직접 제공된 자격 증명을 사용하여 녹음을 취소합니다.
    • 매개변수: eventId , apiKey , allOccurrences (선택 사항)
    • 취소 성공 확인이 반환됩니다.
  • checkCalendarIntegration : 캘린더 통합 상태를 확인하고 진단합니다.
    • 매개변수가 필요하지 않습니다
    • 포괄적인 상태 보고서와 문제 해결 팁을 반환합니다.

회의 도구

  • createBot : 화상 회의에 참여하여 회의를 녹화하고 필사할 수 있는 회의 봇을 생성합니다.
    • 매개변수:
      • meeting_url (참여할 회의의 URL)
      • name (선택적 봇 이름)
      • botImage (봇 아바타 이미지에 대한 선택적 URL)
      • entryMessage (봇이 참여할 때 보낼 선택적 메시지)
      • deduplicationKey (동일한 회의에 참석하는 데 5분 제한을 무시하는 선택적 키)
      • nooneJoinedTimeout (아무도 참여하지 않을 경우 봇이 떠나는 시간 초과(초))
      • waitingRoomTimeout (봇이 대기실에 갇혔을 때 대기실을 떠나기 위한 시간 초과(초))
      • speechToTextProvider (선택적 전사 제공자: "Gladia", "Runpod" 또는 "Default")
      • speechToTextApiKey (음성-텍스트 제공자를 위한 선택적 API 키)
      • streamingInputUrl (오디오 입력을 스트리밍하기 위한 선택적 WebSocket URL)
      • streamingOutputUrl (오디오 출력을 스트리밍하기 위한 선택적 WebSocket URL)
      • streamingAudioFrequency (스트리밍을 위한 선택 주파수: "16khz" 또는 "24khz")
      • extra (회의 유형, 사용자 정의 요약 프롬프트, 검색 키워드 등 회의에 대한 추가 메타데이터가 포함된 선택적 개체)
    • 반환: ID 및 참여 상태를 포함한 봇 세부 정보
  • getBots : 모든 봇과 관련 회의를 나열합니다.
  • getBotsByMeeting : 특정 회의 URL에 대한 봇을 가져옵니다.
  • getRecording : 특정 봇/미팅에 대한 녹음 정보를 검색합니다.
  • getRecordingStatus : 진행 중인 녹음 상태를 확인합니다.
  • getMeetingData : 특정 회의에 대한 대본 및 녹음 데이터를 가져옵니다.
    • 매개변수: meetingId (데이터를 가져올 회의 ID)
    • 반환: 회의 녹화에 대한 정보(기간 및 대본 세그먼트 수 포함)
  • getMeetingDataWithCredentials : 직접 API 자격 증명을 사용하여 대본 및 녹음 데이터를 가져옵니다.
    • 매개변수: meetingId (회의 ID), apiKey (인증을 위한 API 키)
    • 반환: getMeetingData 와 동일한 정보이지만 직접 인증을 사용합니다.

필사 도구

  • getMeetingTranscript : 발표자 이름과 발표자별로 그룹화된 콘텐츠가 포함된 회의 기록을 가져옵니다.
    • 매개변수: botId (회의를 기록한 봇)
    • 반환: 화자 정보가 포함된 전체 대본(화자별로 그룹화된 문단 형식)
    • 출력 예:
      Meeting: "Weekly Team Meeting" Duration: 45m 30s Transcript: John Smith: Hello everyone, thanks for joining today's call. We have a lot to cover regarding the Q3 roadmap and our current progress on the platform redesign. Sarah Johnson: Thanks John. I've prepared some slides about the user testing results we got back yesterday. The feedback was generally positive but there are a few areas we need to address.
  • findKeyMoments : 회의에서 중요한 순간을 자동으로 식별하고 링크를 공유합니다.
    • 매개변수: botId , 선택적 meetingTitle , 찾을 topics 목록(선택 사항), 선택적 maxMoments
    • 반환: 주요 순간의 마크다운 형식 목록(링크 포함), 대본을 기반으로 자동 감지
    • 수동 타임스탬프 선택 없이 AI 기반 분석을 사용하여 중요한 순간을 찾습니다.

QR 코드 도구

  • generateQRCode : 봇 아바타로 사용할 수 있는 AI 생성 QR 코드 이미지를 생성합니다.
    • 매개변수:
      • type : QR 코드 유형(URL, 이메일, 전화, SMS, 텍스트)
      • to : QR 코드의 목적지(URL, 이메일, 전화번호 또는 문자 메시지)
      • prompt : QR 코드를 맞춤 설정하는 AI 프롬프트입니다(최대 1000자). "API key: qrc_your_key" 또는 이와 유사한 문구를 입력하여 프롬프트 텍스트에 API 키를 직접 포함할 수 있습니다.
      • style : QR 코드의 스타일(style_default, style_dots, style_rounded, style_crystal)
      • useAsBotImage : 생성된 QR 코드를 봇 아바타로 사용할지 여부(기본값: true)
      • template : QR 코드에 대한 템플릿 ID(선택 사항)
      • apiKey : QR 코드 AI API 키(선택 사항, 제공하지 않으면 기본값 사용)
    • 반환: joinMeeting 도구에서 직접 사용할 수 있는 생성된 QR 코드 이미지의 URL
    • 사용 예:
      "Generate a QR code with my email lazare@spoke.app that looks like a Tiger in crystal style"
    • 프롬프트에 API 키가 있는 예:
      "Generate a QR code for my website https://example.com that looks like a mountain landscape. Use API key: qrc_my-personal-api-key-123456"
    • 형식 매개변수를 사용한 예:
      "Generate a QR code with the following parameters: - Type: email - To: john.doe@example.com - Prompt: Create a QR code that looks like a mountain landscape - Style: style_rounded - API Key: qrc_my-personal-api-key-123456"

링크 공유 도구

  • shareableMeetingLink : 회의 녹화에 대한 깔끔하게 포맷된 공유 가능한 링크를 생성합니다.
    • 매개변수: botId , 선택 사항인 timestamp , title , speakerNamedescription
    • 반환: 채팅에서 직접 공유할 수 있는 메타데이터가 포함된 마크다운 형식의 링크
    • 예:
      📽️ **Meeting Recording: Weekly Team Sync** ⏱️ Timestamp: 00:12:35 🎤 Speaker: Sarah Johnson 📝 Discussing the new product roadmap 🔗 [View Recording](https://meetingbaas.com/viewer/abc123?t=755)
  • shareMeetingSegments : 회의의 여러 중요한 순간에 대한 링크 목록을 만듭니다.
    • 매개변수: botId 및 타임스탬프, 스피커, 설명이 포함된 segments 배열
    • 반환: 각 순간에 대한 직접 링크가 포함된 마크다운 형식의 세그먼트 목록
    • 긴 회의의 목차를 만드는 데 유용합니다.

예제 워크플로

회의 녹음

  1. 다가오는 회의를 위한 봇을 만들어보세요:
    "Create a bot for my Zoom meeting at https://zoom.us/j/123456789"
  2. 봇은 자동으로 회의에 참여하고 녹음을 시작합니다.
  3. 녹음 상태 확인:
    "What's the status of my meeting recording for the Zoom call I started earlier?"

캘린더 통합 및 자동 기록

  1. OAuth 자격 증명을 얻는 방법에 대한 지침을 받으세요.
    "I want to integrate my Google Calendar. How do I get OAuth credentials?"
  2. 통합 전에 사용 가능한 캘린더를 나열하세요.
    "List my available Google calendars. Here are my OAuth credentials: - Client ID: my-client-id-123456789.apps.googleusercontent.com - Client Secret: my-client-secret-ABCDEF123456 - Refresh Token: my-refresh-token-ABCDEF123456789"
  3. 특정 캘린더와 캘린더 통합을 설정합니다.
    "Integrate my Google Calendar using these credentials: - Platform: Google - Client ID: my-client-id-123456789.apps.googleusercontent.com - Client Secret: my-client-secret-ABCDEF123456 - Refresh Token: my-refresh-token-ABCDEF123456789 - Raw Calendar ID: primary@gmail.com"
  4. 다가오는 회의를 확인하세요:
    "Show me my upcoming meetings from calendar 1a2b3c4d-5e6f-7a8b-9c0d-1e2f3a4b5c6d"
  5. 다가오는 회의에 대한 녹화 일정을 예약하세요:
    "Schedule a recording for my team meeting with event ID 7a8b9c0d-1e2f-3a4b-5c6d-7e8f9a0b1c2d. Configure the bot with: - Name: Team Meeting Bot - Recording Mode: gallery_view - Entry Message: Hello everyone, I'm here to record the meeting"
  6. 캘린더에 예약된 모든 녹화를 확인하세요:
    "Show me all meetings in my calendar that have recordings scheduled"
  7. 이전에 예약된 녹화를 취소합니다.
    "Cancel the recording for event 7a8b9c0d-1e2f-3a4b-5c6d-7e8f9a0b1c2d"
  8. 회의가 누락된 경우 일정 데이터를 새로 고칩니다.
    "Force a resync of all my connected calendars"

간소화된 캘린더 통합

캘린더 통합을 더 간편하게 하려면 Claude Desktop 구성 파일에서 캘린더 OAuth 자격 증명을 직접 구성할 수 있습니다.

  1. 구성 파일을 편집하세요:
    vim ~/Library/Application\ Support/Claude/claude_desktop_config.json
  2. botConfig에 calendarOAuth 섹션을 추가합니다.
    "botConfig": { // other bot configuration... "calendarOAuth": { "platform": "Google", // or "Microsoft" "clientId": "YOUR_OAUTH_CLIENT_ID", "clientSecret": "YOUR_OAUTH_CLIENT_SECRET", "refreshToken": "YOUR_REFRESH_TOKEN", "rawCalendarId": "primary@gmail.com" // Optional } }
  3. 파일을 저장하고 Claude Desktop을 다시 시작하면 일정이 자동으로 통합됩니다.

이 방법을 사용하면 OAuth 설정 도구를 수동으로 호출할 필요가 없으므로 일정 통합을 한 번의 구성 작업으로 처리할 수 있습니다.

참고: 캘린더 통합은 완전히 선택 사항입니다. 설정에서 calendarOAuth 섹션을 생략하면 캘린더를 연결하지 않고도 Meeting BaaS를 사용할 수 있습니다. 캘린더 통합은 예정된 회의에 대한 액세스를 제공하고 캘린더 일정을 자동으로 기록하여 사용자 경험을 향상시킵니다.

회의 내용 분석

  1. 회의의 전체 내용을 확인하세요:
    "Get the transcript from my team meeting with bot ID abc-123"
  2. 회의에서 중요한 순간을 찾으세요.
    "Identify key moments from yesterday's product planning meeting with bot ID xyz-456"
  3. 회의의 특정 순간을 공유하세요.
    "Create a shareable link to the part of meeting abc-123 at timestamp 12:45 where John was talking about the budget"

직접 자격 증명 도구 사용

API 자격 증명을 쿼리에 직접 제공할 수 있습니다.

  1. 직접 자격 증명이 있는 이벤트 나열:
    "List events from calendar 5c99f8a4-f498-40d0-88f0-29f698c53c51 using API key tesban where attendee is philipe@spoke.app"
  2. 직접 자격 증명으로 녹음 일정을 예약하세요.
    "Schedule a recording for event 78d06b42-794f-4efe-8195-62db1f0052d5 using API key tesban with bot name 'Weekly Meeting Bot'"
  3. 직접 자격 증명을 사용하여 녹음을 취소합니다.
    "Cancel the recording for event 97cd62f0-ea9b-42b3-add5-7a607ce6d80f using API key tesban"
  4. 직접 자격 증명을 사용하여 회의 데이터를 가져옵니다.
    "Get meeting data for meeting 47de9462-bea7-406c-b79a-fd6b82c3de76 using API key tesban"

AI가 생성한 QR 코드를 봇 아바타로 활용

  1. 귀하의 연락처 정보와 맞춤형 디자인을 담은 QR 코드를 생성하세요.
    "Generate a QR code with the following parameters: - Type: email - To: john.doe@company.com - Prompt: Create a professional-looking QR code with abstract blue patterns that resemble a corporate logo - Style: style_crystal"
  2. 생성된 QR 코드를 회의에서 봇 아바타로 사용하세요.
    "Join my Zoom meeting at https://zoom.us/j/123456789 with the following parameters: - Bot name: QR Code Assistant - Bot image: [URL from the generated QR code] - Entry message: Hello everyone, I'm here to record the meeting. You can scan my avatar to get my contact information."
  3. 간편한 공유를 위해 회의 링크가 포함된 QR 코드를 생성하세요.
    "Generate a QR code with the following parameters: - Type: url - To: https://zoom.us/j/123456789 - Prompt: Create a colorful QR code with a calendar icon in the center - Style: style_rounded"

회의 녹화에 액세스하기

회의 녹화 내용은 봇 ID를 사용하여 Meeting BaaS 뷰어를 통해 직접 액세스할 수 있습니다.

https://meetingbaas.com/viewer/{BOT_ID}

예를 들어:

https://meetingbaas.com/viewer/67738f48-2360-4f9e-a999-275a74208ff5

이 뷰어는 다음을 제공합니다.

  • 회의 영상 녹화
  • 화자 식별을 통한 동기화된 대본
  • 스피커 또는 주제별 탐색
  • 팀원과 직접 링크 공유

createBot , getBots , 검색 도구를 사용하면 녹화본에 쉽게 액세스할 수 있는 뷰어 URL을 구성하는 데 사용할 수 있는 봇 ID를 받게 됩니다.

중요 : 모든 회의 녹화본과 링크는 동일한 회사 이메일 도메인(예: @yourcompany.com)을 사용하는 동료와 자동으로 공유됩니다. 이를 통해 전체 팀이 개별적인 권한 없이 녹화본에 액세스할 수 있으며, 조직 내 모든 구성원이 회의 관련 정보에 접근할 수 있는 협업 환경을 조성할 수 있습니다.

구성

서버는 환경 변수를 통해서 구성하거나 src/config.ts 파일을 편집하여 구성할 수 있습니다.

주요 구성 옵션:

  • PORT : 서버가 수신하는 포트(기본값: 7017)
  • API_BASE_URL : Meeting BaaS API의 기본 URL
  • DEFAULT_API_KEY : 테스트를 위한 기본 API 키

Claude Desktop과 통합

Claude Desktop과 통합하려면:

  1. Claude Desktop 구성 파일을 편집합니다.
    vim ~/Library/Application\ Support/Claude/claude_desktop_config.json
  2. Meeting BaaS MCP 서버 구성을 추가합니다.
    { "mcpServers": { "meetingbaas": { "command": "/bin/bash", "args": [ "-c", "cd /path/to/meeting-mcp && (npm run build 1>&2) && MCP_FROM_CLAUDE=true node dist/index.js" ], "headers": { "x-api-key": "YOUR_API_KEY_FOR_MEETING_BAAS" }, "botConfig": { "name": "Meeting Assistant", "image": "https://meetingbaas.com/static/972043b7d604bca0d4b0048c7dd67ad2/fc752/previewFeatures.avif", "entryMessage": "Hello, I'm a bot from Meeting Baas. I'll be taking notes for this meeting.", "deduplicationKey": "unique_key_to_override_restriction", "nooneJoinedTimeout": 600, "waitingRoomTimeout": 600, "speechToTextProvider": "Gladia", "speechToTextApiKey": "YOUR_SPEECH_TO_TEXT_API_KEY", "extra": { "meetingType": "sales", "summaryPrompt": "Focus on action items and decision points", "searchKeywords": ["budget", "timeline", "deliverables"], "timeStampHighlights": [ {"time": "00:05:23", "note": "Discussion about Q2 sales numbers"}, {"time": "00:12:47", "note": "Team disagreement on marketing strategy"} ], "participants": ["John Smith", "Jane Doe", "Bob Johnson"], "project": "Project Phoenix", "department": "Engineering", "priority": "High", "followupDate": "2023-12-15", "tags": ["technical", "planning", "retrospective"] }, // Optional: Direct calendar OAuth integration // Add this section only if you want to enable calendar integration "calendarOAuth": { "platform": "Google", // or "Microsoft" "clientId": "YOUR_OAUTH_CLIENT_ID", "clientSecret": "YOUR_OAUTH_CLIENT_SECRET", "refreshToken": "YOUR_REFRESH_TOKEN", "rawCalendarId": "primary@gmail.com" // Optional - specific calendar ID } } } } }
    참고: /path/to/meeting-mcp 로컬 저장소 경로로 바꾸고 YOUR_API_KEY 실제 API 키로 바꾸세요.

    중요: 회사 이메일 계정과 연결된 API 키를 사용하고 있는지 확인하세요. 모든 녹음 파일, 봇 로그 및 공유 링크는 동일한 이메일 도메인을 사용하는 동료가 자동으로 접근하여 원활한 팀 협업을 지원합니다.

    QR 코드 API에 대한 참고 사항: QR 코드 API는 Meeting BaaS API와 동일한 헤더 이름( x-api-key )을 사용하지만, 별도로 설정해야 합니다. QR 코드 생성 기능을 사용하려면 아래 "QR 코드 API 키 구성" 섹션에 설명된 방법 중 하나를 사용해야 합니다. 예를 들어 환경 변수를 설정하거나 프롬프트에 키를 직접 포함하는 방법이 있습니다.

  3. Claude Desktop을 다시 시작합니다.

구성 설명:

  • command 사용할 셸을 지정합니다.
  • args 에는 명령줄 인수가 포함됩니다.
    • 프로젝트 디렉토리로 cd
    • 오류 출력을 stderr로 리디렉션하여 프로젝트를 빌드합니다.
    • Claude Desktop에서 실행 중임을 나타내기 위해 MCP_FROM_CLAUDE=true 환경 변수로 서버를 실행합니다.
  • headers 인증을 위한 API 키가 포함되어 있습니다.
    • x-api-key : 미팅 서비스에 접속하기 위한 Meeting BaaS API 키
  • botConfig 사용하면 봇의 모양과 동작을 사용자 지정할 수 있습니다.
    • name : 회의에서 봇에 표시되는 이름(기본값: "Claude Assistant")
    • image : 봇의 아바타로 사용할 공개적으로 접근 가능한 이미지의 URL(선택 사항)
    • entryMessage : 봇이 회의에 참여할 때 보낼 메시지(선택 사항)
    • deduplicationKey : 동일한 회의에 참석하는 데 5분 제한을 무시하는 고유 키(선택 사항)
    • nooneJoinedTimeout : 참가자가 참여하지 않을 경우 봇이 종료되는 시간(초) (선택 사항)
    • waitingRoomTimeout : 봇이 대기실에 갇혔을 때 나갈 때까지의 시간 제한(초) (선택 사항)
    • speechToTextProvider : 텍스트 변환에 사용할 공급자("Gladia", "Runpod", "Default")(선택 사항)
    • speechToTextApiKey : 필요한 경우 음성-텍스트 제공자의 API 키(선택 사항)
    • calendarOAuth : OAuth 자격 증명을 통한 직접 캘린더 통합(선택 사항)
      • platform : "Google" 또는 "Microsoft"
      • clientId : OAuth 클라이언트 ID
      • clientSecret : OAuth 클라이언트 비밀번호
      • refreshToken : OAuth 새로 고침 토큰
      • rawCalendarId : 통합할 특정 달력의 선택적 ID
    • extra : AI 기능을 향상시키기 위한 회의에 대한 추가 메타데이터(선택 사항)
      • 예: GXP38

extra 필드는 매우 유연합니다. 조직과 사용 사례에 적합한 구조화된 메타데이터를 추가할 수 있습니다.

커서와의 통합

커서와 통합하려면:

  1. 커서 열기
  2. 설정으로 이동
  3. "모델 컨텍스트 프로토콜"로 이동
  4. 다음을 사용하여 새 서버를 추가합니다.
    • 이름: "BaaS MCP 회의"
    • 유형: "sse"
    • 서버 URL: " http://localhost:7017/mcp "
    • 인증이 필요한 경우 헤더를 추가하세요.

개발

짓다

npm run build

MCP Inspector로 테스트

npm run inspect

개발 모드(자동 재로드 포함)

npm run dev

로그 관리

서버에는 다음과 같은 최적화된 로깅이 포함되어 있습니다.

npm run cleanup

이 명령은:

  • 불필요한 로그 파일과 캐시된 데이터를 정리합니다.
  • 로그에서 반복되는 ping 메시지를 필터링합니다.
  • 중요한 로그 정보를 보존하면서 디스크 사용량을 줄입니다.
  • 장기 실행 서버에 대해 더 작은 로그 공간을 유지합니다.

프로젝트 구조

  • src/index.ts : 메인 진입점
  • src/tools/ : 도구 구현
  • src/resources/ : 리소스 정의
  • src/api/ : Meeting BaaS 백엔드용 API 클라이언트
  • src/types/ : TypeScript 유형 정의
  • src/config.ts : 서버 구성
  • src/utils/ : 유틸리티 함수
    • logging.ts : 로그 필터링 및 관리
    • tinyDb.ts : 영구적인 봇 추적 데이터베이스

입증

서버는 인증을 위해 x-api-key 헤더에 API 키가 있어야 합니다. 구성 파일에서 기본 API 키를 설정할 수 있습니다.

또한 "WithCredentials"라는 이름의 많은 도구에서 직접 인증을 지원하며, 이를 통해 헤더가 아닌 매개변수로 API 키를 직접 제공할 수 있습니다.

특허

MIT

QR 코드 API 키 구성

QR 코드 생성 도구를 사용하려면 QR Code AI API의 API 키가 필요합니다. API 키를 제공하는 방법은 여러 가지가 있습니다.

  1. 프롬프트에 직접 입력: generateQRCode 도구를 사용할 때 API 키를 프롬프트 텍스트에 직접 포함합니다. 예: "API 키: qrc_your_key를 사용하여 내 웹사이트 https://example.com 에 대한 QR 코드를 생성하세요"
  2. 매개변수로 : generateQRCode 도구를 사용할 때 API 키를 apiKey 매개변수로 제공하세요.
  3. 환경 변수 : QRCODE_API_KEY 환경 변수를 설정합니다.
  4. Claude Desktop 구성 : API 키를 다음 위치에 있는 Claude Desktop 구성 파일에 추가하세요.
    • Mac/Linux: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows: %APPDATA%\Claude\claude_desktop_config.json

    구성 예:

    { "headers": { "x-api-key": "qrc_your_key_here" } }

도구는 위에 나열된 순서대로 API 키를 확인합니다. API 키가 제공되지 않으면 기본 API 키가 사용 가능한 경우 해당 키가 사용됩니다.

QR Code AI API 에 가입하면 API 키를 얻을 수 있습니다.

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

local-only server

The server can only run on the client's local machine because it depends on local resources.

AI 도우미가 회의 봇 생성, 대본 검색, 일정 이벤트 구성 등 회의 데이터를 관리할 수 있도록 하는 모델 컨텍스트 프로토콜 서버입니다.

  1. 개요
    1. 필수 조건
      1. 설치
        1. 용법
          1. 사용 가능한 도구
            1. 캘린더 도구
            2. 회의 도구
            3. 필사 도구
            4. QR 코드 도구
            5. 링크 공유 도구
          2. 예제 워크플로
            1. 회의 녹음
            2. 캘린더 통합 및 자동 기록
            3. 간소화된 캘린더 통합
            4. 회의 내용 분석
            5. 직접 자격 증명 도구 사용
            6. AI가 생성한 QR 코드를 봇 아바타로 활용
            7. 회의 녹화에 액세스하기
          3. 구성
            1. Claude Desktop과 통합
              1. 커서와의 통합
                1. 개발
                  1. 짓다
                  2. MCP Inspector로 테스트
                  3. 개발 모드(자동 재로드 포함)
                  4. 로그 관리
                2. 프로젝트 구조
                  1. 입증
                    1. 특허
                      1. QR 코드 API 키 구성

                        Related MCP Servers

                        • -
                          security
                          F
                          license
                          -
                          quality
                          A versatile Model Context Protocol server that enables AI assistants to manage calendars, track tasks, handle emails, search the web, and control smart home devices.
                          Last updated -
                          2
                          Python
                          • Apple
                          • Linux
                        • -
                          security
                          -
                          license
                          -
                          quality
                          A Model Context Protocol server implementation that enables AI assistants to interact with Linear project management systems, allowing them to create, retrieve, and modify data related to issues, projects, teams, and users.
                          Last updated -
                          20
                          2
                          TypeScript
                        • A
                          security
                          F
                          license
                          A
                          quality
                          A Model Context Protocol server that enables AI assistants to interact with Bluesky/ATProtocol, providing authentication, timeline access, post creation, and social features like likes and follows.
                          Last updated -
                          18
                          10
                          TypeScript
                          • Apple
                          • Linux
                        • -
                          security
                          F
                          license
                          -
                          quality
                          A Model Context Protocol server that provides persistent task management capabilities for AI assistants, allowing them to create, update, and track tasks beyond their usual context limitations.
                          Last updated -
                          1
                          TypeScript

                        View all related MCP servers

                        ID: ew8cdvc1u0