ParcelPilot MCP Server
📦 ParcelPilot AI
LangGraph, MCP, Agentic RAG, Streamlit 기반의 지능형 고객 지원 운영 에이전트입니다.
ParcelPilot AI는 고객/계정/주문/티켓 정보를 조회하고, 하이브리드 검색으로 정책 질문에 답변하며, 고객별 계약을 적용하고, 상태 변경 작업 전에 확인 절차를 강제할 수 있습니다.
✨ 기능
LangGraph 기반 에이전트 오케스트레이션
Streamable HTTP 기반 원격 FastMCP 서버
고객 지원 운영을 위한 9가지 MCP 도구
Chroma + BM25 기반 하이브리드 에이전틱 RAG
고객별 계약 검색
출처 권위 및 문서 우선순위 처리
계정, 주문, 티켓 데이터의 구조화된 Excel 지원
Mock 기반 역할별 접근 제어
에스컬레이션 및 후속 업무를 위한 HITL(Human-in-the-loop) 확인
에이전트와 상호작용을 위한 Streamlit 인터페이스
Related MCP server: Enterprise MCP Gateway
🏗️ 아키텍처
┌─────────────────────┐
│ Streamlit App │
│ app.py │
└──────────┬──────────┘
│
│ MCP / HTTP
▼
┌─────────────────────┐
│ FastMCP Server │
│ mcp_server.py │
└──────────┬──────────┘
│
┌────────────────┼────────────────┐
│ │ │
▼ ▼ ▼
Structured Data Agentic RAG Security
Excel workbook Chroma + BM25 Access checks
│ │
└────────────────┼────────────────┘
▼
Grounded Tool Results
│
▼
LangGraph Agent
│
▼
Final Response🔧 MCP 도구
MCP 서버는 다음 도구를 제공합니다:
get_accountget_orderget_ticketsearch_knowledgesearch_customer_agreementcalculate_service_creditprepare_escalationexecute_escalationcreate_followup
상태 변경 작업은 실행 전에 확인 단계를 거칩니다.
📚 Agentic RAG
검색 파이프라인은 다음 요소를 결합합니다:
User Query
↓
Chroma Semantic Retrieval
+
BM25 Keyword Retrieval
↓
Source Authority
↓
Customer-Aware Ranking
↓
Conflict / Precedence Handling
↓
Grounded Evidence
↓
LLM Answer문서 우선순위:
현재 서명된 고객 계약
현재 ParcelPilot 정책/SOP
기타 유효한 문서
폐기된 문서는 낮은 권위를 가지며 현재 유효한 문서를 덮어써서는 안 됩니다.
📁 프로젝트 구조
ParcelPilot/
│
├── app.py
├── mcp_server.py
├── PARCELPILOT.ipynb
├── ParcelPilot_Assessment_Data.xlsx
│
├── 01_Support_Policy_v3_CURRENT.pdf
├── 02_Support_Policy_v2_DEPRECATED.pdf
├── 03_Cancellation_and_Service_Credit_SOP_v4.pdf
├── 04_Product_Operations_Guide_and_Known_Issues.pdf
├── 05_Northstar_Logistics_Enterprise_Agreement.pdf
├── 06_LumenWorks_Service_Agreement.pdf
│
├── pyproject.toml
└── README.md⚙️ 설정
1. 저장소 복제
git clone <YOUR_GITHUB_REPOSITORY_URL>
cd ParcelPilot2. 의존성 설치
이 프로젝트는 pyproject.toml을 사용합니다.
uv를 사용하는 경우:
uv sync또는 선호하는 Python 환경에서 필요한 패키지를 설치합니다.
3. .env 생성
프로젝트 루트에 .env 파일을 생성합니다:
OPENAI_API_KEY=your_openai_api_key
PARCELPILOT_USER=support_agent
MCP_HOST=0.0.0.0
MCP_PORT=8000Streamlit 클라이언트의 경우 MCP URL을 설정합니다:
PARCELPILOT_MCP_URL=http://127.0.0.1:8000/mcp.env 파일이나 API 키를 GitHub에 커밋하지 마십시오.
▶️ MCP 서버 실행
먼저 MCP 서버를 시작합니다:
uv run python mcp_server.py서버는 다음에서 실행됩니다:
http://127.0.0.1:8000/mcp터미널에서 ParcelPilot MCP 서버 시작 정보를 확인할 수 있습니다.
▶️ Streamlit 실행
두 번째 터미널에서:
uv run streamlit run app.py터미널에 표시된 Streamlit URL을 엽니다. 일반적으로:
http://localhost:8501🔐 프로토타입 접근 제어
본 제출물에는 인증 동작을 시연하기 위한 Mock 인증 사용자 컨텍스트가 포함되어 있습니다.
지원되는 프로토타입 사용자는 다음과 같습니다:
support_agent
customer_acct_002
customer_acct_003
admin서버는 PARCELPILOT_USER를 사용하여 현재 프로토타입 사용자를 선택합니다.
프로덕션 환경에서는 ID 공급자가 발급한 토큰, 테넌트/계정 클레임, 서버 측 권한 검사 등 실제 인증 및 권한 부여로 대체됩니다.
🧑💼 HITL(Human-in-the-Loop)
상태 변경 작업의 경우 에이전트는 먼저 작업을 준비합니다.
예시:
User
↓
prepare_escalation
↓
Preview
↓
Explicit confirmation
↓
execute_escalation프로토타입은 실행 중에 영구 운영 데이터를 수정하지 않습니다.
🧪 예시 쿼리
Streamlit 애플리케이션에서 다음 쿼리를 시도해 보세요:
What is the current status of ORD-1001?
Show me the account details for ACCT-001.
What is the cancellation fee for a BOOKED shipment?
Can Northstar Logistics cancel a BOOKED shipment without a fee?
What is Northstar Logistics' P1 response target?
What are the failed-pickup service-credit rules for LumenWorks?
What is the current Enterprise P1 response target?
Escalate ticket TKT-501 because the customer needs urgent assistance.에스컬레이션 예시의 경우, 에이전트는 에스컬레이션을 준비하고 실행 전에 확인을 요청해야 합니다.
🎯 제품 결정
이 솔루션은 운영 작업을 통제하면서도 지원 담당자의 수고를 줄이는 데 중점을 둡니다.
핵심 결정:
MCP를 사용하여 에이전트와 운영 도구를 분리합니다.
검색 기능을 UI에 복제하지 않고 MCP 서버 내에 유지합니다.
구조화된 데이터와 문서 검색을 결합합니다.
고객 계약에 일반 정책보다 높은 권위를 부여합니다.
상태 변경 작업에는 명시적인 확인을 요구합니다.
UI에만 의존하지 않고 도구 계층에서 인가 검사를 수행합니다.
🚀 향후 개선 사항
개발을 계속한다면 다음을 우선순위로 두겠습니다:
프로덕션 인증 및 테넌트 격리
모든 도구 호출 및 작업에 대한 영구 감사 로그
프로덕션 API를 통한 실세계 티켓/주문 업데이트
개선된 검색 평가 및 자동화된 RAG 테스트
지연 시간, 도구 오류, 답변 품질에 대한 관측 가능성
영향력이 큰 작업에 대한 승인 워크플로우
지원 분석 및 고객 위험 감지
📊 성공 지표
대표적인 제품 지표는:
티켓당 지원 해결 시간(Support resolution time per ticket)
목표는 높은 정확도를 유지하고 허가되지 않은 잘못된 운영 작업을 방지하면서 평균 해결 시간을 단축하는 것입니다.
📌 제출
데모 비디오
https://drive.google.com/file/d/1gTZlT4bx4oSflD68SWqcN6-uHPtcaT8l/view?usp=sharing
ParcelPilot 평가 프로토타입으로 제작되었습니다.
This server cannot be deployed
Maintenance
Related MCP Connectors
- mcp-serverOAuthcom.make
Give your AI agents the tools to build, manage, and run automation workflows.
Context and control for any AI. Agent identity, scoped access, and proof across tools.
The system of record for AI agent authority: playbooks, routed policy questions, reusable rules.
- StackOneOAuthcom.stackone
Give AI agents 30,000+ safe, token-optimized actions across Workday, SAP, Oracle + hundreds more.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables AI agents to search HR policies, create IT support tickets, and send external emails with configurable security levels and human-in-the-loop validation.-
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to securely access and act on CRM, order, support, and automation systems through the Model Context Protocol, with authentication, authorization, audit logging, and guardrails.MIT
- FlicenseNot gradedqualityCmaintenanceEnables AI agents to securely call enterprise MCP tools with tenant-scoped RBAC, human approvals, audit logging, and multi-tool workflows across customer, order, document, and ticket data.-
- AlicenseAqualityBmaintenanceEnables AI agents to securely query, search, and modify Salesforce data through standard Salesforce APIs, including record CRUD, SOQL/SOSL search, Bulk API 2.0 operations, composite calls, object discovery, and custom Apex REST endpoints.15MIT