트윌리오 매니저 MCP
Twilio 리소스 관리를 위한 모델 컨텍스트 프로토콜(MCP) 구현입니다. 이 패키지는 표준화된 MCP 인터페이스를 통해 Twilio 하위 계정, 전화번호 및 규제 번들을 관리하는 도구를 제공합니다.
특징
Related MCP server: Twilio MCP Server
설치
필수 조건
uv 설치
macOS에서:
지엑스피1
Windows의 경우:
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
Linux의 경우:
curl -LsSf https://astral.sh/uv/install.sh | sh
프로젝트 설정
저장소를 복제합니다.
git clone https://github.com/yourusername/twilio_manager_mcp.git
cd twilio_manager_mcp
uv를 사용하여 종속성을 설치합니다.
구성
Twilio 자격 증명을 사용하여 루트 디렉토리에 .env 파일을 만듭니다.
TWILIO_ACCOUNT_SID=your_account_sid
TWILIO_AUTH_TOKEN=your_auth_token
.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 구성이 포함되어 있습니다.
.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=
서비스 시작:
해당 애플리케이션은 HTTPS가 활성화된 구성된 도메인에서 사용할 수 있습니다.
Docker Compose 없이 Docker 사용
Traefik 없이 Twilio Manager MCP 컨테이너만 실행하려면 다음을 수행하세요.
Docker 이미지를 빌드합니다.
docker build -t twilio-manager-mcp .
컨테이너를 실행합니다.
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를 사용하는 데에는 세 가지 옵션이 있습니다.
직접 UVX 통합 (권장):
직접 UV 통합 :
SSE 서버 :
사용 가능한 도구
도구 이름 | 설명 |
list_twilio_subaccounts
| 모든 Twilio 하위 계정 나열 |
get_account_phone_numbers
| 특정 하위 계정에 대한 전화번호 가져오기 |
get_all_phone_numbers
| 하위 계정 간 전화번호 전송 |
get_regulatory_bundle_sid
| 하위 계정에 대한 규제 번들 SID 가져오기 |
Cursor/Claude Desktop에서의 사용 예
구성이 완료되면 AI 어시스턴트 대화에서 도구를 직접 사용할 수 있습니다.
모든 하위 계정을 나열하세요:
# The AI will automatically use the MCP to list all subaccounts
# No need to write code - just ask "List all Twilio subaccounts"
하위 계정의 전화번호를 받으세요:
# 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 라이센스