MCP 服务器

ALPNAI — Agent Performance Tools

io.github.fredericmagnathy-ops/alpnai
AI 与智能体 数据与分析 公开且可连接 MCP 2025-11-25

此 MCP 可以做什么

Analyzes supplied agent workflow traces for cost, latency, retry behavior, quality gates, and performance reporting, with optional report purchases.

analyze_agent_latency
Latency Lab
Find slow agent workflows and retry overhead before scaling. Supply recorded attempts with task_id, workflow, variant, cost_usd, success and optional latency_ms. Returns P50/P95 of summed recorded attempt durations per task, retry counts, duration coverage and an optional P95 threshold check for each workflow and variant. Missing durations produce null percentiles, not zero latency. This measures supplied durations, not live end-to-end service latency. Free calculation; requires an active ALPNAI agent key; no payment or automatic deployment.
只读 幂等
输入模式
{'type': 'object', 'title': 'ALPNAI recorded agent attempts', 'required': ['runs'], 'properties': {'runs': {'type': 'array', 'items': {'type': 'object', 'required': ['task_id', 'workflow', 'variant', 'cost_usd', 'success'], 'properties': {'success': {'type': 'boolean'}, 'task_id': {'type': 'string', 'pattern': '^(?!\\s)(?![\\s\\S]*\\s$)[^\\u0000-\\u001F\\u007F]+$', 'maxLength': 128, 'minLength': 1, 'description': 'Nonempty, no control characters or surrounding whitespace. The engine additionally enforces at most 128 UTF-16 code units.'}, 'variant': {'enum': ['baseline', 'candidate'], 'type': 'string'}, 'cost_usd': {'type': 'number', 'maximum': 10000, 'minimum': 0, 'description': 'USD cost of this attempt. At most six decimal places; the engine verifies whole micro-USD using floating-point tolerance. No multipleOf keyword is used, to avoid rejecting valid JSON decimals.'}, 'workflow': {'type': 'string', 'pattern': '^(?!\\s)(?![\\s\\S]*\\s$)[^\\u0000-\\u001F\\u007F]+$', 'maxLength': 80, 'minLength': 1, 'description': 'Nonempty, no control characters or surrounding whitespace. The engine additionally enforces at most 80 UTF-16 code units.'}, 'latency_ms': {'type': 'number', 'maximum': 86400000, 'minimum': 0, 'description': 'Recorded attempt duration in milliseconds; decimals are accepted. Omit if not measured.'}}, 'additionalProperties': False}, 'maxItems': 1000, 'minItems': 1}, 'config': {'type': 'object', 'required': [], 'properties': {'minSamples': {'type': 'integer', 'default': 30, 'maximum': 500, 'minimum': 2}, 'monthlyTasks': {'type': 'integer', 'maximum': 1000000, 'minimum': 1, 'description': 'Baseline logical tasks launched per month; the engine requires exactly one workflow if supplied.'}, 'minSuccessRate': {'type': 'number', 'default': 0.95, 'maximum': 1, 'minimum': 0}, 'maxP95LatencyMs': {'type': 'number', 'maximum': 86400000000, 'minimum': 0}, 'maxSuccessRateDrop': {'type': 'number', 'default': 0.02, 'maximum': 1, 'minimum': 0}}, 'additionalProperties': False}}, 'description': 'Recorded attempts, not prompts or secrets. Identical rows count as separate attempts. All three analysis tools accept this same input. The runtime validator additionally enforces six-decimal micro-USD precision, the same task_id belonging to one workflow, one workflow when monthlyTasks is given, and UTF-16 length limits. HTTP body limit: 512000 UTF-8 bytes.', 'additionalProperties': False}
输出模式
{'type': 'object', 'required': ['schema_version', 'measurement', 'percentile_method', 'groups'], 'properties': {'groups': {'type': 'array', 'items': {'type': 'object', 'required': ['workflow', 'variant', 'tasks', 'recorded_attempts', 'retry_attempts', 'duration_coverage', 'p50_ms', 'p95_ms', 'max_ms', 'threshold_ms', 'within_p95_threshold'], 'properties': {'tasks': {'type': 'integer', 'maximum': 1000, 'minimum': 1}, 'max_ms': {'anyOf': [{'type': 'number', 'maximum': 86400000000, 'minimum': 0}, {'type': 'null'}]}, 'p50_ms': {'anyOf': [{'type': 'number', 'maximum': 86400000000, 'minimum': 0}, {'type': 'null'}]}, 'p95_ms': {'anyOf': [{'type': 'number', 'maximum': 86400000000, 'minimum': 0}, {'type': 'null'}]}, 'variant': {'enum': ['baseline', 'candidate'], 'type': 'string'}, 'workflow': {'type': 'string', 'pattern': '^(?!\\s)(?![\\s\\S]*\\s$)[^\\u0000-\\u001F\\u007F]+$', 'maxLength': 80, 'minLength': 1, 'description': 'Nonempty, no control characters or surrounding whitespace. The engine additionally enforces at most 80 UTF-16 code units.'}, 'threshold_ms': {'anyOf': [{'type': 'number', 'maximum': 86400000000, 'minimum': 0}, {'type': 'null'}]}, 'retry_attempts': {'type': 'integer', 'maximum': 999, 'minimum': 0}, 'duration_coverage': {'type': 'number', 'maximum': 1, 'minimum': 0}, 'recorded_attempts': {'type': 'integer', 'maximum': 1000, 'minimum': 1}, 'within_p95_threshold': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}]}}, 'additionalProperties': True}, 'maxItems': 1000, 'minItems': 1}, 'measurement': {'type': 'string', 'const': 'summed_recorded_attempt_durations_per_task'}, 'schema_version': {'type': 'string', 'const': '1.0.0'}, 'percentile_method': {'type': 'string', 'const': 'nearest_rank'}}, 'additionalProperties': True}
audit_agent_costs
Spend Proof cost analysis
Free comparison of cost per successful task on supplied paired traces. Requires a sandbox agent key. No purchase, storage, external model call or automatic deployment. Success labels are supplied by the client.
只读 幂等
输入模式
{'type': 'object', 'title': 'ALPNAI recorded agent attempts', 'required': ['runs'], 'properties': {'runs': {'type': 'array', 'items': {'type': 'object', 'required': ['task_id', 'workflow', 'variant', 'cost_usd', 'success'], 'properties': {'success': {'type': 'boolean'}, 'task_id': {'type': 'string', 'pattern': '^(?!\\s)(?![\\s\\S]*\\s$)[^\\u0000-\\u001F\\u007F]+$', 'maxLength': 128, 'minLength': 1, 'description': 'Nonempty, no control characters or surrounding whitespace. The engine additionally enforces at most 128 UTF-16 code units.'}, 'variant': {'enum': ['baseline', 'candidate'], 'type': 'string'}, 'cost_usd': {'type': 'number', 'maximum': 10000, 'minimum': 0, 'description': 'USD cost of this attempt. At most six decimal places; the engine verifies whole micro-USD using floating-point tolerance. No multipleOf keyword is used, to avoid rejecting valid JSON decimals.'}, 'workflow': {'type': 'string', 'pattern': '^(?!\\s)(?![\\s\\S]*\\s$)[^\\u0000-\\u001F\\u007F]+$', 'maxLength': 80, 'minLength': 1, 'description': 'Nonempty, no control characters or surrounding whitespace. The engine additionally enforces at most 80 UTF-16 code units.'}, 'latency_ms': {'type': 'number', 'maximum': 86400000, 'minimum': 0, 'description': 'Recorded attempt duration in milliseconds; decimals are accepted. Omit if not measured.'}}, 'additionalProperties': False}, 'maxItems': 1000, 'minItems': 1}, 'config': {'type': 'object', 'required': [], 'properties': {'minSamples': {'type': 'integer', 'default': 30, 'maximum': 500, 'minimum': 2}, 'monthlyTasks': {'type': 'integer', 'maximum': 1000000, 'minimum': 1, 'description': 'Baseline logical tasks launched per month; the engine requires exactly one workflow if supplied.'}, 'minSuccessRate': {'type': 'number', 'default': 0.95, 'maximum': 1, 'minimum': 0}, 'maxP95LatencyMs': {'type': 'number', 'maximum': 86400000000, 'minimum': 0}, 'maxSuccessRateDrop': {'type': 'number', 'default': 0.02, 'maximum': 1, 'minimum': 0}}, 'additionalProperties': False}}, 'description': 'Recorded attempts, not prompts or secrets. Identical rows count as separate attempts. All three analysis tools accept this same input. The runtime validator additionally enforces six-decimal micro-USD precision, the same task_id belonging to one workflow, one workflow when monthlyTasks is given, and UTF-16 length limits. HTTP body limit: 512000 UTF-8 bytes.', 'additionalProperties': False}
输出模式
{'type': 'object', 'required': ['schema_version', 'purpose', 'data_provenance', 'config', 'input_attempt_records', 'experimental_bias_control', 'automatic_deployment_authorized', 'methodology', 'workflows'], 'properties': {'config': {'type': 'object', 'required': ['minSamples', 'minSuccessRate', 'maxSuccessRateDrop'], 'properties': {'minSamples': {'type': 'integer', 'default': 30, 'maximum': 500, 'minimum': 2}, 'monthlyTasks': {'type': 'integer', 'maximum': 1000000, 'minimum': 1, 'description': 'Baseline logical tasks launched per month; the engine requires exactly one workflow if supplied.'}, 'minSuccessRate': {'type': 'number', 'default': 0.95, 'maximum': 1, 'minimum': 0}, 'maxP95LatencyMs': {'type': 'number', 'maximum': 86400000000, 'minimum': 0}, 'maxSuccessRateDrop': {'type': 'number', 'default': 0.02, 'maximum': 1, 'minimum': 0}}, 'additionalProperties': True}, 'purpose': {'type': 'string', 'const': 'cost_per_successful_agent_task_audit'}, 'workflows': {'type': 'array', 'items': {'type': 'object', 'required': ['workflow', 'baseline', 'candidate', 'comparison', 'gates', 'decision', 'automatic_deployment_authorized', 'realized_savings_usd', 'opportunity_monthly'], 'properties': {'gates': {'type': 'object', 'required': ['both_variants', 'minimum_distinct_tasks_per_variant', 'same_task_set', 'observed_success_rate', 'recorded_latency', 'lower_cost_per_successful_task', 'experimental_bias_control'], 'properties': {'both_variants': {'enum': ['pass', 'fail', 'unknown', 'not_requested'], 'type': 'string'}, 'same_task_set': {'enum': ['pass', 'fail', 'unknown', 'not_requested'], 'type': 'string'}, 'recorded_latency': {'enum': ['pass', 'fail', 'unknown', 'not_requested'], 'type': 'string'}, 'observed_success_rate': {'enum': ['pass', 'fail', 'unknown', 'not_requested'], 'type': 'string'}, 'experimental_bias_control': {'type': 'string', 'const': 'unknown'}, 'lower_cost_per_successful_task': {'enum': ['pass', 'fail', 'unknown', 'not_requested'], 'type': 'string'}, 'minimum_distinct_tasks_per_variant': {'enum': ['pass', 'fail', 'unknown', 'not_requested'], 'type': 'string'}}, 'additionalProperties': True}, 'baseline': {'anyOf': [{'type': 'object', 'required': ['tasks', 'attempts', 'retry_attempts', 'successful_tasks', 'total_cost_usd', 'cost_per_task_usd', 'cost_per_successful_task_usd', 'success_rate', 'success_rate_interval_95_wilson', 'p95_recorded_attempt_latency_per_task_ms', 'latency_complete'], 'properties': {'tasks': {'type': 'integer', 'maximum': 1000, 'minimum': 1}, 'attempts': {'type': 'integer', 'maximum': 1000, 'minimum': 1}, 'success_rate': {'type': 'number', 'maximum': 1, 'minimum': 0}, 'retry_attempts': {'type': 'integer', 'maximum': 999, 'minimum': 0}, 'total_cost_usd': {'type': 'number', 'minimum': 0}, 'latency_complete': {'type': 'boolean'}, 'successful_tasks': {'type': 'integer', 'maximum': 1000, 'minimum': 0}, 'cost_per_task_usd': {'type': 'number', 'minimum': 0}, 'cost_per_successful_task_usd': {'anyOf': [{'type': 'number', 'minimum': 0}, {'type': 'null'}]}, 'success_rate_interval_95_wilson': {'type': 'array', 'items': {'type': 'number', 'maximum': 1, 'minimum': 0}, 'maxItems': 2, 'minItems': 2}, 'p95_recorded_attempt_latency_per_task_ms': {'anyOf': [{'type': 'number', 'maximum': 86400000000, 'minimum': 0}, {'type': 'null'}]}}, 'additionalProperties': True}, {'type': 'null'}]}, 'decision': {'enum': ['missing_comparison', 'collect_more_data', 'quality_regression', 'latency_data_required', 'latency_regression', 'no_economic_advantage', 'candidate_for_controlled_trial'], 'type': 'string'}, 'workflow': {'type': 'string', 'pattern': '^(?!\\s)(?![\\s\\S]*\\s$)[^\\u0000-\\u001F\\u007F]+$', 'maxLength': 80, 'minLength': 1, 'description': 'Nonempty, no control characters or surrounding whitespace. The engine additionally enforces at most 80 UTF-16 code units.'}, 'candidate': {'anyOf': [{'type': 'object', 'required': ['tasks', 'attempts', 'retry_attempts', 'successful_tasks', 'total_cost_usd', 'cost_per_task_usd', 'cost_per_successful_task_usd', 'success_rate', 'success_rate_interval_95_wilson', 'p95_recorded_attempt_latency_per_task_ms', 'latency_complete'], 'properties': {'tasks': {'type': 'integer', 'maximum': 1000, 'minimum': 1}, 'attempts': {'type': 'integer', 'maximum': 1000, 'minimum': 1}, 'success_rate': {'type': 'number', 'maximum': 1, 'minimum': 0}, 'retry_attempts': {'type': 'integer', 'maximum': 999, 'minimum': 0}, 'total_cost_usd': {'type': 'number', 'minimum': 0}, 'latency_complete': {'type': 'boolean'}, 'successful_tasks': {'type': 'integer', 'maximum': 1000, 'minimum': 0}, 'cost_per_task_usd': {'type': 'number', 'minimum': 0}, 'cost_per_successful_task_usd': {'anyOf': [{'type': 'number', 'minimum': 0}, {'type': 'null'}]}, 'success_rate_interval_95_wilson': {'type': 'array', 'items': {'type': 'number', 'maximum': 1, 'minimum': 0}, 'maxItems': 2, 'minItems': 2}, 'p95_recorded_attempt_latency_per_task_ms': {'anyOf': [{'type': 'number', 'maximum': 86400000000, 'minimum': 0}, {'type': 'null'}]}}, 'additionalProperties': True}, {'type': 'null'}]}, 'comparison': {'type': 'object', 'required': ['matched_task_ids', 'baseline_only_tasks', 'candidate_only_tasks', 'same_task_set'], 'properties': {'same_task_set': {'type': 'boolean'}, 'matched_task_ids': {'type': 'integer', 'maximum': 1000, 'minimum': 0}, 'baseline_only_tasks': {'type': 'integer', 'maximum': 1000, 'minimum': 0}, 'candidate_only_tasks': {'type': 'integer', 'maximum': 1000, 'minimum': 0}}, 'additionalProperties': True}, 'opportunity_monthly': {'anyOf': [{'type': 'object', 'required': ['status', 'basis', 'currency', 'period', 'baseline_launched_tasks_per_month', 'expected_successful_tasks_per_month', 'candidate_expected_launched_tasks_per_month', 'baseline_expected_cost_usd', 'candidate_expected_cost_usd', 'potential_cost_difference_usd', 'excludes', 'conditions'], 'properties': {'basis': {'type': 'string', 'const': 'same_expected_successful_task_volume'}, 'period': {'type': 'string', 'const': 'month'}, 'status': {'type': 'string', 'const': 'conditional_projection_not_realized'}, 'currency': {'type': 'string', 'const': 'USD'}, 'excludes': {'type': 'array', 'items': {'type': 'string'}, 'minItems': 1}, 'conditions': {'type': 'array', 'items': {'type': 'string'}, 'minItems': 1}, 'baseline_expected_cost_usd': {'type': 'number', 'minimum': 0}, 'candidate_expected_cost_usd': {'type': 'number', 'minimum': 0}, 'potential_cost_difference_usd': {'type': 'number', 'minimum': 0}, 'baseline_launched_tasks_per_month': {'type': 'integer', 'maximum': 1000000, 'minimum': 1}, 'expected_successful_tasks_per_month': {'type': 'number', 'minimum': 0}, 'candidate_expected_launched_tasks_per_month': {'type': 'number', 'minimum': 0}}, 'additionalProperties': True}, {'type': 'null'}]}, 'realized_savings_usd': {'type': 'null'}, 'automatic_deployment_authorized': {'type': 'boolean', 'const': False}}, 'additionalProperties': True}, 'maxItems': 1000, 'minItems': 1}, 'methodology': {'type': 'object', 'required': ['logical_task_key', 'success', 'duplicates', 'latency', 'quality', 'uncertainty', 'missing_costs'], 'properties': {'latency': {'type': 'string'}, 'quality': {'type': 'string'}, 'success': {'type': 'string'}, 'duplicates': {'type': 'string'}, 'uncertainty': {'type': 'string'}, 'missing_costs': {'type': 'string'}, 'logical_task_key': {'type': 'array', 'items': {'type': 'string'}, 'maxItems': 3, 'minItems': 3}}, 'additionalProperties': True}, 'schema_version': {'type': 'string', 'const': '1.0.0'}, 'data_provenance': {'type': 'string', 'const': 'user_supplied_not_verified'}, 'input_attempt_records': {'type': 'integer', 'maximum': 1000, 'minimum': 1}, 'experimental_bias_control': {'type': 'string', 'const': 'unknown'}, 'automatic_deployment_authorized': {'type': 'boolean', 'const': False}}, 'additionalProperties': True}
check_agent_quality
Quality Gate
Check whether a candidate agent workflow regresses before replacing the baseline. Supply baseline and candidate attempts on matching task IDs with client-provided success labels and costs. Returns observed success rates, task-set matching, sample-size, success, latency and cost gates, plus a decision such as collect_more_data, quality_regression or candidate_for_controlled_trial. Optional thresholds use config. It evaluates the recorded labels, not the correctness of answers or future performance. Free calculation; requires an active ALPNAI agent key; no payment or automatic deployment.
只读 幂等
输入模式
{'type': 'object', 'title': 'ALPNAI recorded agent attempts', 'required': ['runs'], 'properties': {'runs': {'type': 'array', 'items': {'type': 'object', 'required': ['task_id', 'workflow', 'variant', 'cost_usd', 'success'], 'properties': {'success': {'type': 'boolean'}, 'task_id': {'type': 'string', 'pattern': '^(?!\\s)(?![\\s\\S]*\\s$)[^\\u0000-\\u001F\\u007F]+$', 'maxLength': 128, 'minLength': 1, 'description': 'Nonempty, no control characters or surrounding whitespace. The engine additionally enforces at most 128 UTF-16 code units.'}, 'variant': {'enum': ['baseline', 'candidate'], 'type': 'string'}, 'cost_usd': {'type': 'number', 'maximum': 10000, 'minimum': 0, 'description': 'USD cost of this attempt. At most six decimal places; the engine verifies whole micro-USD using floating-point tolerance. No multipleOf keyword is used, to avoid rejecting valid JSON decimals.'}, 'workflow': {'type': 'string', 'pattern': '^(?!\\s)(?![\\s\\S]*\\s$)[^\\u0000-\\u001F\\u007F]+$', 'maxLength': 80, 'minLength': 1, 'description': 'Nonempty, no control characters or surrounding whitespace. The engine additionally enforces at most 80 UTF-16 code units.'}, 'latency_ms': {'type': 'number', 'maximum': 86400000, 'minimum': 0, 'description': 'Recorded attempt duration in milliseconds; decimals are accepted. Omit if not measured.'}}, 'additionalProperties': False}, 'maxItems': 1000, 'minItems': 1}, 'config': {'type': 'object', 'required': [], 'properties': {'minSamples': {'type': 'integer', 'default': 30, 'maximum': 500, 'minimum': 2}, 'monthlyTasks': {'type': 'integer', 'maximum': 1000000, 'minimum': 1, 'description': 'Baseline logical tasks launched per month; the engine requires exactly one workflow if supplied.'}, 'minSuccessRate': {'type': 'number', 'default': 0.95, 'maximum': 1, 'minimum': 0}, 'maxP95LatencyMs': {'type': 'number', 'maximum': 86400000000, 'minimum': 0}, 'maxSuccessRateDrop': {'type': 'number', 'default': 0.02, 'maximum': 1, 'minimum': 0}}, 'additionalProperties': False}}, 'description': 'Recorded attempts, not prompts or secrets. Identical rows count as separate attempts. All three analysis tools accept this same input. The runtime validator additionally enforces six-decimal micro-USD precision, the same task_id belonging to one workflow, one workflow when monthlyTasks is given, and UTF-16 length limits. HTTP body limit: 512000 UTF-8 bytes.', 'additionalProperties': False}
输出模式
{'type': 'object', 'required': ['schema_version', 'config', 'workflows'], 'properties': {'config': {'type': 'object', 'required': ['minSamples', 'minSuccessRate', 'maxSuccessRateDrop'], 'properties': {'minSamples': {'type': 'integer', 'default': 30, 'maximum': 500, 'minimum': 2}, 'monthlyTasks': {'type': 'integer', 'maximum': 1000000, 'minimum': 1, 'description': 'Baseline logical tasks launched per month; the engine requires exactly one workflow if supplied.'}, 'minSuccessRate': {'type': 'number', 'default': 0.95, 'maximum': 1, 'minimum': 0}, 'maxP95LatencyMs': {'type': 'number', 'maximum': 86400000000, 'minimum': 0}, 'maxSuccessRateDrop': {'type': 'number', 'default': 0.02, 'maximum': 1, 'minimum': 0}}, 'additionalProperties': True}, 'workflows': {'type': 'array', 'items': {'type': 'object', 'required': ['workflow', 'comparison', 'gates', 'decision', 'baseline_success', 'candidate_success', 'automatic_deployment_authorized'], 'properties': {'gates': {'type': 'object', 'required': ['both_variants', 'minimum_distinct_tasks_per_variant', 'same_task_set', 'observed_success_rate', 'recorded_latency', 'lower_cost_per_successful_task', 'experimental_bias_control'], 'properties': {'both_variants': {'enum': ['pass', 'fail', 'unknown', 'not_requested'], 'type': 'string'}, 'same_task_set': {'enum': ['pass', 'fail', 'unknown', 'not_requested'], 'type': 'string'}, 'recorded_latency': {'enum': ['pass', 'fail', 'unknown', 'not_requested'], 'type': 'string'}, 'observed_success_rate': {'enum': ['pass', 'fail', 'unknown', 'not_requested'], 'type': 'string'}, 'experimental_bias_control': {'type': 'string', 'const': 'unknown'}, 'lower_cost_per_successful_task': {'enum': ['pass', 'fail', 'unknown', 'not_requested'], 'type': 'string'}, 'minimum_distinct_tasks_per_variant': {'enum': ['pass', 'fail', 'unknown', 'not_requested'], 'type': 'string'}}, 'additionalProperties': True}, 'decision': {'enum': ['missing_comparison', 'collect_more_data', 'quality_regression', 'latency_data_required', 'latency_regression', 'no_economic_advantage', 'candidate_for_controlled_trial'], 'type': 'string'}, 'workflow': {'type': 'string', 'pattern': '^(?!\\s)(?![\\s\\S]*\\s$)[^\\u0000-\\u001F\\u007F]+$', 'maxLength': 80, 'minLength': 1, 'description': 'Nonempty, no control characters or surrounding whitespace. The engine additionally enforces at most 80 UTF-16 code units.'}, 'comparison': {'type': 'object', 'required': ['matched_task_ids', 'baseline_only_tasks', 'candidate_only_tasks', 'same_task_set'], 'properties': {'same_task_set': {'type': 'boolean'}, 'matched_task_ids': {'type': 'integer', 'maximum': 1000, 'minimum': 0}, 'baseline_only_tasks': {'type': 'integer', 'maximum': 1000, 'minimum': 0}, 'candidate_only_tasks': {'type': 'integer', 'maximum': 1000, 'minimum': 0}}, 'additionalProperties': True}, 'baseline_success': {'anyOf': [{'type': 'number', 'maximum': 1, 'minimum': 0}, {'type': 'null'}]}, 'candidate_success': {'anyOf': [{'type': 'number', 'maximum': 1, 'minimum': 0}, {'type': 'null'}]}, 'automatic_deployment_authorized': {'type': 'boolean', 'const': False}}, 'additionalProperties': True}, 'maxItems': 1000, 'minItems': 1}, 'schema_version': {'type': 'string', 'const': '1.0.0'}}, 'additionalProperties': True}
get_catalog
ALPNAI service catalog
Discover cost, latency and quality analysis APIs, their inputs, outputs, free reproducible example, authentication and current payment availability. No payment or budget debit.
只读 幂等
输入模式
{'type': 'object', 'properties': {}, 'additionalProperties': False}
get_free_sample
OpenAI source sample
Read a dated primary-source sample about OpenAI. Not real-time or exhaustive.
只读 幂等
输入模式
{'type': 'object', 'properties': {}, 'additionalProperties': False}
get_order
ALPNAI order status and delivery
Follow one existing commercial order owned by the authenticated agent, including after commerce is paused. May record a finalized blockchain receipt or release an expired, never-submitted reservation. Does not create an order, authorize spending or submit a payment. Pending results provide the same order ID and Retry-After; repeat get_order, never purchase again. Requires only the existing agent key.
可访问外部资源 幂等
输入模式
{'type': 'object', 'required': ['order_id'], 'properties': {'order_id': {'type': 'string', 'pattern': '^[-A-Za-z0-9]{8,80}$', 'description': 'The original order_id returned by the purchase.'}}, 'additionalProperties': False}
purchase_changes
Change Set purchase
Get Change Set for 0.05 USDC. Default mode sandbox creates a test receipt and debits only the test budget. Explicit mode live uses x402 only when commerce, owner mandate and billing eligibility are enabled. An unpaid result contains PaymentRequired in structuredContent and content. Retry the same tool and idempotency key with the signed PaymentPayload in params._meta["x402/payment"]. Confirmed settlement is returned in result._meta["x402/payment-response"]. For a pending order, call get_order with the original order_id; do not submit another payment. REST continuation and PAYMENT-SIGNATURE headers remain supported. Never send a private key.
可能执行破坏性操作 可访问外部资源 幂等
输入模式
{'type': 'object', 'required': ['idempotency_key'], 'properties': {'mode': {'enum': ['sandbox', 'live'], 'type': 'string', 'default': 'sandbox', 'description': 'Sandbox is the default. Live explicitly requests the existing authorized x402 purchase flow.'}, 'since': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'mandate_id': {'type': 'string', 'pattern': '^[-a-zA-Z0-9]{8,80}$', 'description': 'Owner-authorized commercial mandate ID. Alternatively send X-AlpNAI-Mandate in the MCP request headers.'}, 'idempotency_key': {'type': 'string', 'pattern': '^[A-Za-z0-9_-]{8,100}$'}}, 'additionalProperties': False}
purchase_evidence
Evidence Pack purchase
Get Evidence Pack for 0.25 USDC. Default mode sandbox creates a test receipt and debits only the test budget. Explicit mode live uses x402 only when commerce, owner mandate and billing eligibility are enabled. An unpaid result contains PaymentRequired in structuredContent and content. Retry the same tool and idempotency key with the signed PaymentPayload in params._meta["x402/payment"]. Confirmed settlement is returned in result._meta["x402/payment-response"]. For a pending order, call get_order with the original order_id; do not submit another payment. REST continuation and PAYMENT-SIGNATURE headers remain supported. Never send a private key.
可能执行破坏性操作 可访问外部资源 幂等
输入模式
{'type': 'object', 'required': ['idempotency_key'], 'properties': {'mode': {'enum': ['sandbox', 'live'], 'type': 'string', 'default': 'sandbox', 'description': 'Sandbox is the default. Live explicitly requests the existing authorized x402 purchase flow.'}, 'since': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'mandate_id': {'type': 'string', 'pattern': '^[-a-zA-Z0-9]{8,80}$', 'description': 'Owner-authorized commercial mandate ID. Alternatively send X-AlpNAI-Mandate in the MCP request headers.'}, 'idempotency_key': {'type': 'string', 'pattern': '^[A-Za-z0-9_-]{8,100}$'}}, 'additionalProperties': False}
purchase_snapshot
Snapshot purchase
Get Snapshot for 0.01 USDC. Default mode sandbox creates a test receipt and debits only the test budget. Explicit mode live uses x402 only when commerce, owner mandate and billing eligibility are enabled. An unpaid result contains PaymentRequired in structuredContent and content. Retry the same tool and idempotency key with the signed PaymentPayload in params._meta["x402/payment"]. Confirmed settlement is returned in result._meta["x402/payment-response"]. For a pending order, call get_order with the original order_id; do not submit another payment. REST continuation and PAYMENT-SIGNATURE headers remain supported. Never send a private key.
可能执行破坏性操作 可访问外部资源 幂等
输入模式
{'type': 'object', 'required': ['idempotency_key'], 'properties': {'mode': {'enum': ['sandbox', 'live'], 'type': 'string', 'default': 'sandbox', 'description': 'Sandbox is the default. Live explicitly requests the existing authorized x402 purchase flow.'}, 'since': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'mandate_id': {'type': 'string', 'pattern': '^[-a-zA-Z0-9]{8,80}$', 'description': 'Owner-authorized commercial mandate ID. Alternatively send X-AlpNAI-Mandate in the MCP request headers.'}, 'idempotency_key': {'type': 'string', 'pattern': '^[A-Za-z0-9_-]{8,100}$'}}, 'additionalProperties': False}
save_project_report
Save an agent performance report
Compute and save an aggregate performance report in the fixed Projects destination authorized by the account owner. Uses the existing free or paid report allowance. Requires an active agent key and explicit owner write permission. Reuse request_id with identical content to retry within the same permission grant. No report reading, deletion, subscription or payment authorization. Send measurements without secrets.
幂等
输入模式
{'type': 'object', 'required': ['request_id', 'title', 'input'], 'properties': {'input': {'type': 'object', 'title': 'ALPNAI recorded agent attempts', 'required': ['runs'], 'properties': {'runs': {'type': 'array', 'items': {'type': 'object', 'required': ['task_id', 'workflow', 'variant', 'cost_usd', 'success'], 'properties': {'success': {'type': 'boolean'}, 'task_id': {'type': 'string', 'pattern': '^(?!\\s)(?![\\s\\S]*\\s$)[^\\u0000-\\u001F\\u007F]+$', 'maxLength': 128, 'minLength': 1, 'description': 'Nonempty, no control characters or surrounding whitespace. The engine additionally enforces at most 128 UTF-16 code units.'}, 'variant': {'enum': ['baseline', 'candidate'], 'type': 'string'}, 'cost_usd': {'type': 'number', 'maximum': 10000, 'minimum': 0, 'description': 'USD cost of this attempt. At most six decimal places; the engine verifies whole micro-USD using floating-point tolerance. No multipleOf keyword is used, to avoid rejecting valid JSON decimals.'}, 'workflow': {'type': 'string', 'pattern': '^(?!\\s)(?![\\s\\S]*\\s$)[^\\u0000-\\u001F\\u007F]+$', 'maxLength': 80, 'minLength': 1, 'description': 'Nonempty, no control characters or surrounding whitespace. The engine additionally enforces at most 80 UTF-16 code units.'}, 'latency_ms': {'type': 'number', 'maximum': 86400000, 'minimum': 0, 'description': 'Recorded attempt duration in milliseconds; decimals are accepted. Omit if not measured.'}}, 'additionalProperties': False}, 'maxItems': 1000, 'minItems': 1}, 'config': {'type': 'object', 'required': [], 'properties': {'minSamples': {'type': 'integer', 'default': 30, 'maximum': 500, 'minimum': 2}, 'monthlyTasks': {'type': 'integer', 'maximum': 1000000, 'minimum': 1, 'description': 'Baseline logical tasks launched per month; the engine requires exactly one workflow if supplied.'}, 'minSuccessRate': {'type': 'number', 'default': 0.95, 'maximum': 1, 'minimum': 0}, 'maxP95LatencyMs': {'type': 'number', 'maximum': 86400000000, 'minimum': 0}, 'maxSuccessRateDrop': {'type': 'number', 'default': 0.02, 'maximum': 1, 'minimum': 0}}, 'additionalProperties': False}}, 'description': 'Recorded attempts, not prompts or secrets. Identical rows count as separate attempts. All three analysis tools accept this same input. The runtime validator additionally enforces six-decimal micro-USD precision, the same task_id belonging to one workflow, one workflow when monthlyTasks is given, and UTF-16 length limits. HTTP body limit: 512000 UTF-8 bytes.', 'additionalProperties': False}, 'title': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'request_id': {'type': 'string', 'pattern': '^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$'}}, 'additionalProperties': False}
已添加
purchase_evidence
2026年9月17日 12:41
已添加
purchase_changes
2026年9月17日 12:41
已添加
purchase_snapshot
2026年9月17日 12:41
已添加
get_order
2026年9月17日 12:41
已添加
save_project_report
2026年9月17日 12:41
已添加
check_agent_quality
2026年9月17日 12:41
已添加
analyze_agent_latency
2026年9月17日 12:41
已添加
audit_agent_costs
2026年9月17日 12:41
已添加
get_free_sample
2026年9月17日 12:41
已添加
get_catalog
2026年9月17日 12:41