Skip to main content

What is Pricing Intelligence?

Pricing Intelligence is an advanced AI-powered platform that analyzes, reasons about, and extracts insights from SaaS pricing models. By combining Large Language Models (LLMs) with rigorous Constraint Satisfaction Problem (CSP) solvers, it provides accurate, mathematically grounded answers to complex pricing questions. This project is part of the research contributions from the paper “Pricing Intelligence: Rethinking IS Engineering in Volatile SaaS Environments”.

Key Capabilities

Pricing Intelligence enables you to:

Extract Pricing Data

Automatically extract structured pricing models (Pricing2Yaml format) from raw website URLs using the A-MINT API.

Analyze Configurations

Perform mathematical analysis of pricing configurations including validity checks and feature combinations.

Optimize Plan Selection

Find optimal plans based on specific requirements like “Cheapest plan with SSO and 50 users”.

Natural Language Interface

Interact with the Harvey agent through a conversational chat interface powered by the ReAct pattern.

Architecture Overview

The platform consists of six microservices working in concert:

Core Services

ServiceTechnologyPurpose
Harvey APIPython/FastAPIAI Agent implementing the ReAct pattern to orchestrate tools and answer queries
MCP ServerPythonImplements Model Context Protocol, exposing tools like subscriptions, optimal, and iPricing
Analysis APINode.js/TypeScriptHandles core pricing analysis, validation, and statistics logic
CSP ServiceJava/ChocoWraps the Choco constraint solver for mathematical optimization
Amint APIPythonExtracts pricing data from unstructured sources and converts to Pricing2Yaml format
FrontendReact/ViteProvides the chat interface and visualization

The Harvey Agent

Harvey is a specialized AI agent that follows the ReAct (Reasoning + Acting) pattern:
Grounding: Harvey verifies feature names and limits against actual YAML data before querying tools, significantly reducing hallucinations.
Key Features:
  • Optimization: Delegates mathematical operations and logic to the Analysis API rather than relying on LLM calculations
  • Context Awareness: Can compare multiple pricing models simultaneously (e.g., “Compare HubSpot vs. Salesforce”)
  • Tool Orchestration: Intelligently chains MCP tools to answer complex multi-step questions

MCP Tools

The system exposes powerful tools via the Model Context Protocol:
Downloads and structures pricing data from a URL, converting unstructured web content into the standardized Pricing2Yaml format.
Enumerates all valid plan configurations given a set of filters, exploring the entire configuration space.
Finds the best (cheapest/most expensive) configuration satisfying user constraints using CSP optimization.
Checks if a pricing model is mathematically consistent and identifies configuration conflicts.
Provides high-level statistics about a pricing model including feature counts, price ranges, and usage limits.

Use Cases

Plan Optimization

Find the most cost-effective plan for specific requirements:
"What is the cheapest Overleaf plan that supports 10 collaborators per project?"

Multi-Product Comparison

Compare pricing across competing SaaS products:
"Compare GitHub Teams vs GitLab Premium for a team of 15 developers needing CI/CD"

Configuration Validation

Ensure pricing models are mathematically consistent:
"Is the Dropbox pricing model valid? Are there any conflicting feature constraints?"

How It Works

1

User asks a pricing question

Submit a natural language query through the frontend or API, optionally including a pricing page URL.
2

Harvey analyzes the request

The Harvey agent parses the question and determines which MCP tools to invoke.
3

Data extraction (if needed)

If a URL is provided, the iPricing tool calls A-MINT to extract structured pricing data.
4

CSP analysis

The Analysis API and CSP Service perform mathematical computations to find optimal configurations.
5

Grounded response

Harvey returns a precise answer with exact plan names, prices, and feature details from the actual data.

Pricing2Yaml Format

All pricing data is represented in a standardized YAML schema that captures:
  • Plans: Base subscription tiers with monthly/annual pricing
  • Features: Boolean or enumerated capabilities (domain features, integrations, support levels)
  • Usage Limits: Numeric constraints (users, storage, API calls, etc.)
  • Add-ons: Optional extensions with additional costs
  • Constraints: Dependencies and mutual exclusions between features
saasName: Overleaf - Individual
syntaxVersion: '2.1'
version: '2023-11-27'
currency: USD

features:
  gitIntegration:
    description: Clone projects to local repository
    valueType: BOOLEAN
    defaultValue: false
    type: INTEGRATION

usageLimits:
  maxCollaboratorsPerProject:
    description: Number of people per project
    valueType: NUMERIC
    defaultValue: 1
    unit: collaborator
    type: NON_RENEWABLE

plans:
  FREE:
    monthlyPrice: 0
    features: null
    usageLimits: null
  STANDARD:
    monthlyPrice: 21
    features:
      gitIntegration:
        value: true
    usageLimits:
      maxCollaboratorsPerProject:
        value: 11

Next Steps

Quickstart

Get up and running in 5 minutes with Docker Compose

Installation

Detailed setup and configuration guide

Harvey API

Explore the Harvey API and chat interface

Architecture

Deep dive into system design and data flow

License

This project is licensed under the Creative Commons Attribution 4.0 International (CC BY 4.0).

Build docs developers (and LLMs) love