プライバシー設定

必須機能

セキュリティとサイトの基本機能に必要です。

常に有効

任意の利用状況解析

PostHogの利用状況解析を許可しますか?フッターでいつでも変更できます。

この公開サイトでのセッションリプレイも許可する

リプレイには公開ページと操作が表示され、入力内容や非公開コンテンツはマスクされます。Appのリプレイは別途選択します。

分析の有効化が必要です。ウェブサイトのリプレイは初期設定でオフです。

ブラウザーの分析設定でアカウントの分析が有効になることはありません。

検索は使用時のみ読み込みます。以下ですべてのカテゴリを閲覧できます。

MCPツール

リスニングの一致結果を探す

sosoapi_listening_results_query

ストリーム、状態、期間を指定して、現在の信頼できない一致結果を探します。利用不可のソーステキストは引き続き伏せられます。agent:research が必要です。

Markdownで読む

プロファイルと通信方式

プロファイル: full · 通信方式: stdio, http

coreまたはfullで表示ツールを選べますが権限は変わりません。ローカルアップロードはstdioのみでHTTPは非対応です。SOSOAPI_OUTPUT_SCHEMAS=1で検出時に出力スキーマを含めます。設定に関係なく構造化結果を返します。

権限と副作用

注釈はクライアントがツールを説明するためのものです。各呼び出しでは引き続き認証、ロール、リソースアクセス、機能権限を確認します。

{
  "readOnlyHint": true,
  "destructiveHint": false,
  "idempotentHint": true,
  "openWorldHint": true
}
  • /listening-api/results/query: agent:research · 現在許可されているリスニングデータ。索引済みの公開サンプルは部分的で、検証済みのアカウントへのメンションではありません

入力フィールド

必須とは、親オブジェクトと選択分岐内で必須という意味です。必須の子があっても任意の親は必須になりません。以下のルールとフィールド名は契約から転記しています。

入力フィールド
フィールド/分岐型/必須制約
$object親要素内で必須
  • additionalProperties: false
workspace_idstring親要素内で必須
  • format: "uuid"
cursorstring任意/項目
  • format: "uuid"
limitinteger任意/項目
  • minimum: 1
  • maximum: 50
stream_idstring親要素内で必須
  • format: "uuid"
sourcestring任意/項目
  • enum: ["hacker_news"]
handledboolean任意/項目—
archivedboolean任意/項目—
sincestring任意/項目
  • format: "date-time"
  • pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
untilstring任意/項目
  • format: "date-time"
  • pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
完全なJSON Schema
{
  "type": "object",
  "properties": {
    "workspace_id": {
      "type": "string",
      "format": "uuid"
    },
    "cursor": {
      "type": "string",
      "format": "uuid"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50
    },
    "stream_id": {
      "type": "string",
      "format": "uuid"
    },
    "source": {
      "type": "string",
      "enum": [
        "hacker_news"
      ]
    },
    "handled": {
      "type": "boolean"
    },
    "archived": {
      "type": "boolean"
    },
    "since": {
      "$ref": "#/$defs/s0"
    },
    "until": {
      "$ref": "#/$defs/s0"
    }
  },
  "required": [
    "workspace_id",
    "stream_id"
  ],
  "additionalProperties": false,
  "$defs": {
    "s0": {
      "type": "string",
      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
      "format": "date-time"
    }
  }
}

構造化された出力

このスキーマは、成功時のツール結果に含まれるstructuredContentを説明します。MCPレスポンスはcontentも含み、失敗時にisErrorを設定する場合があります。公開では、受理やテキスト応答を確認済みと扱わず、投稿の最終結果を取得してください。権限・再試行ルールはリンク先のAPI操作をご覧ください。

必須とは、親オブジェクトと選択分岐内で必須という意味です。必須の子があっても任意の親は必須になりません。以下のルールとフィールド名は契約から転記しています。

構造化された出力
フィールド/分岐型/必須制約
$object親要素内で必須
  • additionalProperties: false
itemsarray親要素内で必須
  • maxItems: 50
items[]object任意/項目
  • additionalProperties: false
items[].idstring親要素内で必須
  • format: "uuid"
items[].workspace_idstring親要素内で必須
  • format: "uuid"
items[].stream_idstring親要素内で必須
  • format: "uuid"
items[].run_idstring親要素内で必須
  • format: "uuid"
items[].revisioninteger親要素内で必須
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
items[].sourcestring親要素内で必須
  • const: "hacker_news"
items[].source_item_idstring親要素内で必須
  • pattern: "^[1-9][0-9]{0,15}$"
items[].canonical_urlstring親要素内で必須
  • pattern: "^https:\\/\\/news\\.ycombinator\\.com\\/item\\?id=[1-9][0-9]{0,15}$"
items[].titlestring | null親要素内で必須—
items[].titleanyOf 1string親要素内で必須
  • maxLength: 500
items[].titleanyOf 2null親要素内で必須—
items[].excerptstring | null親要素内で必須—
items[].excerptanyOf 1string親要素内で必須
  • maxLength: 4000
items[].excerptanyOf 2null親要素内で必須—
items[].authorstring | null親要素内で必須—
items[].authoranyOf 1string親要素内で必須
  • maxLength: 100
