addrbookFor publishers
← The evidence ledger

Evidence row 260550

Observed , by probe.mcp/1.

Kind
mcp.tools
About
endpoint 2ff1e6a7-e9dc-49ba-857e-7a1ab987bc2a
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
bb55f533ebb143be89a003dee7524091219a7eff4c6b8ee32f5eeae0313fab55
Leaf
0xeb475c639af7cfe1e324be8dcf6a6202d4f28a7fd2a17f003fd54f8bf29281a7

What was observed

{
  "count": 19,
  "tools": [
    {
      "description": "MCP.AI for IDE agents (Cursor, etc.): log in in the browser, copy the access token. Best: add it to this server's config as a header `Authorization: Bearer <token>` for a permanent, non-expiring connection. Or paste it here for a session-only login: call with { token: \"<jwt>\" } after the user pastes, or with no args to get the link.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "token": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "authenticate"
    },
    {
      "description": "Returns connection status and URLs. When all providers are connected, returns authenticated:true and empty pending[]. When credentials are missing, returns connect_url for the toolkit and per-install URLs.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {},
        "type": "object"
      },
      "name": "connect"
    },
    {
      "description": "Configurações/perfil de diabetes do usuário (bloco user_diabetes).",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {},
        "type": "object"
      },
      "name": "dietaai_diabetes"
    },
    {
      "description": "Resumo do diário (journal) de um dia, no formato YYYY-MM-DD.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "date": {
            "type": "string"
          }
        },
        "required": [
          "date"
        ],
        "type": "object"
      },
      "name": "dietaai_diary"
    },
    {
      "description": "Linhas históricas de um track do diário (ex.: série de glicose). diaryId é obrigatório; start_range_date e end_range_date filtram o intervalo quando ambos são informados.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "diaryId": {
            "type": "string"
          },
          "end_range_date": {
            "type": "string"
          },
          "start_range_date": {
            "type": "string"
          }
        },
        "required": [
          "diaryId"
        ],
        "type": "object"
      },
      "name": "dietaai_diary_logs"
    },
    {
      "description": "Definições dos itens de diário do usuário (as faixas/tracks que ele acompanha, ex.: glicose).",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {},
        "type": "object"
      },
      "name": "dietaai_diary_scheme"
    },
    {
      "description": "Consulta o log de alimentos do usuário com os macros. Use date para um único dia (YYYY-MM-DD) OU start_date/end_date para um intervalo (máx 31 dias). Retorna os itens por refeição e os totais do dia (kcal, proteína, carbo, gordura, fibra, sódio, água).",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "date": {
            "type": "string"
          },
          "end_date": {
            "type": "string"
          },
          "start_date": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "dietaai_foods"
    },
    {
      "description": "Metas nutricionais do usuário (calorias, proteína, carbo, gordura, água, fibra e metas customizadas). Compare com os totais de dietaai_foods para avaliar a aderência.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {},
        "type": "object"
      },
      "name": "dietaai_goals"
    },
    {
      "description": "Ponte HTTP para a API oficial de um wearable ligado à conta (Whoop, Strava ou Oura). O path segue a doc do fornecedor, ex.: Whoop \"v1/cycle\", Strava \"api/v3/athlete\", Oura \"v2/usercollection/daily_activity\". O vínculo OAuth é feito uma vez no app Dieta.ai.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "path": {
            "type": "string"
          },
          "provider": {
            "enum": [
              "whoop",
              "strava",
              "oura"
            ],
            "type": "string"
          }
        },
        "required": [
          "provider",
          "path"
        ],
        "type": "object"
      },
      "name": "dietaai_integration"
    },
    {
      "description": "Dados de glicose do LibreView (Libre). Body opcional, igual ao que o app envia após conectar.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "body": {
            "additionalProperties": {},
            "propertyNames": {
              "type": "string"
            },
            "type": "object"
          }
        },
        "type": "object"
      },
      "name": "dietaai_libre_data"
    },
    {
      "description": "Registra uma refeição enviando texto e/ou a URL de uma foto pro mesmo pipeline de IA do chat do app (reconhece alimentos e calcula macros). Pelo menos um de prompt ou imageUrl é obrigatório. É fire-and-forget (retorna aceito, o processamento é assíncrono).",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "context": {
            "additionalProperties": {},
            "propertyNames": {
              "type": "string"
            },
            "type": "object"
          },
          "imageUrl": {
            "type": "string"
          },
          "prompt": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "dietaai_log"
    },
    {
      "description": "Dados de glicose do Sibionics (gráfico). Body opcional, passthrough.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "body": {
            "additionalProperties": {},
            "propertyNames": {
              "type": "string"
            },
            "type": "object"
          }
        },
        "type": "object"
      },
      "name": "dietaai_sibionics_data"
    },
    {
      "description": "Glicose do dispositivo Sibionics. O inviteId vem do perfil do usuário, não é passado pelo cliente.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {},
        "type": "object"
      },
      "name": "dietaai_sibionics_glucose"
    },
    {
      "description": "Dados da assinatura do usuário no Dieta.ai.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {},
        "type": "object"
      },
      "name": "dietaai_subscription"
    },
    {
      "description": "Perfil básico do usuário: nome, email, userId, fuso horário, idioma e data de criação.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {},
        "type": "object"
      },
      "name": "dietaai_user"
    },
    {
      "description": "The official mcp.ai marketplace — the in-platform catalog of every MCP/tool, AND the way to run them. Covers capability requests like \"find an MCP that does X\", \"consulta um CPF\", \"is there a tool for Y\". Core flow: action=search discovers MCPs by intent → describe returns one MCP's full profile (every tool with its id + params, pricing, auth) so you pick the right tool_id → invoke RUNS that tool. KEY: invoke works even when the MCP is NOT installed — it runs the tool pontualmente (one-off), without adding the MCP to the toolkit and without bloating the tool list. If the MCP needs a credential/login, invoke returns a connect link; if it is paid and the wallet is empty, invoke returns a checkout/top-up link (the user opens it, then you retry). Use install only to make an MCP PERMANENT in the active toolkit (its tools then show up natively in future sessions); prefer invoke for a single/occasional use. list_tools lists what is callable right now. subscribe/cancel handle per-MCP billing; report_bug sends feedback; request_mcp asks us to build a NEW MCP when nothing fits. Search/describe flag installed_in_toolkit vs installed_in_workspace. Writes (install/uninstall/subscribe/cancel and the one-off install behind invoke) require workspace owner/admin. It also carries the mcp.ai PROMPT LIBRARY, which is about ready-made prompt TEXT rather than MCPs: search_prompts finds one, get_prompt returns its full text with {{variables}} filled, and publish_prompt saves a prompt and returns a shareable mcp.ai/p/<slug> link that opens without login.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "action": {
            "default": "search",
            "enum": [
              "search",
              "describe",
              "install",
              "uninstall",
              "subscribe",
              "cancel",
              "resume",
              "report_bug",
              "request_mcp",
              "list_tools",
              "invoke",
              "search_prompts",
              "get_prompt",
              "publish_prompt"
            ],
            "type": "string"
          },
          "arguments": {
            "default": "{}",
            "type": "string"
          },
          "cancel_comment": {
            "default": "",
            "type": "string"
          },
          "cancel_reason": {
            "enum": [
              "too_expensive",
              "missing_features",
              "switched_service",
              "unused",
              "customer_service",
              "too_complex",
              "low_quality",
              "other"
            ],
            "type": "string"
          },
          "conversation": {
            "default": "[]",
            "type": "string"
          },
          "immediate": {
            "default": false,
            "type": "boolean"
          },
          "limit": {
            "default": 10,
            "type": "number"
          },
          "mcp_id": {
            "default": "",
            "type": "string"
          },
          "message": {
            "default": "",
            "type": "string"
          },
          "prompt_body": {
            "default": "",
            "type": "string"
          },
          "prompt_category": {
            "default": "",
            "type": "string"
          },
          "prompt_description": {
            "default": "",
            "type": "string"
          },
          "prompt_slug": {
            "default": "",
            "type": "string"
          },
          "prompt_targets": {
            "default": [],
            "items": {
              "enum": [
                "claude",
                "chatgpt",
                "cursor",
                "lovable"
              ],
              "type": "string"
            },
            "type": "array"
          },
          "prompt_title": {
            "default": "",
            "type": "string"
          },
          "prompt_tool": {
            "default": "",
            "type": "string"
          },
          "prompt_vars": {
            "default": "{}",
            "type": "string"
          },
          "query": {
            "default": "",
            "type": "string"
          },
          "report_context": {
            "default": "",
            "type": "string"
          },
          "request_details": {
            "default": "",
            "type": "string"
          },
          "request_name": {
            "default": "",
            "type": "string"
          },
          "tier_slug": {
            "default": "",
            "type": "string"
          },
          "tool_id": {
            "default": "",
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "marketplace"
    },
    {
      "description": "Report a bug, missing feature, or send feedback. Include the conversation array with recent messages for reproduction.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "context": {
            "default": "",
            "type": "string"
          },
          "conversation": {
            "default": "[]",
            "type": "string"
          },
          "message": {
            "type": "string"
          }
        },
        "required": [
          "message"
        ],
        "type": "object"
      },
      "name": "report_bug"
    },
    {
      "description": "Show the current MCP platform and adapter versions.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {},
        "type": "object"
      },
      "name": "show_version"
    },
    {
      "description": "Returns the current toolkit state: installed MCPs, their connection status, the accounts connected to each one, and how many catalog tools each exposes.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {},
        "type": "object"
      },
      "name": "toolkit_info"
    }
  ]
}

