Skip to main content
Glama
dmitriy-shtefan

Sales Analysis MCP Server

FastMCP demo: аналіз продажів із CSV

MCP Demo показує, як перетворити кілька Python-функцій для аналізу продажів на MCP tools/resources/prompts.

Файли

  • sales_mcp_server.py - FastMCP server.

  • sales_data.csv - маленький приклад продажів за 3 місяці.

Related MCP server: MCP CSV Sales Analyzer

Що демонструє приклад

  • tool: load_sales_summary - рахує загальні метрики продажів.

  • tool: top_products - повертає топ продуктів за виручкою, прибутком або кількістю.

  • tool: monthly_sales_report - показує динаміку продажів по місяцях.

  • resource: sales://sample-csv - дає read-only доступ до sample CSV.

  • resource: sales://business-questions - список типових бізнес-питань.

  • prompt: sales_report_prompt - шаблон для AI sales analyst.

Локальна перевірка без MCP host

python3 -m pip install -r requirements.txt
python3 sales_mcp_server.py --demo

Цей режим викликає ті самі Python-функції напряму і друкує результат у термінал.

Перевірка FastMCP entrypoint

fastmcp inspect sales_mcp_server.py:mcp
fastmcp run fastmcp.json

fastmcp.json описує production-style запуск через HTTP transport. MCP endpoint буде доступний на /mcp/.

Deploy to Prefect Horizon

  1. Push this repo to GitHub.

  2. Open https://horizon.prefect.io/ and choose the GitHub repo.

  3. Configure the server with:

    • Server name: sales-analytics або інше унікальне ім'я.

    • Entrypoint: sales_mcp_server.py:mcp.

    • Authentication: увімкніть, якщо сервер має бути доступний тільки для вашої організації.

  4. Horizon має автоматично встановити dependencies з requirements.txt.

  5. Після deploy перевірте tools/resources/prompts у Horizon Inspector.

Очікуваний remote MCP endpoint матиме формат:

https://<server-name>.fastmcp.app/mcp

Запуск як MCP server

python3 -m pip install -r requirements.txt
python3 sales_mcp_server.py

Після цього сервер можна підключати до MCP host, який підтримує локальні stdio сервери.

Для HTTP запуску поза Horizon:

python3 sales_mcp_server.py --http

За замовчуванням HTTP server слухає 0.0.0.0:8000, а health check доступний на /health. Якщо platform задає PORT, сервер автоматично запуститься в HTTP mode.

Приклад конфігурації для host, який очікує команду запуску:

{
  "mcpServers": {
    "sales-analytics": {
      "command": "python3",
      "args": [
        "/absolute/path/to/sales_mcp_server.py"
      ]
    }
  }
}

Бізнес-сценарій для показу

  1. Агент читає sales://business-questions.

  2. Агент викликає load_sales_summary.

  3. Агент викликає top_products для revenue або gross_profit.

  4. Агент викликає monthly_sales_report.

  5. Агент використовує sales_report_prompt і готує короткий Markdown-звіт.

Обмеження безпеки

  • tools читають тільки CSV-файли всередині цієї демо-папки;

  • абсолютні шляхи заборонені;

  • файли поза демо-папкою заборонені;

  • сервер нічого не записує на диск;

  • сервер не використовує мережу й API keys.

Related MCP Connectors

Related MCP Servers