KnownGate

Food verification for people and AI agents: evidence-backed verdicts, with sources and dates.

使うべきか

品質と安全性

A
説明の品質
100%
スキーマの完全性
92%
命名の品質
95%
ポイズニングのリスク
100%
権限の一致
100%
プロトコルへの準拠
100%

ツール定義とプロトコルへの準拠に関する自動分析に基づいています。

コンテキストコスト

~1,701トークン数(ツール定義)
~3.8 KB一般的なレスポンスサイズ
注意への影響は中程度(128k コンテキストの 1.33%)

これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。

インストール

ワンクリックインストール

これを `claude_desktop_config.json` ファイルに追加してください:

{
  "mcpServers": {
    "verify": {
      "url": "https://mcp.knowngate.com"
    }
  }
}

リモートエンドポイント

https://mcp.knowngate.comstreamable-http

できること

ツール一覧

ツール(4)

🟢 読み取り専用🟡 書き込み🔴 削除⚪ 不明
🟢check_item(restrictions, subject, thresholds)

Rule one food subject against the household premise (restrictions, thresholds, or both). Needs a key (Authorization: Bearer kg_live_…); create a free one with the register tool. Returns one of four verdicts (no_conflict_found, conflict_found, ask_one_question, couldnt_verify) with typed hits, source kind and read date. Unknown counts as no; the word safe is never used.

入力スキーマ