What the leaf hashes

{"body":"bb55f533ebb143be89a003dee7524091219a7eff4c6b8ee32f5eeae0313fab55","id":260550,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793031718725031,"prev":null,"subject":"2ff1e6a7-e9dc-49ba-857e-7a1ab987bc2a","subject_kind":"endpoint"}

Proof

Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (296695 rows).

  1. 0xeb473c7372ac3075648b3c699c8cf2c8472619c5cf13d5c01caec9f8b9e1d0d2
  2. 0xb5bf892f3bb8bd003ea8a3f0f514473cc7138b859d5dafc2e018625269b3cb7b
  3. 0x24a8b82a0559107b76e3cec6bbda8e4ee5b3a6a4be45512d3aaa187b8d68390e
  4. 0x531cd6778f1536682321f062ce28c1a61ec72fd383402770cf0f51d55b09ddf9
  5. 0x6ccfa4c7740d84196ce912f881b6c113fe110348705318b763cbe3b0c5f8b2c5
  6. 0x1396eb1a528f87bdda2e12353a0489e914450dd1a380627f46ce3d6e9080c662
  7. 0x77b759bea8748fc9b0bfe9674748cbc99583f245b42a973805e8b6439339d420
  8. 0x7e27d41a0cccbaa61c24923993896e4fcb4b9507f5cc280daf79119d352fa669
  9. 0x5d8ff483221acb91a149c9603124bfed8154b6eba49fc8897201ff9c98975d67
  10. 0x64325a30eb79ab7065e7250c2bf159f0a0e4518eeea02e522dcb2acc9b70d6a4
  11. 0x9fa929c4db0d6b2b1aa73d590a53584134638629c20773074b1277326c981fb4
  12. 0x4bac6365a3676c613d57c80f4d4f617e583205074db24f3dec4d2ed4939a26e6
  13. 0xec98ca25cb12ffed7c3e1373971719ce414ee6deecd1e7724b2979e2c356d99f
  14. 0x614d844c9e0509d9f9e63697aa2935555bce5f13695a8dc0047aa9e9898d70b3
  15. 0x95657a7d540ed6cac0bde9995782333b2562a9a6641853269ac95148827410f0
  16. 0x5fb5dda563336cd1bc1b9f44c52b76237ae72ed2145cb9290f39f304ca7dd678
  17. 0x74a0a08e4e7ab9aa5bfbead33dec7e1c7e8e364cff69a63720d764bbe987aadc
Day root
0xf43e8dcc3d451a4788b26be904c55e8c4c0fa75c9666796c51db38d37e2c0df8
Chained
0x702d5ac508f08b0d1accf36af25822d8e5660367494edd17a642fb61e158a57a
Published
On Arc Testnet, block 69251483: 0x495162f8936e19f0039918feebe6c307f327cd6bf8c37219620b1970041fa9ae

How to check it · This row as JSON