Jid: the trust API for AI agents

Verify a business before an agent pays, signs or buys: registry-cited decision and signed receipt.

我该使用它吗

质量与安全性

A
描述质量
100%
模式完整度
97%
命名质量
94%
投毒风险
80%
权限匹配度
100%
协议合规性
100%

发现(2)

  • HIGHTool poisoning patterns detected
  • MEDIUMTool description contains URL to non-standard domain在 screen 中

基于对工具定义和协议合规性的自动分析。

上下文开销

~2,793token 数(工具定义)
~3.0 KB典型响应大小
对注意力有显著影响(占 128k 上下文窗口的 2.18%)

这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。

安装

一键安装

将以下内容添加到你的 `claude_desktop_config.json` 文件中:

{
  "mcpServers": {
    "jid": {
      "url": "https://jid.com/mcp"
    }
  }
}

远程端点

https://jid.com/mcpstreamable-http

它能做什么

工具清单

工具(7)

🟢 只读🟡 写入🔴 删除⚪ 未知
🟢search_business(query)

Find Jid business files by name or by any registry number (FEI, LEI, SEC CIK, DUNS, NDC labeler code, state licence or entity number). Returns candidate files with status and match evidence.

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 2,
      "maxLength": 200,
      "description": "Business name or registry number"
    }
  },
  "required": [
    "query"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡get_business_file(id)

The full Jid file for one business: status, identifiers, every current fact with its source, verification date, next check and confidence, owner statements (labelled self-reported), possible matches and the change history.

输入模式

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "Jid file id from search_business, e.g. gland-pharma-limited-j9nehi"
    }
  },
  "required": [
    "id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢verify_business(id, query, activity, jurisdiction, amount, ...)

Check a business before an agent pays, signs, books, hires or buys. Pass the Jid id (or a name or registry number) and, to get a decision, the activity. Returns decision (proceed, review, stop or insufficient_data) with reasons: each names the requirement, met (true, false or unknown), the fact ids, source, verified_at and fresh_until, plus a signed receipt_id. Without an activity it returns the status and every cited fact, as before. Activities: general_commerce (General commerce (default)); sell_prescription_drugs (Sell prescription drugs); manufacture_drugs (Manufacture drugs); sell_medical_devices (Sell medical devices); haul_freight (Haul freight (for-hire motor carrier)); broker_freight (Broker freight); sell_alcohol (Sell alcohol (wholesale or import)); produce_spirits (Produce distilled spirits); provide_investment_advice (Provide investment advice); accept_deposits (Accept deposits); lend (Lend); bill_medicare_medicaid (Bill Medicare or Medicaid); healthcare_supplier (Health care supplier); federal_contracting (Federal contracting); charitable_solicitation (Charitable solicitation); operate_psilocybin_healing_center (Operate a psilocybin healing or service centre (CO, OR)).

输入模式

{
  "type": "object",
  "properties": {
    "id": {
      "description": "Jid file id (preferred)",
      "type": "string"
    },
    "query": {
      "description": "Name or registry number, used when no id is known",
      "type": "string",
      "minLength": 2,
      "maxLength": 200
    },
    "activity": {
      "description": "What the business is about to do for you. Defaults to general_commerce when jurisdiction or amount is given.",
      "type": "string",
      "enum": [
        "general_commerce",
        "sell_prescription_drugs",
        "manufacture_drugs",
        "sell_medical_devices",
        "haul_freight",
        "broker_freight",
        "sell_alcohol",
        "produce_spirits",
        "provide_investment_advice",
        "accept_deposits",
        "lend",
        "bill_medicare_medicaid",
        "healthcare_supplier",
        "federal_contracting",
        "charitable_solicitation",
        "operate_psilocybin_healing_center"
      ]
    },
    "jurisdiction": {
      "description": "US state as US-XX (for example US-CO) or an ISO country code",
      "type": "string",
      "maxLength": 5
    },
    "amount": {
      "description": "Transaction amount, recorded on the receipt as context only",
      "type": "number",
      "minimum": 0
    },
    "currency": {
      "description": "ISO 4217 currency of amount, default USD",
      "type": "string",
      "minLength": 3,
      "maxLength": 3
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_receipt(receipt_id)

Retrieve a stored, Ed25519-signed verification receipt by receipt_id: the inputs, decision, reasons, fact ids and value hashes, rules version and time. Use it to prove what was checked before an action. Free; not a check.

输入模式

{
  "type": "object",
  "properties": {
    "receipt_id": {
      "type": "string",
      "description": "rcpt_... from verify_business"
    }
  },
  "required": [
    "receipt_id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢qualify_counterparty(email, domain, company_name, form_type, message, ...)

Before you engage with a business that contacted you (a form submission, an inquiry, an outreach reply), qualify it. Pass the sender's e-mail (or the company domain), the company name if given, and the context (form type, message, stated value, stated role). Jid checks the domain (MX, SPF, DMARC, registration date over RDAP, the website), matches it to a Jid business file, reads that file's registrations, licences, filings, capital raises, loans and adverse records, and returns signals (each with source, source_url, verified_at), three scores (legitimacy, capacity, consistency, 0 to 100 with reasons), checks (each pass, fail or unknown with one line of evidence and a lookup link) and a read: a one-line headline ("Passed all 7 checks Jid could run. Recommendation: engage."), the recommendation (engage, verify_first, do_not_engage), the failed checks and up to 4 links to verify by hand. Show the user the read first. Also a signed receipt. Businesses only: personal webmail or no matched business returns individual_or_unverified with no scores. A possible list match is 'review', never a finding. Requires an API key; counts as 2 checks. Not for credit, employment, insurance or housing decisions about any person.

输入模式

{
  "type": "object",
  "properties": {
    "email": {
      "description": "Sender's e-mail address",
      "type": "string",
      "maxLength": 254
    },
    "domain": {
      "description": "Company domain, when no e-mail is available",
      "type": "string",
      "maxLength": 253
    },
    "company_name": {
      "description": "Company name as stated by the sender",
      "type": "string",
      "maxLength": 200
    },
    "form_type": {
      "type": "string",
      "enum": [
        "seller_application",
        "acquisition_inquiry",
        "buyer_registration",
        "nda_request",
        "sourcing_request",
        "listing_request",
        "consultation",
        "partnership",
        "contact",
        "other",
        "vendor_claim",
        "listing_claim",
        "sponsor_inquiry",
        "advertiser",
        "broker_request",
        "buyer_inquiry",
        "seller_inquiry",
        "data_purchase"
      ],
      "description": "What kind of submission this is"
    },
    "message": {
      "description": "The submission's free text (hashed, never stored)",
      "type": "string",
      "maxLength": 5000
    },
    "stated_value": {
      "description": "Deal or purchase size the sender states, USD",
      "type": "number",
      "minimum": 0
    },
    "stated_role": {
      "description": "The sender's stated role",
      "type": "string",
      "enum": [
        "buyer",
        "seller",
        "supplier",
        "investor",
        "operator"
      ]
    },
    "country": {
      "description": "Stated country, ISO 3166-1 alpha-2",
      "type": "string",
      "minLength": 2,
      "maxLength": 2
    },
    "ip_country": {
      "description": "Country the submission came from, ISO alpha-2 (location consistency check)",
      "type": "string",
      "minLength": 2,
      "maxLength": 2
    },
    "ip_region": {
      "description": "Region the submission came from (ISO 3166-2, e.g. US-CA or CA)",
      "type": "string",
      "maxLength": 10
    },
    "ip_asn": {
      "description": "ASN of the submitting network, to recognise hosting and VPN networks",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "browser_timezone": {
      "description": "IANA time zone reported by the submitter's browser",
      "type": "string",
      "maxLength": 60
    },
    "stated_country": {
      "description": "Country the submitter stated (same as country)",
      "type": "string",
      "minLength": 2,
      "maxLength": 2
    },
    "signal": {
      "description": "Jid Signals token (the form's jid_signal field): Jid's own reading of the visitor's location; replaces the ip_* fields when it verifies",
      "type": "string",
      "maxLength": 800
    },
    "site": {
      "description": "The submitting website's domain (binds the signal token)",
      "type": "string",
      "maxLength": 253
    },
    "activity": {
      "description": "Regulated activity whose licences matter, if any",
      "type": "string",
      "enum": [
        "general_commerce",
        "sell_prescription_drugs",
        "manufacture_drugs",
        "sell_medical_devices",
        "haul_freight",
        "broker_freight",
        "sell_alcohol",
        "produce_spirits",
        "provide_investment_advice",
        "accept_deposits",
        "lend",
        "bill_medicare_medicaid",
        "healthcare_supplier",
        "federal_contracting",
        "charitable_solicitation",
        "operate_psilocybin_healing_center"
      ]
    },
    "claimed_website": {
      "description": "For vendor_claim / listing_claim: the website of the business or listing being claimed (enables the affiliation check)",
      "type": "string",
      "maxLength": 300
    },
    "summary": {
      "description": "Add a short plain-English summary grounded in the signals",
      "type": "boolean"
    },
    "policy": {
      "description": "How cautious `engage` is (default balanced)",
      "type": "string",
      "enum": [
        "strict",
        "balanced",
        "permissive"
      ]
    }
  },
  "required": [
    "form_type"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢screen(domain, url, email, phone, company_name, ...)

A fast engage-or-not answer before you reply to, onboard, pay or buy from someone. Pass any of domain, url, email, phone or company_name, the context (lead, inbound_email, partnership, vendor, purchase, marketplace_seller, agent_action), an optional amount (USD) and a policy (strict, balanced, permissive; default balanced). Returns engage (true or false), risk (low, medium, high, unknown), confidence 0 to 1, subject_type, reasons (each with source and evidence), concrete mitigations, checks and a read (headline, recommendation engage | verify_first | do_not_engage, failed checks, lookup links: show the user the read first) and a signed receipt_id. Deterministic, no AI in the decision, usually under a second. Act on engage=true; on engage=false, show the reasons and mitigations to the user. A possible sanctions name match is engage=false with 'manual review', never a finding. Individuals get only technical checks of the address, phone or domain. engage is advisory. Rules: https://jid.com/screen-rules. Counts as 1 check with a key; free tier without one.

输入模式

{
  "type": "object",
  "properties": {
    "domain": {
      "description": "Company domain",
      "type": "string",
      "maxLength": 253
    },
    "url": {
      "description": "Website or page URL (purchase checks: only the host is used)",
      "type": "string",
      "maxLength": 2000
    },
    "email": {
      "description": "Sender e-mail address (hashed on the receipt, never stored)",
      "type": "string",
      "maxLength": 254
    },
    "phone": {
      "description": "Phone number, ideally in +E.164",
      "type": "string",
      "maxLength": 40
    },
    "company_name": {
      "description": "Company name as stated",
      "type": "string",
      "maxLength": 200
    },
    "context": {
      "description": "What engaging means here; default lead (purchase when only a url or domain is given)",
      "type": "string",
      "enum": [
        "lead",
        "inbound_email",
        "partnership",
        "vendor",
        "purchase",
        "marketplace_seller",
        "agent_action"
      ]
    },
    "amount": {
      "description": "Amount at stake, USD",
      "type": "number",
      "minimum": 0
    },
    "policy": {
      "description": "strict, balanced (default) or permissive",
      "type": "string",
      "enum": [
        "strict",
        "balanced",
        "permissive"
      ]
    },
    "country": {
      "description": "Default country for a phone number without +, ISO alpha-2",
      "type": "string",
      "minLength": 2,
      "maxLength": 2
    },
    "ip_country": {
      "description": "Country the request came from (ISO alpha-2), for the location consistency check",
      "type": "string",
      "minLength": 2,
      "maxLength": 2
    },
    "ip_region": {
      "description": "Region of the request (ISO 3166-2, e.g. US-CA or CA)",
      "type": "string",
      "maxLength": 10
    },
    "ip_asn": {
      "description": "ASN of the request's network, to recognise hosting and VPN networks",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "browser_timezone": {
      "description": "IANA time zone reported by the browser",
      "type": "string",
      "maxLength": 60
    },
    "stated_country": {
      "description": "Country the counterparty stated",
      "type": "string",
      "minLength": 2,
      "maxLength": 2
    },
    "signal": {
      "description": "Jid Signals token (the form's jid_signal field): Jid's own reading of the visitor's location; replaces the ip_* fields when it verifies",
      "type": "string",
      "maxLength": 800
    },
    "site": {
      "description": "The submitting website's domain (binds the signal token)",
      "type": "string",
      "maxLength": 253
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢check_email(headers)

Paste the raw headers of a message (Show original / View source). Returns checks and a read (headline, recommendation engage | verify_first | do_not_engage, failed checks, lookup links: show the user the read first): DMARC/SPF/DKIM as the receiving server recorded them, DKIM alignment with From, Reply-To going to another domain, and a From domain or display name that imitates a known business. The headers are processed in memory and never stored. Deterministic, no AI. Counts as 1 check with a key; free tier without one.

输入模式

{
  "type": "object",
  "properties": {
    "headers": {
      "type": "string",
      "maxLength": 65536,
      "description": "The raw message headers, as one string (the body is not needed)"
    }
  },
  "required": [
    "headers"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

社区

评价此服务器

证据

最近观测

已验证未记录版本7 个工具