{"_id":"@channel.io/inbound-email-mcp","_rev":"2-08e08aae4072fe2e66d40036c7de4b60","name":"@channel.io/inbound-email-mcp","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@channel.io/inbound-email-mcp","version":"1.0.0","keywords":["email","inbound","dynamodb","s3","mcp","channel"],"_id":"@channel.io/inbound-email-mcp@1.0.0","maintainers":[{"name":"zoyi","email":"eng@channel.io"},{"name":"quino0627","email":"dongwook627@gmail.com"},{"name":"sungik.dev","email":"sungik.dev@gmail.com"}],"bin":{"inbound-email-mcp":"dist/index.js"},"dist":{"shasum":"f90ed97acb8f7260c62f6cb387d2e01371864419","tarball":"https://registry.npmjs.org/@channel.io/inbound-email-mcp/-/inbound-email-mcp-1.0.0.tgz","fileCount":20,"integrity":"sha512-aweH7WbKsf+/w5hsYqzl20jlX/nynJx5hIO7pKzZ4zroruc6fa2Z8qzyEm1GgUQ3Oh2BNJgOdavlctm7t+vS2w==","signatures":[{"sig":"MEQCIHQ1YAj+ZjbcUGfq79BBZEd+158zecr21Nv/jNlilre3AiAE9LHXAUHnHrruZIy1jvTRS9XPW9ltF+b4K7rY56V3FA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":27577},"main":"dist/index.js","type":"module","_from":"file:channel.io-inbound-email-mcp-1.0.0.tgz","types":"./dist/index.d.ts","scripts":{"dev":"tsc -w","lint":"eslint . --ext .js,.jsx,.ts,.tsx","build":"tsc && shx chmod +x dist/index.js","start":"node ./dist/index.js","format":"prettier --write .","lint:fix":"eslint . --ext .js,.jsx,.ts,.tsx --fix","format:check":"prettier --check ."},"_npmUser":{"name":"zoyi","email":"eng@channel.io"},"_resolved":"/tmp/325be5453471da802b3d68fd05847d68/channel.io-inbound-email-mcp-1.0.0.tgz","_integrity":"sha512-aweH7WbKsf+/w5hsYqzl20jlX/nynJx5hIO7pKzZ4zroruc6fa2Z8qzyEm1GgUQ3Oh2BNJgOdavlctm7t+vS2w==","_npmVersion":"10.2.4","description":"Inbound Email Model Context Protocol server for Channel.io","directories":{},"_nodeVersion":"20.11.0","dependencies":{"zod":"^3.24.2","axios":"^1.6.7","@aws-sdk/client-s3":"^3.585.0","@aws-sdk/util-dynamodb":"^3.585.0","@aws-sdk/client-dynamodb":"^3.585.0","@modelcontextprotocol/sdk":"^1.6.1"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","vitest":"^1.6.0","typescript":"5.0.4","@types/node":"18.17.0"},"_npmOperationalInternal":{"tmp":"tmp/inbound-email-mcp_1.0.0_1747889857032_0.9134185774409713","host":"s3://npm-registry-packages-npm-production"}}},"time":{"created":"2025-05-22T04:57:36.935Z","modified":"2026-01-26T12:51:51.313Z","1.0.0":"2025-05-22T04:57:37.204Z"},"keywords":["email","inbound","dynamodb","s3","mcp","channel"],"description":"Inbound Email Model Context Protocol server for Channel.io","maintainers":[{"email":"polar@channel.io","name":"polarshin"},{"email":"eng@channel.io","name":"zoyi"},{"email":"dongwook627@gmail.com","name":"quino0627"},{"email":"sungik.dev@gmail.com","name":"sungik.dev"}],"readme":"# inbound-email-mcp\n\n## 개요\n\n`inbound-email-mcp`는 Channel.io 백엔드 시스템의 이메일 관련 데이터를 조회하기 위한 Model Context Protocol (MCP) 서버입니다. 이 도구를 사용하여 UserChat의 마지막 수신 이메일 데이터와 관련 첨부 파일을 조회할 수 있습니다. 주로 AWS DynamoDB와 S3에서 데이터를 가져와 제공합니다.\n\n## 사용 방법\n\n1. **`inbound-email-mcp` 빌드**\n\n   ```bash\n   cd apps/inbound-email-mcp && pnpm install && pnpm build\n   ```\n\n2. **Cursor MCP 서버 추가**\n\n   Cursor Settings > Features > MCP 에서 \"+ Add New MCP Server\"를 클릭하여 MCP 서버를 추가합니다. ([참고 문서](https://docs.cursor.com/context/model-context-protocol))\n\n   - **Name:** `inbound-email-mcp` (또는 원하는 이름)\n   - **Type:** command\n   - **Command:** `npx`\n   - **Args:** (아래 두 줄을 각각 추가)\n     - `-y`\n     - `@channel.io/inbound-email-mcp`\n   - **Env:** (필요한 환경 변수를 Key-Value 형태로 추가)\n     - `AWS_PROFILE`: `<<aws sso config를 통해 설정한 AWS PROFILE 이름>>`\n\n3. **AI 어시스턴트와 상호작용**\n\n   채팅 인터페이스에서 AI 어시스턴트에게 조회하려는 UserChat ID를 제공하여 관련 이메일 데이터를 요청합니다.\n\n   **예시 프롬프트:**\n\n   ```\n   UserChat ID 'xxxxxxxx'의 inbound email과 관련 데이터를 조회해줘.\n   ```\n\n## 주요 기능 및 특징\n\n- UserChat ID를 기반으로 DynamoDB에서 UserChat 데이터 조회\n- UserChat의 lastInboundEmailId를 사용하여 관련 이메일 데이터 조회\n- S3 버킷(ch-ses-mail)에서 원본 이메일 MIME 데이터 조회\n- AWS 서비스와의 안전한 통합을 통한 데이터 접근\n\n## 기술 스택\n\n- TypeScript\n- AWS SDK (@aws-sdk/client-dynamodb, @aws-sdk/client-s3, @aws-sdk/util-dynamodb)\n- Model Context Protocol (@modelcontextprotocol/sdk)\n","readmeFilename":"README.md"}