TwilioManager MCP

by errajibadr
Verified

local-only server

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

Integrations

  • Used for managing Twilio credentials and environment variables required for authentication with the Twilio API.

  • Enables direct interaction with Twilio's API for subaccount management, phone number control, regulatory compliance handling, and address management for compliance requirements.

트윌리오 매니저 MCP

Twilio 리소스 관리를 위한 모델 컨텍스트 프로토콜(MCP) 구현입니다. 이 패키지는 표준화된 MCP 인터페이스를 통해 Twilio 하위 계정, 전화번호 및 규제 번들을 관리하는 도구를 제공합니다.

특징

  • Twilio 하위 계정 목록
  • 하위 계정과 연결된 전화번호 가져오기
  • 하위 계정 간 전화번호 전송
  • 규제 번들 SID 받기
  • 직접 및 SSE(Server-Sent Events) 통신 모두 지원
  • Claude Desktop, Cursor 및 기타 MCP 호환 도구와의 통합

설치

필수 조건

uv 설치

macOS에서:

지엑스피1

Windows의 경우:

powershell -c "irm https://astral.sh/uv/install.ps1 | iex"

Linux의 경우:

curl -LsSf https://astral.sh/uv/install.sh | sh

프로젝트 설정

  1. 저장소를 복제합니다.
git clone https://github.com/yourusername/twilio_manager_mcp.git cd twilio_manager_mcp
  1. uv를 사용하여 종속성을 설치합니다.
uv sync

구성

  1. Twilio 자격 증명을 사용하여 루트 디렉토리에 .env 파일을 만듭니다.
TWILIO_ACCOUNT_SID=your_account_sid TWILIO_AUTH_TOKEN=your_auth_token
  1. .cursor/mcp.json 파일을 만들어 도구(Cursor, Claude Desktop 등)에 맞게 MCP를 구성합니다.
{ "mcpServers": { "twilio_manager_mcp_abs": { "command": "uv", "args": ["--directory", "/path/to/twilio_manager_mcp", "run", "mcp", "run", "./twilio_manager_mcp.py"], "env": { "TWILIO_ACCOUNT_SID": "your_account_sid", "TWILIO_AUTH_TOKEN": "your_auth_token" } }, "twilio_manager_mcp_uvx": { "command": "uvx", "args": [ "twilio-manager-mcp" ], "env": { "TWILIO_ACCOUNT_SID": "your_account_sid", "TWILIO_AUTH_TOKEN": "your_auth_token" } }, "twilio_manager_mcp_sse": { "url": "http://localhost:8000/sse" } } }

도커

Docker를 사용하여 Twilio Manager MCP를 실행하면 배포와 관리가 더 쉬워집니다.

Docker Compose 사용

이 프로젝트에는 다음을 설정하는 Docker Compose 구성이 포함되어 있습니다.

  • Twilio Manager MCP 서비스
  • 자동 HTTPS를 갖춘 Traefik 역방향 프록시
  1. .env 파일에서 환경 변수를 구성하세요.
# Twilio credentials TWILIO_ACCOUNT_SID=your_account_sid TWILIO_AUTH_TOKEN=your_auth_token # Domain configuration for Traefik DOMAIN_NAME=yourdomain.com ACME_EMAIL=user@yourdomain.com # Address details (optional) ADDRESS_CUSTOMER_NAME= ADDRESS_FRIENDLY_NAME= ADDRESS_STREET= ADDRESS_CITY= ADDRESS_REGION= ADDRESS_POSTAL_CODE= ADDRESS_ISO_COUNTRY=
  1. 서비스 시작:
docker-compose up -d

해당 애플리케이션은 HTTPS가 활성화된 구성된 도메인에서 사용할 수 있습니다.

Docker Compose 없이 Docker 사용

Traefik 없이 Twilio Manager MCP 컨테이너만 실행하려면 다음을 수행하세요.

  1. Docker 이미지를 빌드합니다.
docker build -t twilio-manager-mcp .
  1. 컨테이너를 실행합니다.