items[].authoranyOf 2null親要素内で必須—
items[].published_atstring | null親要素内で必須—
items[].published_atanyOf 1string親要素内で必須
  • format: "date-time"
  • pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
items[].published_atanyOf 2null親要素内で必須—
items[].retrieved_atstring親要素内で必須
  • format: "date-time"
  • pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
items[].source_checked_atstring親要素内で必須
  • format: "date-time"
  • pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
items[].expires_atstring親要素内で必須
  • format: "date-time"
  • pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
items[].availabilitystring親要素内で必須
  • enum: ["available","removed","expired","unavailable"]
items[].metricsobject親要素内で必須
  • additionalProperties: false
items[].metrics.scoreinteger | null親要素内で必須—
items[].metrics.scoreanyOf 1integer親要素内で必須
  • minimum: -9007199254740991
  • maximum: 9007199254740991
items[].metrics.scoreanyOf 2null親要素内で必須—
items[].metrics.repliesinteger | null親要素内で必須—
items[].metrics.repliesanyOf 1integer親要素内で必須
  • minimum: 0
  • maximum: 9007199254740991
items[].metrics.repliesanyOf 2null親要素内で必須—
items[].handledboolean親要素内で必須—
items[].archivedboolean親要素内で必須—
items[].match_kindstring親要素内で必須
  • const: "literal_query_match"
items[].coveragestring親要素内で必須
  • const: "partial_indexed_sample"
items[].sentimentnull親要素内で必須—
next_cursorstring | null親要素内で必須—
next_cursoranyOf 1string親要素内で必須
  • format: "uuid"
next_cursoranyOf 2null親要素内で必須—
完全なJSON Schema
{
  "type": "object",
  "properties": {
    "items": {
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "workspace_id": {
            "type": "string",
            "format": "uuid"
          },
          "stream_id": {
            "type": "string",
            "format": "uuid"
          },
          "run_id": {
            "type": "string",
            "format": "uuid"
          },
          "revision": {
            "type": "integer",
            "exclusiveMinimum": 0,
            "maximum": 9007199254740991
          },
          "source": {
            "type": "string",
            "const": "hacker_news"
          },
          "source_item_id": {
            "type": "string",
            "pattern": "^[1-9][0-9]{0,15}$"
          },
          "canonical_url": {
            "type": "string",
            "pattern": "^https:\\/\\/news\\.ycombinator\\.com\\/item\\?id=[1-9][0-9]{0,15}$"
          },
          "title": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 500
              },
              {
                "type": "null"
              }
            ]
          },
          "excerpt": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 4000
              },
              {
                "type": "null"
              }
            ]
          },
          "author": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 100
              },
              {
                "type": "null"
              }
            ]
          },
          "published_at": {
            "anyOf": [
              {
                "type": "string",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
                "format": "date-time"
              },
              {
                "type": "null"
              }
            ]
          },
          "retrieved_at": {
            "type": "string",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
            "format": "date-time"
          },
          "source_checked_at": {
            "type": "string",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
            "format": "date-time"
          },
          "expires_at": {
            "type": "string",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
            "format": "date-time"
          },
          "availability": {
            "type": "string",
            "enum": [
              "available",
              "removed",
              "expired",
              "unavailable"
            ]
          },
          "metrics": {
            "type": "object",
            "properties": {
              "score": {
                "anyOf": [
                  {
                    "type": "integer",
                    "minimum": -9007199254740991,
                    "maximum": 9007199254740991
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "replies": {
                "anyOf": [
                  {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 9007199254740991
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "score",
              "replies"
            ],
            "additionalProperties": false
          },
          "handled": {
            "type": "boolean"
          },
          "archived": {
            "type": "boolean"
          },
          "match_kind": {
            "type": "string",
            "const": "literal_query_match"
          },
          "coverage": {
            "type": "string",
            "const": "partial_indexed_sample"
          },
          "sentiment": {
            "type": "null"
          }
        },
        "required": [
          "id",
          "workspace_id",
          "stream_id",
          "run_id",
          "revision",
          "source",
          "source_item_id",
          "canonical_url",
          "title",
          "excerpt",
          "author",
          "published_at",
          "retrieved_at",
          "source_checked_at",
          "expires_at",
          "availability",
          "metrics",
          "handled",
          "archived",
          "match_kind",
          "coverage",
          "sentiment"
        ],
        "additionalProperties": false
      }
    },
    "next_cursor": {
      "anyOf": [
        {
          "type": "string",
          "format": "uuid"
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "required": [
    "items",
    "next_cursor"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}

ツール呼び出しの例

スキーマ確認済みの架空値の例です。認可されたID、準備済みメディア、確認済みの公開日時に置き換え、書き込み前に適格性を確認してください。このページはAPIを呼びません。

{
  "name": "sosoapi_listening_results_query",
  "arguments": {
    "workspace_id": "11111111-1111-4111-8111-111111111111",
    "stream_id": "11111111-1111-4111-8111-111111111111"
  }
}

structuredContent

{
  "items": [],
  "next_cursor": null
}
MCPをインストール・接続