Agent Preflight

Budgeted agent preflight: allow|block|reuse|defer|advise. Never executes destination tools. Free MCP

사용해야 할까요

품질 및 안전성

A
설명 품질
100%
스키마 완전성
87%
이름 품질
90%
오염 위험
80%
권한 일치
100%
프로토콜 준수
100%

발견 사항 (2)

  • HIGHTool poisoning patterns detected
  • MEDIUMTool description contains URL to non-standard domainpreflight_tool_call에서

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~1,698토큰 (도구 정의)
~9.0 KB일반적인 응답 크기
중간 정도의 주의 영향 (128k 컨텍스트의 1.33%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "agent-preflight": {
      "url": "https://api.agent-preflight.com/mcp"
    }
  }
}

원격 엔드포인트

https://api.agent-preflight.com/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (2)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢check_request(request, schema, economics)

Validate an HTTP API request body against a supplied JSON Schema before sending it. This tool does not execute the request. Use it when an agent needs to determine whether a proposed JSON body satisfies its expected schema. Optional economics adds proceed/abort advice from expected waste versus a $0.001 check.

입력 스키마

{
  "type": "object",
  "properties": {
    "request": {
      "type": "object",
      "properties": {
        "method": {
          "type": "string",
          "description": "HTTP method of the proposed request"
        },
        "url": {
          "type": "string",
          "description": "Absolute http(s) URL. This tool never fetches the URL."
        },
        "headers": {
          "description": "HTTP headers as string key/value pairs",
          "type": "object",
          "propertyNames": {
            "type": "string"
          },
          "additionalProperties": {
            "type": "string"
          }
        },
        "query": {
          "description": "Query parameters",
          "type": "object",
          "propertyNames": {
            "type": "string"
          },
          "additionalProperties": {}
        },
        "body": {
          "description": "JSON body checked against schema"
        }
      },
      "required": [
        "method",
        "url"
      ]
    },
    "schema": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {},
      "description": "JSON Schema applied to request.body"
    },
    "economics": {
      "description": "Optional V0.2 cost context. Omit for V0.1 validation-only output.",
      "type": "object",
      "properties": {
        "downstreamCostUsd": {
          "type": "number",
          "minimum": 0,
          "description": "USD cost of the target API attempt or success"
        },
        "billsOnInvalidRequest": {
          "type": "boolean",
          "description": "True when the target API charges or consumes quota on 4xx"
        },
        "retryCostUsd": {
          "type": "number",
          "minimum": 0,
          "description": "USD model/tool-turn cost of one failed attempt"
        },
        "priorInvalidProbability": {
          "description": "Prior probability the payload is doomed. Default 0.25",
          "type": "number",
          "minimum": 0,
          "maximum": 1
        },
        "preflightPriceUsd": {
          "description": "Price of this check. Default 0.001",
          "type": "number",
          "minimum": 0
        },
        "budgetRemainingUsd": {
          "description": "Remaining agent budget. Checks above this are not +EV",
          "type": "number",
          "minimum": 0
        }
      },
      "required": [
        "downstreamCostUsd",
        "billsOnInvalidRequest",
        "retryCostUsd"
      ]
    }
  },
  "required": [
    "request",
    "schema"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

출력 스키마

{
  "type": "object",
  "properties": {
    "valid": {
      "type": "boolean"
    },
    "errors": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "path": {
            "type": "string"
          },
          "code": {
            "type": "string"
          },
          "message": {
            "type": "string"
          }
        },
        "required": [
          "path",
          "code",
          "message"
        ],
        "additionalProperties": false
      }
    },
    "warnings": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "path": {
            "type": "string"
          },
          "code": {
            "type": "string"
          },
          "message": {
            "type": "string"
          }
        },
        "required": [
          "path",
          "code",
          "message"
        ],
        "additionalProperties": false
      }
    },
    "requestHash": {
      "type": "string"
    },
    "economics": {
      "type": "object",
      "properties": {
        "decision": {
          "type": "string",
          "enum": [
            "proceed",
            "abort"
          ]
        },
        "reason": {
          "type": "string",
          "enum": [
            "valid",
            "invalid_doomed_request"
          ]
        },
        "preflightPriceUsd": {
          "type": "number"
        },
        "wasteIfSentUsd": {
          "type": "number"
        },
        "realizedNetUsd": {
          "type": "number"
        },
        "worthCheckingAPriori": {
          "type": "boolean"
        },
        "aPrioriExpectedWasteUsd": {
          "type": "number"
        },
        "aPrioriExpectedNetUsd": {
          "type": "number"
        }
      },
      "required": [
        "decision",
        "reason",
        "preflightPriceUsd",
        "wasteIfSentUsd",
        "realizedNetUsd",
        "worthCheckingAPriori",
        "aPrioriExpectedWasteUsd",
        "aPrioriExpectedNetUsd"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "valid",
    "errors",
    "warnings",
    "requestHash"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢preflight_tool_call(runId, stepId, tool, budget, task, ...)

Free MCP decision for generic search:web_search or browse:fetch proposals only. Returns structuredContent and JSON text, never destination results. Caller supplies cost estimates, post-consultation budget and history, executes tools and retrieves resultReference itself. Reuse requires explicit permission, positive TTL and matching nonempty goal hashes; history must belong to the caller. estimated fees/savings are hypothetical, not receipts; confidence is not calibrated. Paid HTTP is a separate $0.001 per settled POST interface. Full contract: https://agent-preflight.com/docs

입력 스키마

{
  "type": "object",
  "properties": {
    "runId": {
      "type": "string"
    },
    "stepId": {
      "type": "string"
    },
    "tool": {
      "type": "object",
      "properties": {
        "provider": {
          "type": "string"
        },
        "operation": {
          "type": "string"
        },
        "request": {
          "type": "object",
          "propertyNames": {
            "type": "string"
          },
          "additionalProperties": {}
        },
        "estimatedExternalCostUsd": {
          "type": "number",
          "minimum": 0
        },
        "estimatedModelCostUsd": {
          "type": "number",
          "minimum": 0
        }
      },
      "required": [
        "provider",
        "operation",
        "request",
        "estimatedExternalCostUsd"
      ]
    },
    "budget": {
      "type": "object",
      "properties": {
        "remainingUsd": {
          "type": "number",
          "minimum": 0
        },
        "reservedUsd": {
          "type": "number",
          "minimum": 0
        },
        "maxToolCallsRemaining": {
          "type": "integer",
          "minimum": 0,
          "maximum": 9007199254740991
        }
      },
      "required": [
        "remainingUsd"
      ]
    },
    "task": {
      "type": "object",
      "properties": {
        "goalHash": {
          "type": "string"
        }
      },
      "required": [
        "goalHash"
      ]
    },
    "history": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "toolCallId": {
            "type": "string"
          },
          "fingerprint": {
            "type": "string"
          },
          "outcome": {
            "type": "string",
            "enum": [
              "success",
              "terminal_failure",
              "transient_failure"
            ]
          },
          "resultReference": {
            "type": "string"
          },
          "ageSeconds": {
            "type": "number",
            "minimum": 0
          },
          "goalHash": {
            "type": "string"
          }
        },
        "required": [
          "toolCallId",
          "fingerprint",
          "outcome",
          "ageSeconds"
        ]
      }
    },
    "capabilities": {
      "type": "object",
      "properties": {
        "canReusePriorResult": {
          "type": "boolean"
        },
        "canReduceScope": {
          "type": "boolean"
        }
      }
    },
    "freshnessTtlSeconds": {
      "type": "number",
      "minimum": 0
    },
    "retryCap": {
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    },
    "preflightPriceUsd": {
      "type": "number",
      "minimum": 0
    }
  },
  "required": [
    "runId",
    "stepId",
    "tool",
    "budget"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

출력 스키마

{
  "type": "object",
  "properties": {
    "decision": {
      "type": "string",
      "enum": [
        "allow",
        "block",
        "reuse",
        "defer",
        "advise"
      ]
    },
    "enforcement": {
      "type": "string",
      "enum": [
        "execute",
        "safe_to_skip",
        "advisory"
      ]
    },
    "reasonCodes": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "issues": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "path": {
            "type": "string"
          },
          "code": {
            "type": "string"
          },
          "message": {
            "type": "string"
          }
        },
        "required": [
          "path",
          "code",
          "message"
        ],
        "additionalProperties": false
      }
    },
    "requestFingerprint": {
      "description": "SHA-256 of version-2 exact proposal; absent on invalid input",
      "type": "string"
    },
    "matchedCallId": {
      "type": "string"
    },
    "estimated": {
      "type": "object",
      "properties": {
        "preflightCostUsd": {
          "type": "number"
        },
        "priceChargedUsd": {
          "type": "number",
          "description": "Modeled fee, not a settlement receipt"
        },
        "avoidableExternalCostUsd": {
          "type": "number"
        },
        "avoidableModelCostUsd": {
          "type": "number"
        },
        "netSavingsUsd": {
          "type": "number"
        },
        "billable": {
          "type": "boolean",
          "description": "Modeled actionable status; MCP is unpaid"
        },
        "confidence": {
          "type": "number",
          "description": "Rule constant, not a calibrated probability"
        }
      },
      "required": [
        "preflightCostUsd",
        "priceChargedUsd",
        "avoidableExternalCostUsd",
        "avoidableModelCostUsd",
        "netSavingsUsd",
        "billable",
        "confidence"
      ],
      "additionalProperties": false
    },
    "recommendation": {
      "type": "object",
      "properties": {
        "action": {
          "type": "string"
        },
        "resultReference": {
          "type": "string"
        }
      },
      "required": [
        "action"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "decision",
    "enforcement",
    "reasonCodes",
    "issues"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 2개
검증됨버전이 기록되지 않음도구 2개