Skip to main content
Glama
snehaharurkar

Agentic Support Agent MCP

エージェント型カスタマーサポートアシスタント (FastAPI + RAG + MCP)

実際の注文データを検索し、RAG を介して FAQ に基づいたポリシー質問に回答し、問題を解決できない場合は自律的にサポートチケットを発行する eコマース向けサポートエージェントです。これらはすべて、ハードコードされた if/else ロジックではなく、ツール使用ループ内で LLM が決定します。

これは、単純な「ドキュメント Q&A」RAG プロジェクトとは意図的に異なるドメインです(注文検索とチケット作成は、単なる検索ではなくアクションです)。同じアイデアを2回ではなく、履歴書に異なる2つの作品を載せたい場合に役立ちます。

デモの内容

  • エージェント型 AI: マルチステップのツール使用 — 必要に応じて、モデルは1つの会話内で check_order_statusfaq_searchcreate_support_ticket を連鎖させます。

  • FastAPI: Pydantic によるリクエスト検証と自動生成ドキュメントを備えた REST エンドポイント。

  • RAG: ポリシー質問に回答する前に、FAQ ドキュメントをチャンク化し、関連性に基づいて取得します。

  • MCP: 同じ注文/チケット/FAQ ツールが MCP サーバー(app/mcp_server.py)として公開され、この API の外部(例: Claude Desktop)から使用できます。

Related MCP server: CommerceHub MCP

セットアップ

python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
cp .env.example .env   # add your GROQ_API_KEY

実行

uvicorn app.main:app --reload --port 8001

ドキュメントは http://localhost:8001/docs にあります。

例: 完全なエージェント型フロー

curl -X POST http://localhost:8001/agent/chat \
  -H "Content-Type: application/json" \
  -d '{"message": "My order ORD1002 seems delayed and I need it urgently, my email is a@b.com. What can you do?"}'

期待される推論チェーン: check_order_status(ORD1002) → まだ Processing であることを確認 → ポリシーコンテキストのために faq_search("shipping delay") → 顧客のエスカレーションが必要と判断 → create_support_ticket(...) → チケット ID と明確な説明を返します。

モックデータ

  • data/faq.txt — RAG レイヤーが取得元とする返品/配送/キャンセルポリシー。

  • app/tools.py — インメモリのフェイク注文 DB(ORD1001ORD1002ORD1003)とチケットストア。本番環境では実際のデータベース/CRM に置き換えてください。ツール関数のシグネチャは同じままです。

MCP サーバーとして実行

python -m app.mcp_server

faq_searchcheck_order_statuscreate_support_ticketget_ticket_status を任意の MCP ホストに公開します。

面接でのアピールポイント

  • ツールが自由テキストではなく構造化された dict を返す理由: LLM は構造化データに対してより確実に推論でき、同じ関数を通常の REST エンドポイント(/orders/{id})とエージェントループの両方で再利用できるようにするためです。

  • システムプロンプトは、FAQ/注文データから回答する場合と比較して、いつチケットにエスカレーションするかをモデルに明示的に指示します — これは重要なエージェント設計上の決定です(チケットを過剰に作成することは、言及に値する一般的な失敗モードです)。

  • max_steps は無限のツール呼び出しループを防ぎます — これはエージェント型システムにおける実際の信頼性上の懸念事項です。

考えられる拡張

  • インメモリ dict の代わりに Postgres にチケット/注文を永続化する。

  • マルチターンのサポートチャット用に /agent/chat 会話 ID + 保存された履歴を追加する。

  • チケット作成時にヒューマン・イン・ザ・ループのエスカレーション(Slack webhook)を追加する。

  • 公開デプロイ前にレート制限と API キー認証を追加する。

F
license - not found
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • Run AI customer support from your terminal: conversations, knowledge base, and chat widget.

  • Manage your NanoCart store from any AI agent: products, orders, coupons, subscribers, reports.

  • Persistent memory and knowledge management for AI agents with semantic search and 50+ tools.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/snehaharurkar/-agentic-support-agent-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server