{
  "type": "object",
  "properties": {
    "restrictions": {
      "maxItems": 20,
      "type": "array",
      "items": {
        "anyOf": [
          {
            "type": "string",
            "minLength": 1,
            "maxLength": 60
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "minLength": 1,
                "maxLength": 60
              },
              "note": {
                "type": "string",
                "maxLength": 200
              }
            },
            "required": [
              "key"
            ]
          }
        ]
      },
      "description": "Household restrictions. FDA-9 keys (\"peanut\", \"sesame\", \"milk\", …) as strings, or { key, note } when a note matters (e.g. { key: \"tree_nut\", note: \"cashew\" }). May be empty when thresholds carry the premise."
    },
    "subject": {
      "type": "object",
      "properties": {
        "kind": {
          "type": "string",
          "enum": [
            "upc",
            "product_query",
            "menu_item",
            "ingredients"
          ],
          "description": "upc: digits from a barcode · product_query: a product name · menu_item: a dish (needs venue) · ingredients: comma-separated ingredient text"
        },
        "value": {
          "type": "string",
          "minLength": 1,
          "maxLength": 4000
        },
        "venue": {
          "description": "Venue name, required for menu_item",
          "type": "string",
          "maxLength": 200
        }
      },
      "required": [
        "kind",
        "value"
      ]
    },
    "thresholds": {
      "description": "Numeric premise (beta): per-serving nutrient bounds ruled against the product's typed panel. Unknown values refuse honestly, never zero. An empty array means no numeric limits.",
      "maxItems": 10,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "nutrient": {
            "type": "string",
            "minLength": 1,
            "maxLength": 40,
            "description": "e.g. \"sugar_g\", \"carbs\", \"sodium_mg\", \"calories\", \"protein\""
          },
          "max": {
            "description": "Upper bound per serving",
            "type": "number",
            "minimum": 0
          },
          "min": {
            "description": "Lower bound per serving",
            "type": "number",
            "minimum": 0
          },
          "unit": {
            "description": "Unit the bound is stated in (\"g\", \"mg\", \"kcal\"). Defaults to the panel unit; exact conversions only.",
            "type": "string",
            "maxLength": 10
          },
          "basis": {
            "description": "Only \"per_serving\" is ruleable in v1",
            "type": "string",
            "maxLength": 20
          }
        },
        "required": [
          "nutrient"
        ]
      }
    }
  },
  "required": [
    "restrictions",
    "subject"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢check_venue(restrictions, venue)

Rule a whole venue's published chart against the household restrictions in one call. Needs a key (Authorization: Bearer kg_live_…); create a free one with the register tool. Returns per-verdict counts, the most severe items, the operator's cross-contact caveat verbatim, and the chart's source and read date. A venue with no machine-readable chart says so honestly.

入力スキーマ

{
  "type": "object",
  "properties": {
    "restrictions": {
      "maxItems": 20,
      "type": "array",
      "items": {
        "anyOf": [
          {
            "type": "string",
            "minLength": 1,
            "maxLength": 60
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "minLength": 1,
                "maxLength": 60
              },
              "note": {
                "type": "string",
                "maxLength": 200
              }
            },
            "required": [
              "key"
            ]
          }
        ]
      },
      "description": "Household restrictions. FDA-9 keys (\"peanut\", \"sesame\", \"milk\", …) as strings, or { key, note } when a note matters (e.g. { key: \"tree_nut\", note: \"cashew\" }). May be empty when thresholds carry the premise."
    },
    "venue": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "minLength": 1,
          "maxLength": 200
        },
        "location": {
          "description": "City or metro, optional",
          "type": "string",
          "maxLength": 200
        }
      },
      "required": [
        "name"
      ]
    }
  },
  "required": [
    "restrictions",
    "venue"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢check_plan(restrictions, items, thresholds)

Rule a set of items at once: a recipe's ingredients, a basket, several days. Needs a key (Authorization: Bearer kg_live_…); create a free one with the register tool. Up to 25 subjects, one call, one verdict per item plus a summary line. Each item carries its own evidence, source and read date.

入力スキーマ

{
  "type": "object",
  "properties": {
    "restrictions": {
      "maxItems": 20,
      "type": "array",
      "items": {
        "anyOf": [
          {
            "type": "string",
            "minLength": 1,
            "maxLength": 60
          },
          {
            "type": "object",
            "properties": {
              "key": {
                "type": "string",
                "minLength": 1,
                "maxLength": 60
              },
              "note": {
                "type": "string",
                "maxLength": 200
              }
            },
            "required": [
              "key"
            ]
          }
        ]
      },
      "description": "Household restrictions. FDA-9 keys (\"peanut\", \"sesame\", \"milk\", …) as strings, or { key, note } when a note matters (e.g. { key: \"tree_nut\", note: \"cashew\" }). May be empty when thresholds carry the premise."
    },
    "items": {
      "minItems": 1,
      "maxItems": 25,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "kind": {
            "type": "string",
            "enum": [
              "upc",
              "product_query",
              "menu_item",
              "ingredients"
            ],
            "description": "upc: digits from a barcode · product_query: a product name · menu_item: a dish (needs venue) · ingredients: comma-separated ingredient text"
          },
          "value": {
            "type": "string",
            "minLength": 1,
            "maxLength": 4000
          },
          "venue": {
            "type": "string",
            "maxLength": 200
          }
        },
        "required": [
          "kind",
          "value"
        ]
      }
    },
    "thresholds": {
      "description": "Numeric premise (beta): per-serving nutrient bounds ruled against the product's typed panel. Unknown values refuse honestly, never zero. An empty array means no numeric limits.",
      "maxItems": 10,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "nutrient": {
            "type": "string",
            "minLength": 1,
            "maxLength": 40,
            "description": "e.g. \"sugar_g\", \"carbs\", \"sodium_mg\", \"calories\", \"protein\""
          },
          "max": {
            "description": "Upper bound per serving",
            "type": "number",
            "minimum": 0
          },
          "min": {
            "description": "Lower bound per serving",
            "type": "number",
            "minimum": 0
          },
          "unit": {
            "description": "Unit the bound is stated in (\"g\", \"mg\", \"kcal\"). Defaults to the panel unit; exact conversions only.",
            "type": "string",
            "maxLength": 10
          },
          "basis": {
            "description": "Only \"per_serving\" is ruleable in v1",
            "type": "string",
            "maxLength": 20
          }
        },
        "required": [
          "nutrient"
        ]
      }
    }
  },
  "required": [
    "restrictions",
    "items"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪register(agent_name, contact_email)

Sign yourself up for a developer key without leaving MCP. The email is contact and recovery, not a wall. One key per email, free tier (100 checks a month); the key is in this response and never shown again. Nothing on knowngate.com itself needs a key.

入力スキーマ

{
  "type": "object",
  "properties": {
    "agent_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 120,
      "description": "Who is signing up, e.g. your product name"
    },
    "contact_email": {
      "type": "string",
      "maxLength": 254,
      "format": "email",
      "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
    }
  },
  "required": [
    "agent_name",
    "contact_email"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

コミュニティ

このサーバーを評価する

エビデンス

最近の観測

検証済みバージョンは記録されていませんツール 4 件
検証済みバージョンは記録されていませんツール 4 件