このMCPでできること
Provides a catalog and execution layer for scraping and data APIs, including schema inspection, pricing quotes, durable requests, and cached results.
ツール
入力スキーマ
{'type': 'object', 'required': ['sku_id', 'context'], 'properties': {'sku_id': {'type': 'string', 'description': 'the API SKU slug to describe'}, 'context': {'type': 'string', 'description': 'Explain why you are calling this tool and how it fits into the user\'s overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person (\'I\', \'we\', \'you\') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): "Searching across the organization\'s repositories to find all open issues related to performance complaints and latency issues for team prioritization."'}}}
出力スキーマ
{'type': 'object', 'required': ['scraper'], 'properties': {'scraper': {'type': 'object', 'required': ['id', 'slug', 'category', 'name', 'method', 'path', 'provider', 'execution', 'pricing', 'failover', 'description', 'lanes', 'latency', 'tryEligible'], 'properties': {'id': {'type': 'string'}, 'name': {'type': 'string'}, 'path': {'type': 'string'}, 'slug': {'type': 'string'}, 'heavy': {'type': 'boolean'}, 'lanes': {'type': ['null', 'array'], 'items': {'type': 'object', 'required': ['pricing', 'source'], 'properties': {'fields': {'type': ['null', 'array'], 'items': {'type': 'string'}}, 'health': {'type': ['null', 'object'], 'required': ['window', 'uptimePct', 'latencyP50Ms', 'uptimeSample', 'latencySample', 'requests', 'servedRequests'], 'properties': {'window': {'type': 'string'}, 'requests': {'type': 'integer'}, 'uptimePct': {'type': 'number'}, 'latencyP50Ms': {'type': 'integer'}, 'uptimeSample': {'type': 'integer'}, 'latencySample': {'type': 'integer'}, 'servedRequests': {'type': 'integer'}}, 'additionalProperties': False}, 'source': {'type': 'object', 'required': ['id', 'name', 'kind', 'artworkKey'], 'properties': {'id': {'type': 'string'}, 'kind': {'type': 'string'}, 'name': {'type': 'string'}, 'artworkKey': {'type': 'string'}}, 'additionalProperties': False}, 'pricing': {'type': 'object', 'required': ['model', 'unit', 'maxUsd', 'maxPer1kUsd'], 'properties': {'unit': {'type': 'string'}, 'model': {'type': 'string'}, 'addons': {'type': ['null', 'array'], 'items': {'type': 'object', 'required': ['id', 'label', 'field', 'usd'], 'properties': {'id': {'type': 'string'}, 'usd': {'type': 'number'}, 'field': {'type': 'string'}, 'label': {'type': 'string'}}, 'additionalProperties': False}}, 'maxUsd': {'type': 'number'}, 'baseUsd': {'type': ['null', 'number']}, 'perUnitUsd': {'type': ['null', 'number']}, 'maxPer1kUsd': {'type': 'number'}}, 'additionalProperties': False}}, 'additionalProperties': False}}, 'method': {'type': 'string'}, 'latency': {'type': ['null', 'object'], 'required': ['window', 'p50Ms', 'p95Ms', 'p99Ms', 'sample', 'basis'], 'properties': {'basis': {'type': 'string'}, 'p50Ms': {'type': 'integer'}, 'p95Ms': {'type': 'integer'}, 'p99Ms': {'type': 'integer'}, 'sample': {'type': 'integer'}, 'window': {'type': 'string'}}, 'additionalProperties': False}, 'pricing': {'type': 'object', 'required': ['from', 'failoverMaxUsd', 'failoverMaxPer1kUsd'], 'properties': {'from': {'type': 'object', 'required': ['model', 'unit', 'maxUsd', 'maxPer1kUsd'], 'properties': {'unit': {'type': 'string'}, 'model': {'type': 'string'}, 'addons': {'type': ['null', 'array'], 'items': {'type': 'object', 'required': ['id', 'label', 'field', 'usd'], 'properties': {'id': {'type': 'string'}, 'usd': {'type': 'number'}, 'field': {'type': 'string'}, 'label': {'type': 'string'}}, 'additionalProperties': False}}, 'maxUsd': {'type': 'number'}, 'baseUsd': {'type': ['null', 'number']}, 'perUnitUsd': {'type': ['null', 'number']}, 'maxPer1kUsd': {'type': 'number'}}, 'additionalProperties': False}, 'failoverMaxUsd': {'type': 'number'}, 'failoverMaxPer1kUsd': {'type': 'number'}}, 'additionalProperties': False}, 'category': {'type': 'string'}, 'failover': {'type': 'boolean'}, 'provider': {'type': 'string'}, 'execution': {'type': 'object', 'required': ['mode'], 'properties': {'mode': {'type': 'string'}}, 'additionalProperties': False}, 'description': {'type': 'string'}, 'inputSchema': True, 'tryEligible': {'type': 'boolean'}, 'tryMaxItems': {'type': ['null', 'integer']}, 'outputSchema': True, 'excludesCallerDelay': {'type': 'boolean'}}, 'description': 'the API definition with input/output schemas', 'additionalProperties': False}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['context'], 'properties': {'context': {'type': 'string', 'description': 'Explain why you are calling this tool and how it fits into the user\'s overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person (\'I\', \'we\', \'you\') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): "Searching across the organization\'s repositories to find all open issues related to performance complaints and latency issues for team prioritization."'}}}
出力スキーマ
{'type': 'object', 'required': ['balanceUsd'], 'properties': {'balanceUsd': {'type': 'number', 'description': 'remaining wallet balance for this API key, in USD'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['request_id', 'context'], 'properties': {'context': {'type': 'string', 'description': 'Explain why you are calling this tool and how it fits into the user\'s overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person (\'I\', \'we\', \'you\') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): "Searching across the organization\'s repositories to find all open issues related to performance complaints and latency issues for team prioritization."'}, 'request_id': {'type': 'string', 'description': 'durable request identifier returned by run_api'}}}
出力スキーマ
{'type': 'object', 'required': ['output', 'provider', 'costUsd', 'items', 'replayed'], 'properties': {'hint': {'type': 'string', 'description': 'optional nudge. \'large_result:\' suggests fields/max_items/summary to keep future responses out of your context. \'paging_unavailable:\' means this result came from a source that cannot return a nextCursor, so it may be INCOMPLETE and you cannot page further - re-run with requireFields ["nextCursor"] (may cost more per request) if you need the full list'}, 'error': {'type': ['null', 'object'], 'required': ['code'], 'properties': {'code': {'type': 'string', 'description': 'safe AnyAPI error code'}}, 'description': 'safe AnyAPI failure code when durable work failed', 'additionalProperties': False}, 'items': {'type': 'integer', 'description': 'number of result rows returned. For per-result SKUs the per-item cost is charged against this; for input-priced SKUs (perItemUnit != result) the charge is per submitted input, independent of this count'}, 'output': {'description': 'normalized output payload'}, 'source': {'type': ['null', 'object'], 'required': ['id', 'name', 'kind', 'artworkKey'], 'properties': {'id': {'type': 'string'}, 'kind': {'type': 'string'}, 'name': {'type': 'string'}, 'artworkKey': {'type': 'string'}}, 'description': "the source that served this run: pass its id back in 'source' to prefer it again, or in 'ignoreSources' to avoid it. Absent when no source identity applies", 'additionalProperties': False}, 'status': {'type': 'string', 'description': 'durable request status: queued, running, succeeded, failed, or expired'}, 'costUsd': {'type': 'number', 'description': 'amount charged to the wallet in USD'}, 'jqError': {'type': 'string', 'description': 'present only when a jq expression failed; output then holds the full unshaped result and this explains why the reshape did not apply'}, 'provider': {'type': 'string', 'description': 'the provider serving the request (AnyAPI)'}, 'replayed': {'type': 'boolean', 'description': 'true when this response replays an identical earlier call (same API, same input) from the last few minutes instead of running again: nothing new was executed and costUsd restates the original charge, it was NOT charged a second time'}, 'resultId': {'type': 'string', 'description': 'opaque handle to the full result, cached ~15 min; pass it to read_result to dig deeper for free (no re-run, no charge). Absent when the result was too large to cache'}, 'requestId': {'type': 'string', 'description': 'durable request identifier; pass it to get_request to resume without repeating the paid POST'}, 'nextAction': {'type': ['null', 'object'], 'required': ['tool', 'requestId', 'retryAfterSeconds'], 'properties': {'tool': {'type': 'string', 'description': 'MCP tool to call next'}, 'requestId': {'type': 'string', 'description': 'request_id argument for the next tool call'}, 'retryAfterSeconds': {'type': 'integer', 'description': 'minimum delay before polling again'}}, 'description': 'machine-actionable resume instruction present while durable work is pending', 'additionalProperties': False}, 'serviceOutcome': {'type': 'string', 'description': 'end-to-end AnyAPI service outcome when known'}, 'settlementState': {'type': 'string', 'description': 'payment settlement state when known; independent of durable request status'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['context'], 'properties': {'context': {'type': 'string', 'description': 'Explain why you are calling this tool and how it fits into the user\'s overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person (\'I\', \'we\', \'you\') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): "Searching across the organization\'s repositories to find all open issues related to performance complaints and latency issues for team prioritization."'}, 'category': {'type': 'string', 'description': 'optional category slug to filter by'}}}
出力スキーマ
{'type': 'object', 'required': ['scrapers'], 'properties': {'scrapers': {'type': ['null', 'array'], 'items': {'type': 'object', 'required': ['id', 'slug', 'category', 'name', 'method', 'path', 'provider', 'execution', 'pricing', 'failover'], 'properties': {'id': {'type': 'string'}, 'name': {'type': 'string'}, 'path': {'type': 'string'}, 'slug': {'type': 'string'}, 'heavy': {'type': 'boolean'}, 'method': {'type': 'string'}, 'pricing': {'type': 'object', 'required': ['from', 'failoverMaxUsd', 'failoverMaxPer1kUsd'], 'properties': {'from': {'type': 'object', 'required': ['model', 'unit', 'maxUsd', 'maxPer1kUsd'], 'properties': {'unit': {'type': 'string'}, 'model': {'type': 'string'}, 'addons': {'type': ['null', 'array'], 'items': {'type': 'object', 'required': ['id', 'label', 'field', 'usd'], 'properties': {'id': {'type': 'string'}, 'usd': {'type': 'number'}, 'field': {'type': 'string'}, 'label': {'type': 'string'}}, 'additionalProperties': False}}, 'maxUsd': {'type': 'number'}, 'baseUsd': {'type': ['null', 'number']}, 'perUnitUsd': {'type': ['null', 'number']}, 'maxPer1kUsd': {'type': 'number'}}, 'additionalProperties': False}, 'failoverMaxUsd': {'type': 'number'}, 'failoverMaxPer1kUsd': {'type': 'number'}}, 'additionalProperties': False}, 'category': {'type': 'string'}, 'failover': {'type': 'boolean'}, 'provider': {'type': 'string'}, 'execution': {'type': 'object', 'required': ['mode'], 'properties': {'mode': {'type': 'string'}}, 'additionalProperties': False}, 'excludesCallerDelay': {'type': 'boolean'}}, 'additionalProperties': False}, 'description': 'matching APIs (lightweight summaries: no description or schemas)'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['sku_id', 'input', 'context'], 'properties': {'input': {'type': 'object', 'description': 'the exact input payload you plan to pass to run_api; the quote resolves pricing the same way the run will', 'additionalProperties': True}, 'sku_id': {'type': 'string', 'description': 'the API SKU slug to price'}, 'context': {'type': 'string', 'description': 'Explain why you are calling this tool and how it fits into the user\'s overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person (\'I\', \'we\', \'you\') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): "Searching across the organization\'s repositories to find all open issues related to performance complaints and latency issues for team prioritization."'}}}
出力スキーマ
{'type': 'object', 'required': ['maxCostUsd', 'minCostUsd', 'baseUsd', 'perItemUsd', 'exact', 'pricing'], 'properties': {'exact': {'type': 'boolean', 'description': 'true when the price is exact (minCostUsd == maxCostUsd): a flat SKU or a sealed page'}, 'baseUsd': {'type': 'number', 'description': 'fixed cost per call in USD, charged regardless of count'}, 'pricing': {'type': 'string', 'description': 'a one-line human explanation of how this call is priced'}, 'maxCostUsd': {'type': 'number', 'description': 'the most this call can charge - the reserve held before running'}, 'minCostUsd': {'type': 'number', 'description': 'the likely charge - the cheapest route serves first'}, 'perItemUsd': {'type': 'number', 'description': 'marginal cost in USD per billable unit (see perItemUnit); 0 for a flat SKU'}, 'perItemUnit': {'type': 'string', 'description': "the unit perItemUsd is charged per: 'result' (default) or an input unit like 'username' for input-priced SKUs"}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['result_id', 'context'], 'properties': {'jq': {'type': 'string', 'description': "optional: a jq expression to reshape the result; its output replaces 'output'. Example: '.data | {title, description, md: .markdown[:3500]}'. Sandboxed 250ms/2MB budget"}, 'fields': {'type': ['null', 'array'], 'items': {'type': 'string'}, 'description': "optional: keep only these keys on each result item (dotted paths like 'author.name' descend into nested objects)"}, 'context': {'type': 'string', 'description': 'Explain why you are calling this tool and how it fits into the user\'s overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person (\'I\', \'we\', \'you\') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): "Searching across the organization\'s repositories to find all open issues related to performance complaints and latency issues for team prioritization."'}, 'summary': {'type': 'boolean', 'description': 'optional: return only a structural outline (top-level keys, item counts, per-field byte sizes) instead of the full data'}, 'max_items': {'type': ['null', 'integer'], 'description': 'optional: cap the number of result items returned; a _truncated note reports how many were withheld'}, 'result_id': {'type': 'string', 'description': 'the resultId returned by a prior run_api call (cached ~15 min)'}}}
出力スキーマ
{'type': 'object', 'required': ['output', 'provider', 'costUsd', 'items', 'replayed'], 'properties': {'hint': {'type': 'string', 'description': 'optional nudge. \'large_result:\' suggests fields/max_items/summary to keep future responses out of your context. \'paging_unavailable:\' means this result came from a source that cannot return a nextCursor, so it may be INCOMPLETE and you cannot page further - re-run with requireFields ["nextCursor"] (may cost more per request) if you need the full list'}, 'error': {'type': ['null', 'object'], 'required': ['code'], 'properties': {'code': {'type': 'string', 'description': 'safe AnyAPI error code'}}, 'description': 'safe AnyAPI failure code when durable work failed', 'additionalProperties': False}, 'items': {'type': 'integer', 'description': 'number of result rows returned. For per-result SKUs the per-item cost is charged against this; for input-priced SKUs (perItemUnit != result) the charge is per submitted input, independent of this count'}, 'output': {'description': 'normalized output payload'}, 'source': {'type': ['null', 'object'], 'required': ['id', 'name', 'kind', 'artworkKey'], 'properties': {'id': {'type': 'string'}, 'kind': {'type': 'string'}, 'name': {'type': 'string'}, 'artworkKey': {'type': 'string'}}, 'description': "the source that served this run: pass its id back in 'source' to prefer it again, or in 'ignoreSources' to avoid it. Absent when no source identity applies", 'additionalProperties': False}, 'status': {'type': 'string', 'description': 'durable request status: queued, running, succeeded, failed, or expired'}, 'costUsd': {'type': 'number', 'description': 'amount charged to the wallet in USD'}, 'jqError': {'type': 'string', 'description': 'present only when a jq expression failed; output then holds the full unshaped result and this explains why the reshape did not apply'}, 'provider': {'type': 'string', 'description': 'the provider serving the request (AnyAPI)'}, 'replayed': {'type': 'boolean', 'description': 'true when this response replays an identical earlier call (same API, same input) from the last few minutes instead of running again: nothing new was executed and costUsd restates the original charge, it was NOT charged a second time'}, 'resultId': {'type': 'string', 'description': 'opaque handle to the full result, cached ~15 min; pass it to read_result to dig deeper for free (no re-run, no charge). Absent when the result was too large to cache'}, 'requestId': {'type': 'string', 'description': 'durable request identifier; pass it to get_request to resume without repeating the paid POST'}, 'nextAction': {'type': ['null', 'object'], 'required': ['tool', 'requestId', 'retryAfterSeconds'], 'properties': {'tool': {'type': 'string', 'description': 'MCP tool to call next'}, 'requestId': {'type': 'string', 'description': 'request_id argument for the next tool call'}, 'retryAfterSeconds': {'type': 'integer', 'description': 'minimum delay before polling again'}}, 'description': 'machine-actionable resume instruction present while durable work is pending', 'additionalProperties': False}, 'serviceOutcome': {'type': 'string', 'description': 'end-to-end AnyAPI service outcome when known'}, 'settlementState': {'type': 'string', 'description': 'payment settlement state when known; independent of durable request status'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['summary', 'context'], 'properties': {'sku': {'type': 'string', 'description': "optional: the sku_id this is about, e.g. 'instagram.reels_search'"}, 'contact': {'type': 'string', 'description': 'optional: an email address to reply to. Supply one if you are on a trial key, since a trial has no account we can reach'}, 'context': {'type': 'string', 'description': 'Explain why you are calling this tool and how it fits into the user\'s overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person (\'I\', \'we\', \'you\') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): "Searching across the organization\'s repositories to find all open issues related to performance complaints and latency issues for team prioritization."'}, 'details': {'type': 'string', 'description': 'optional: what you expected, what you got, and anything you already tried'}, 'summary': {'type': 'string', 'description': 'one line saying what went wrong or what you want to tell us'}, 'request_id': {'type': 'string', 'description': 'optional: the requestId or resultId from the run that went wrong. This is the single most useful field: it reaches the stored run, its attempts, and any upstream error body, so you do not need to paste the payload'}}}
出力スキーマ
{'type': 'object', 'required': ['id', 'received'], 'properties': {'id': {'type': 'string', 'description': 'the stored report id; quote it if you contact support about this'}, 'received': {'type': 'boolean', 'description': 'true when the report is stored'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['sku_id', 'input', 'context'], 'properties': {'jq': {'type': 'string', 'description': "optional: a jq expression to reshape the result; its output replaces 'output' (multiple outputs collect into an array). Example: '.data | {title, description, md: .markdown[:3500]}'. Sandboxed 250ms/2MB budget; on failure the full result is returned with jqError. Does not change cost"}, 'input': {'type': 'object', 'description': 'normalized input payload matching the API input schema', 'additionalProperties': True}, 'fields': {'type': ['null', 'array'], 'items': {'type': 'string'}, 'description': "optional: keep only these keys on each result item (dotted paths like 'author.name' descend into nested objects). Shrinks the response without changing cost"}, 'sku_id': {'type': 'string', 'description': 'the API SKU slug to execute'}, 'context': {'type': 'string', 'description': 'Explain why you are calling this tool and how it fits into the user\'s overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person (\'I\', \'we\', \'you\') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): "Searching across the organization\'s repositories to find all open issues related to performance complaints and latency issues for team prioritization."'}, 'summary': {'type': 'boolean', 'description': 'optional: return only a structural outline (top-level keys, item counts, and per-field byte sizes) instead of the full data. Does not change cost'}, 'max_items': {'type': ['null', 'integer'], 'description': 'optional: cap the number of result items returned; a _truncated note reports how many were withheld. Does not change cost'}}}
出力スキーマ
{'type': 'object', 'required': ['output', 'provider', 'costUsd', 'items', 'replayed'], 'properties': {'hint': {'type': 'string', 'description': 'optional nudge. \'large_result:\' suggests fields/max_items/summary to keep future responses out of your context. \'paging_unavailable:\' means this result came from a source that cannot return a nextCursor, so it may be INCOMPLETE and you cannot page further - re-run with requireFields ["nextCursor"] (may cost more per request) if you need the full list'}, 'error': {'type': ['null', 'object'], 'required': ['code'], 'properties': {'code': {'type': 'string', 'description': 'safe AnyAPI error code'}}, 'description': 'safe AnyAPI failure code when durable work failed', 'additionalProperties': False}, 'items': {'type': 'integer', 'description': 'number of result rows returned. For per-result SKUs the per-item cost is charged against this; for input-priced SKUs (perItemUnit != result) the charge is per submitted input, independent of this count'}, 'output': {'description': 'normalized output payload'}, 'source': {'type': ['null', 'object'], 'required': ['id', 'name', 'kind', 'artworkKey'], 'properties': {'id': {'type': 'string'}, 'kind': {'type': 'string'}, 'name': {'type': 'string'}, 'artworkKey': {'type': 'string'}}, 'description': "the source that served this run: pass its id back in 'source' to prefer it again, or in 'ignoreSources' to avoid it. Absent when no source identity applies", 'additionalProperties': False}, 'status': {'type': 'string', 'description': 'durable request status: queued, running, succeeded, failed, or expired'}, 'costUsd': {'type': 'number', 'description': 'amount charged to the wallet in USD'}, 'jqError': {'type': 'string', 'description': 'present only when a jq expression failed; output then holds the full unshaped result and this explains why the reshape did not apply'}, 'provider': {'type': 'string', 'description': 'the provider serving the request (AnyAPI)'}, 'replayed': {'type': 'boolean', 'description': 'true when this response replays an identical earlier call (same API, same input) from the last few minutes instead of running again: nothing new was executed and costUsd restates the original charge, it was NOT charged a second time'}, 'resultId': {'type': 'string', 'description': 'opaque handle to the full result, cached ~15 min; pass it to read_result to dig deeper for free (no re-run, no charge). Absent when the result was too large to cache'}, 'requestId': {'type': 'string', 'description': 'durable request identifier; pass it to get_request to resume without repeating the paid POST'}, 'nextAction': {'type': ['null', 'object'], 'required': ['tool', 'requestId', 'retryAfterSeconds'], 'properties': {'tool': {'type': 'string', 'description': 'MCP tool to call next'}, 'requestId': {'type': 'string', 'description': 'request_id argument for the next tool call'}, 'retryAfterSeconds': {'type': 'integer', 'description': 'minimum delay before polling again'}}, 'description': 'machine-actionable resume instruction present while durable work is pending', 'additionalProperties': False}, 'serviceOutcome': {'type': 'string', 'description': 'end-to-end AnyAPI service outcome when known'}, 'settlementState': {'type': 'string', 'description': 'payment settlement state when known; independent of durable request status'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['context'], 'properties': {'limit': {'type': ['null', 'integer'], 'description': 'optional cap on matches returned (default 25, maximum 50)'}, 'query': {'type': 'string', 'description': 'free-text search over API name, slug, and description; optional when category or platform is given'}, 'context': {'type': 'string', 'description': 'Explain why you are calling this tool and how it fits into the user\'s overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person (\'I\', \'we\', \'you\') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): "Searching across the organization\'s repositories to find all open issues related to performance complaints and latency issues for team prioritization."'}, 'category': {'type': 'string', 'description': 'optional category slug to narrow the search'}, 'platform': {'type': 'string', 'description': 'optional API slug prefix to narrow the search'}}}
出力スキーマ
{'type': 'object', 'required': ['results', 'total', 'ranking'], 'properties': {'total': {'type': 'integer'}, 'ranking': {'type': 'string'}, 'results': {'type': ['null', 'array'], 'items': {'type': 'object', 'required': ['id', 'slug', 'category', 'name', 'description', 'method', 'path', 'provider', 'execution', 'pricing', 'failover', 'relevance'], 'properties': {'id': {'type': 'string'}, 'name': {'type': 'string'}, 'path': {'type': 'string'}, 'slug': {'type': 'string'}, 'heavy': {'type': 'boolean'}, 'method': {'type': 'string'}, 'pricing': {'type': 'object', 'required': ['from', 'failoverMaxUsd', 'failoverMaxPer1kUsd'], 'properties': {'from': {'type': 'object', 'required': ['model', 'unit', 'maxUsd', 'maxPer1kUsd'], 'properties': {'unit': {'type': 'string'}, 'model': {'type': 'string'}, 'addons': {'type': ['null', 'array'], 'items': {'type': 'object', 'required': ['id', 'label', 'field', 'usd'], 'properties': {'id': {'type': 'string'}, 'usd': {'type': 'number'}, 'field': {'type': 'string'}, 'label': {'type': 'string'}}, 'additionalProperties': False}}, 'maxUsd': {'type': 'number'}, 'baseUsd': {'type': ['null', 'number']}, 'perUnitUsd': {'type': ['null', 'number']}, 'maxPer1kUsd': {'type': 'number'}}, 'additionalProperties': False}, 'failoverMaxUsd': {'type': 'number'}, 'failoverMaxPer1kUsd': {'type': 'number'}}, 'additionalProperties': False}, 'category': {'type': 'string'}, 'failover': {'type': 'boolean'}, 'provider': {'type': 'string'}, 'execution': {'type': 'object', 'required': ['mode'], 'properties': {'mode': {'type': 'string'}}, 'additionalProperties': False}, 'relevance': {'type': 'number', 'description': 'relative relevance in (0,1], 1.0 = the best match'}, 'description': {'type': 'string'}, 'excludesCallerDelay': {'type': 'boolean'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['summary', 'context'], 'properties': {'sku': {'type': 'string', 'description': "optional: the sku_id this is about, e.g. 'instagram.reels_search'"}, 'contact': {'type': 'string', 'description': 'optional: an email address to reply to. Supply one if you are on a trial key, since a trial has no account we can reach'}, 'context': {'type': 'string', 'description': 'Explain why you are calling this tool and how it fits into the user\'s overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person (\'I\', \'we\', \'you\') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): "Searching across the organization\'s repositories to find all open issues related to performance complaints and latency issues for team prioritization."'}, 'details': {'type': 'string', 'description': 'optional: what you expected, what you got, and anything you already tried'}, 'summary': {'type': 'string', 'description': 'one line saying what went wrong or what you want to tell us'}, 'request_id': {'type': 'string', 'description': 'optional: the requestId or resultId from the run that went wrong. This is the single most useful field: it reaches the stored run, its attempts, and any upstream error body, so you do not need to paste the payload'}}}
出力スキーマ
{'type': 'object', 'required': ['id', 'received'], 'properties': {'id': {'type': 'string', 'description': 'the stored report id; quote it if you contact support about this'}, 'received': {'type': 'boolean', 'description': 'true when the report is stored'}}, 'additionalProperties': False}
最近のツール変更
類似のMCPサーバー
Thousand API
Provides deterministic data conversion, validation, JSON transformation, statistical calculations, date and schedule utilities, i…
HubVibe: Pay-per-Call Tools for AI Agents: Web Search, Email Verify, KYC, Stocks, Crypto, News, Data
Offers paid utilities for web audits, HTTP fetching and extraction, BigQuery analysis, LLM processing, code execution, blockchain…
Blixtworks
Offers pay-per-call utilities for text, image processing and analysis, data conversion, validation, web inspection, cryptography,…
Qiniso
Provides deterministic formatting, parsing, holiday and tax lookups, address handling, and checksum or structure validation for i…
Scalix Cloud
Provides managed databases, SQL tools, container builds, persistent Linux machines, domains, scheduled functions, storage, and pr…
RationalBloks
Creates, deploys, manages, and searches schema-based REST API projects and Neo4j knowledge graphs across staging and production e…
RationalBloks
Creates, deploys, manages, and queries REST API and Neo4j graph projects from JSON schemas, including graph data modeling, versio…
Wakatime
Provides WakaTime coding-activity data, including durations, projects, commits, goals, heartbeats, editor usage, leaders, and use…