docker run -p 8000:8000 \ -e TWILIO_ACCOUNT_SID=your_account_sid \ -e TWILIO_AUTH_TOKEN=your_auth_token \ twilio-manager-mcp

SSE 엔드포인트는 http://localhost:8000/sse 에서 사용할 수 있습니다.

용법

커서, Claude Desktop 또는 기타 MCP 호환 도구 사용

이 MCP를 사용하는 데에는 세 가지 옵션이 있습니다.

  1. 직접 UVX 통합 (권장):
    • twilio_manager_mcp_uvx 구성을 사용하세요
    • 이것은 가장 간단한 방법이며 uvx와 함께 바로 작동합니다.
  2. 직접 UV 통합 :
    • twilio_manager_mcp_abs 구성을 사용하세요
    • 설치에 대한 전체 경로를 지정해야 합니다.
  3. SSE 서버 :
    • twilio_manager_mcp_sse 구성을 사용하세요
    • 먼저 SSE 서버를 시작하세요.
      uvicorn twilio_manager_mcp_sse:app --host 0.0.0.0 --port 8000

사용 가능한 도구

도구 이름설명
list_twilio_subaccounts모든 Twilio 하위 계정 나열
get_account_phone_numbers특정 하위 계정에 대한 전화번호 가져오기
get_all_phone_numbers하위 계정 간 전화번호 전송
get_regulatory_bundle_sid하위 계정에 대한 규제 번들 SID 가져오기

Cursor/Claude Desktop에서의 사용 예

구성이 완료되면 AI 어시스턴트 대화에서 도구를 직접 사용할 수 있습니다.

  1. 모든 하위 계정을 나열하세요:
# The AI will automatically use the MCP to list all subaccounts # No need to write code - just ask "List all Twilio subaccounts"
  1. 하위 계정의 전화번호를 받으세요:
# Simply ask: "Show me all phone numbers for subaccount AC..."

직접 파이썬 사용법

직접 프로그래밍 방식으로 사용하는 경우:

from mcp import ClientSession from clients.client import MCPClient async with MCPClient("uvx", ["twilio-manager-mcp"], env={}) as session: # List available tools tools = (await session.list_tools()).tools # List all subaccounts subaccounts = await session.invoke("list_twilio_subaccounts") # Get phone numbers for a subaccount numbers = await session.invoke("get_account_phone_numbers", {"account_sid": "AC..."})

프로젝트 구조

twilio_manager_mcp/ ├── api/ │ └── async_twilio_api.py # Async Twilio API implementation ├── clients/ │ ├── client.py # Direct MCP client implementation │ └── client_sse.py # SSE client implementation ├── twilio_manager_mcp.py # Core MCP server implementation ├── twilio_manager_mcp_sse.py # SSE server wrapper ├── requirements.txt # Project dependencies └── README.md # This file

개발

개발을 위해 uv의 가상 환경 관리를 사용할 수 있습니다.

# Create a virtual environment uv venv # Activate the virtual environment source .venv/bin/activate # On Unix .venv\Scripts\activate # On Windows # Install dependencies in development mode uv pip install -e .

기여하다

기여를 환영합니다! 풀 리퀘스트를 제출해 주세요.

특허

MIT 라이센스

-
security - not tested
F
license - not found
-
quality - not tested

Claude AI를 Model Context Protocol을 통해 Twilio에 연결하는 서버로, Twilio 계정, 전화번호, 규정 준수를 신속하게 관리할 수 있도록 지원합니다.

  1. Features
    1. Installation
      1. Prerequisites
      2. Project Setup
    2. Configuration
      1. Docker
        1. Using Docker Compose
        2. Using Docker Without Docker Compose
      2. Usage
        1. With Cursor, Claude Desktop, or other MCP-compatible tools
        2. Available Tools
        3. Example Usage in Cursor/Claude Desktop
        4. Direct Python Usage
      3. Project Structure
        1. Development
          1. Contributing
            1. License
              ID: 5s1dhxznxx