Last Price

Compute and verify prices from an agent, metered per call. Works keyless on a demo tenant.

我该使用它吗

质量与安全性

A
描述质量
94%
模式完整度
67%
命名质量
92%
投毒风险
100%
权限匹配度
100%
协议合规性
100%

发现(1)

  • LOWTool 'verify_price' description lacks action verb在 verify_price 中

基于对工具定义和协议合规性的自动分析。

上下文开销

~1,249token 数(工具定义)
~2.5 KB典型响应大小
对注意力有中等影响(占 128k 上下文窗口的 0.98%)

这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。

安装

一键安装

将以下内容添加到你的 `claude_desktop_config.json` 文件中:

{
  "mcpServers": {
    "pricing": {
      "url": "https://api.last-price.ai/api/mcp/rpc"
    }
  }
}

远程端点

https://api.last-price.ai/api/mcp/rpcstreamable-http

它能做什么

工具清单

工具(5)

🟢 只读🟡 写入🔴 删除⚪ 未知
🟡pricing_conversation(action, request, answers)

Ask Last Price what pricing inputs are missing. Start with request: {}, return its questions to the caller, then send continuation.request and answers. Prepare is free and does not compute. When ready, action compute uses the existing authenticated pricing API; configure a credential first. Never invent answers or treat a continuation as authorization.

输入模式

{
  "type": "object",
  "properties": {
    "action": {
      "type": "string",
      "enum": [
        "prepare",
        "compute"
      ],
      "default": "prepare"
    },
    "request": {
      "type": "object",
      "description": "Partial REST PricingComputeRequest, including nested context, constraints, an explicit function selection and options. Reuse continuation.request on subsequent calls."
    },
    "answers": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "currency": {
          "type": "string",
          "pattern": "^[A-Z]{3}$"
        },
        "current_price": {
          "type": "number",
          "minimum": 0
        },
        "unit_cost": {
          "type": "number",
          "minimum": 0
        },
        "target_margin_pct": {
          "type": "number",
          "minimum": 0,
          "maximum": 95
        },
        "min_price": {
          "type": "number",
          "minimum": 0
        },
        "max_price": {
          "type": "number",
          "minimum": 0
        }
      }
    }
  },
  "additionalProperties": false
}
🟡compute_price(product_id, product_type, current_price, unit_cost, target_margin_pct, ...)

Compute a price for a product/context via the Last Price Pricing Compute Network. Returns the computed price, the function that produced it, token metering/cost, and a `trace` listing each stage the request passed through (cache, route, execute, fallback, constrain, meter). For a competitor offer, put competitor_price, competitor_currency and competitive_action in metadata, then supply min_price or unit_cost with target_margin_pct. Missing business inputs return an error naming them.

输入模式

{
  "type": "object",
  "properties": {
    "product_id": {
      "type": "string",
      "description": "Optional identifier of what is being priced."
    },
    "product_type": {
      "type": "string",
      "enum": [
        "saas",
        "ecommerce",
        "marketplace",
        "digital",
        "api",
        "custom"
      ],
      "description": "Optional category. Defaults to \"custom\"."
    },
    "current_price": {
      "type": "number",
      "minimum": 0,
      "description": "The current or reference price. Optional: functions that price relative to an incumbent need it, but lastprice/cost-plus prices from unit_cost instead."
    },
    "unit_cost": {
      "type": "number",
      "minimum": 0,
      "description": "What the work costs you. It lets lastprice/cost-plus price with no current_price, which is the usual case when pricing a task you are about to run. Routing picks a function that can use it; to require cost-plus, pass its UUID from list_functions as function_id."
    },
    "target_margin_pct": {
      "type": "number",
      "minimum": 0,
      "maximum": 95,
      "description": "Margin on price for cost-plus, not markup on cost: price = unit_cost / (1 - margin). Defaults to 30."
    },
    "min_price": {
      "type": "number",
      "minimum": 0,
      "description": "Optional minimum acceptable price. A competitive offer needs this or a declared unit_cost and target_margin_pct."
    },
    "max_price": {
      "type": "number",
      "minimum": 0,
      "description": "Optional maximum acceptable price."
    },
    "currency": {
      "type": "string",
      "minLength": 3,
      "maxLength": 3,
      "description": "Three-letter ISO currency code, e.g. USD."
    },
    "customer_segment": {
      "type": "string",
      "description": "Optional segment, e.g. enterprise."
    },
    "geo": {
      "type": "string",
      "description": "Optional geography hint, e.g. US."
    },
    "routing_preference": {
      "type": "string",
      "enum": [
        "cheapest",
        "fastest",
        "explicit",
        "round_robin",
        "weighted",
        "policy",
        "default"
      ],
      "description": "How to route across pricing functions. Defaults to \"default\"."
    },
    "function_id": {
      "type": "string",
      "format": "uuid",
      "description": "Optional explicit pricing function UUID to use."
    },
    "include_explanation": {
      "type": "boolean",
      "description": "If true, ask for an explanation and confidence with the price."
    },
    "metadata": {
      "type": "object",
      "description": "Optional context. For competitive pricing: competitor_price, competitor_currency and competitive_action (match or undercut); undercut requires undercut_pct. Confirm product comparability before calling."
    }
  },
  "required": [
    "currency"
  ]
}
⚪verify_price(proposed_price, currency, product_id, product_type, current_price, ...)

Ask whether a price makes sense for its context, rather than what the price should be. Returns a verdict (fair, too_high, too_low, or unknown), the band it was judged against, a signed deviation from the reference, a confidence, and the evidence behind it. A verdict of "unknown" means the price could not be judged, which is not the same as fair.

输入模式

{
  "type": "object",
  "properties": {
    "proposed_price": {
      "type": "number",
      "minimum": 0,
      "description": "The price to judge. This is the subject of the call."
    },
    "currency": {
      "type": "string",
      "minLength": 3,
      "maxLength": 3,
      "description": "Three-letter ISO currency code, e.g. USD. Defaults to USD."
    },
    "product_id": {
      "type": "string",
      "description": "Optional identifier of what is being priced."
    },
    "product_type": {
      "type": "string",
      "enum": [
        "saas",
        "ecommerce",
        "marketplace",
        "digital",
        "api",
        "custom"
      ],
      "description": "Optional category of what is being priced."
    },
    "current_price": {
      "type": "number",
      "minimum": 0,
      "description": "Optional incumbent price. Not required: asking whether a price is sensible does not presuppose an existing one."
    },
    "customer_segment": {
      "type": "string",
      "description": "Optional segment, e.g. enterprise."
    },
    "geo": {
      "type": "string",
      "description": "Optional geography hint, e.g. US."
    },
    "min_price": {
      "type": "number",
      "minimum": 0,
      "description": "Optional hard floor. Binding: a verdict will never relax it."
    },
    "max_price": {
      "type": "number",
      "minimum": 0,
      "description": "Optional hard ceiling. Binding: a verdict will never relax it."
    },
    "metadata": {
      "type": "object",
      "description": "Optional free-form context."
    }
  },
  "required": [
    "proposed_price"
  ]
}
🟢list_functions

List the pricing functions registered for the authenticated tenant.

输入模式

{
  "type": "object",
  "properties": {}
}
⚪browse_catalog

Browse the public marketplace catalog of pricing functions.

输入模式

{
  "type": "object",
  "properties": {}
}

社区

评价此服务器

证据

最近观测

已验证未记录版本5 个工具