MCP & APImcp.remote-pro.ai

estimate_squad_cost MCP tool

The estimate_squad_cost MCP tool is a quote request. It sends the squad you describe to the same pricing engine as remote-pro.ai, and the engine e-mails the itemised proposal to the user's work address within 2 minutes. The tool's response carries a reference, the delivery channel, the ETA, the checkout lane, the assumptions and a VAT note — never an amount. Use it when a user asks what a team would cost. It's public and read-only; prices become binding only in a quotation.

Developer preview until live: the MCP server and the platform API are not running yet. Tools, endpoints and examples on these pages describe the interface we are building; a call made today returns nothing.

What the estimate_squad_cost MCP tool does

  • Use it for: "What would 2 Senior and 1 Lead cloud engineers cost per month in SAR?" → the assistant requests the quote and tells the user to expect it by e-mail.

Input

FieldTypeRequiredNotes
rolesobject[]YesEach: role, seniority, count; optional onsite (none, riyadh, dubai) and hours_per_month
currencyenumYesSAR, AED, USD or EUR
engagementenumNoteam_extension (default), ready_squad or managed_delivery
duration_monthsintegerNoDefaults to the minimum term (1 month for team_extension; 3 months for ready_squad and managed_delivery)
buyer_countrystringNoISO 3166 alpha-2, used for the VAT note
profile_idsstring[]NoPrice specific profiles from search_talent

Output

  • reference (e.g. q_7HD29K) and valid_until (30 days from issue)
  • delivery: "email" — the itemised proposal goes to the user's work e-mail; eta_minutes: 2
  • currency and lines[] (role, seniority, count) as understood by the engine, without amounts
  • lane: self_serve (for smaller squads), reservation (for mid-sized squads) or enterprise (for larger squads), with lane_note; the thresholds are stated in the proposal
  • assumptions[]: e.g. full-time hours, remote delivery, minimum term
  • vat_note: e.g. Prices exclude VAT. Saudi buyers: 15% VAT. UAE buyers: 5% VAT. EU business buyers: reverse charge.
  • quote_url: the proposal page (document link and next steps) once the e-mail is sent

Example

The assistant calls estimate_squad_cost with 2 Senior cloud engineers and 1 Lead cloud engineer, currency "SAR", engagement "team_extension" and buyer_country "SA". The response is { "reference": "q_7HD29K", "delivery": "email", "eta_minutes": 2, "valid_until": "<30 days>", "lane": "self_serve", "vat_note": "Prices exclude 15% VAT." }. The text summary reads: "Your itemised quote for 3 cloud engineers is on its way by e-mail (within 2 minutes), valid 30 days. Prices exclude 15% VAT."

Request

tools/call
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "estimate_squad_cost",
    "arguments": {
      "roles": [
        {
          "role": "Cloud Engineer",
          "seniority": "senior",
          "count": 2
        },
        {
          "role": "Cloud Engineer",
          "seniority": "lead",
          "count": 1
        }
      ],
      "currency": "SAR",
      "engagement": "team_extension",
      "buyer_country": "SA"
    }
  }
}

Response

result
{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "content": [
      {
        "type": "text",
        "text": "Estimated monthly cost for 3 cloud engineers, valid 30 days. Prices exclude 15% VAT."
      }
    ],
    "structuredContent": {
      "quote_id": "q_7HD29K",
      "valid_until": "2026-12-07",
      "currency": "SAR",
      "lines": [
        {
          "role": "Cloud Engineer",
          "seniority": "senior",
          "count": 2,
          "monthly_amount": "priced by the pricing engine — delivered in the itemised quote (PDF) by e-mail"
        },
        {
          "role": "Cloud Engineer",
          "seniority": "lead",
          "count": 1,
          "monthly_amount": "priced by the pricing engine — delivered in the itemised quote (PDF) by e-mail"
        }
      ],
      "monthly_total": "priced by the pricing engine — delivered in the itemised quote (PDF) by e-mail",
      "lane": "reservation",
      "lane_note": "routed by the engine from the monthly total",
      "assumptions": [
        "full-time hours",
        "remote delivery",
        "minimum term: 1 month",
        "multi-specialist discount applied by the engine"
      ],
      "vat_note": "Prices exclude VAT. Saudi buyers: 15% VAT. UAE buyers: 5% VAT. EU business buyers: reverse charge.",
      "quote_url": "https://remote-pro.ai/en/squads/book/quote?quote=q_7HD29K"
    }
  }
}

Errors

  • invalid_argument: currency must be SAR, AED, USD or EUR.
  • invalid_argument: This role isn't in the catalogue. Use a role from search_talent results or describe it in request_proposal notes.
  • invalid_argument: count must be between 1 and 20 per role.
  • quote_expired (when re-reading an old reference): This reference expired on date. Request a new quote.

Limits and access

  • Public. No token needed.
  • With OAuth, the e-mailed proposal uses your organisation's contracted rates and Squad Pack discounts.
  • Standard limits apply: 30 per minute anonymous, 120 per minute authenticated.

Frequently asked questions

No. It is a quote request: the pricing engine e-mails the itemised proposal within 2 minutes, and the tool returns a reference valid for 30 days, the delivery channel, the ETA, the lane and the assumptions. Prices become binding only in a quotation and SOW. Remote Pro Ai pricing is quotation-based, and no price list is published.

The lane tells the assistant how the deal will be completed. For smaller squads is self-serve with card payment and a click-through MSA. For mid-sized squads is a reservation with a quotation PDF. For larger squads goes to the Enterprise lane with a formal quotation. Lane thresholds are stated in your proposal.

No. The e-mailed proposal excludes VAT, and the vat_note explains the treatment for the buyer's country: 15% VAT for Saudi buyers, 5% for UAE buyers and reverse charge for EU business buyers. Assistants should repeat the note when telling the user to expect the quote. Never add VAT yourself.

30 days from issue, matching Remote Pro Ai's quotation validity. Pass it to request_proposal to carry the same squad into a draft proposal. After 30 days, the tool returns quote_expired and you can request a new quote. A reference doesn't hold engineers; use a 72-hour or 7-day hold for that.

Yes. Pass profile_ids from search_talent and the e-mailed proposal prices those profiles at their level. Without profile_ids, the proposal prices the roles and levels you describe. Requesting specific profiles gives the user a more precise proposal and lets the reference carry the same people into request_proposal, so the draft proposal names the profiles they chose.