For AI agents
Verify before the agent acts
A remote MCP server: before an agent pays, signs, books, hires or buys, it asks Jid whether the business is real, active, licensed for this activity and not sanctioned. The answer is proceed, review, stop or insufficient data, with a cited reason for each requirement and a signed receipt.
https://jid.com/mcpStreamable HTTP, stateless. No sign-up: 10 tool calls a minute and 100 a day per IP. A free key (e-mail only, no card) adds 1,000 file checks a month; send Authorization: Bearer jid_live_.... Beyond that, $0.05 a check or less; search is always free (pricing).
Tools
search_business(query)Find files by name or any registry number.
verify_business(id or query, activity, jurisdiction, amount)With an activity: the decision (proceed, review, stop, insufficient_data), reasons with fact ids, source, verified_at and fresh_until, and a signed receipt_id. Without: status with flags and every cited fact. Activities and rules.
get_receipt(receipt_id)The stored, Ed25519-signed record of a decision: inputs, facts and their hashes, rules version, time. Free.
get_business_file(id)The full file, including owner statements (labelled self-reported), possible matches and change history.
Claude
Claude Code. Add the server from the terminal, with the header if you have a key, or commit it to a project in .mcp.json.
Claude apps (claude.ai, desktop). Settings, Connectors, Add custom connector, and paste https://jid.com/mcp. This uses the no-key limits (10 tool calls a minute, 100 a day per IP), since custom connectors there do not send a custom key header.
claude mcp add --transport http jid https://jid.com/mcpclaude mcp add --transport http jid https://jid.com/mcp \
--header "Authorization: Bearer $JID_KEY"{
"mcpServers": {
"jid": {
"type": "http",
"url": "https://jid.com/mcp"
}
}
}ChatGPT and OpenAI
In ChatGPT, turn on developer mode for connectors (Settings, Apps and Connectors, Advanced), then create a connector with the MCP server URL https://jid.com/mcp and no authentication.
In the OpenAI Responses API, pass it as a remote MCP tool.
{
"type": "mcp",
"server_label": "jid",
"server_url": "https://jid.com/mcp",
"headers": {
"Authorization": "Bearer $JID_KEY"
},
"require_approval": "never"
}
Any MCP client
The server speaks JSON-RPC over streamable HTTP. It is stateless, so a single tools/call request works on its own.
curl -s https://jid.com/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"search_business","arguments":{"query":"Gland Pharma"}}}'curl -s https://jid.com/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"verify_business","arguments":{"query":"FEI 3002647489","activity":"sell_prescription_drugs","amount":37000}}}'How an agent should use the answer
- Act on facts, not on the absence of facts: “no record linked” is not evidence a business is unregistered.
- Check
verified_atagainst how fresh you need the fact to be, and cite the source agency. - Pass the
activityyou are about to rely on. Act only onproceed. Onrevieworinsufficient_data, show the user the reasons that are not met and ask; onstop, do not act. - Keep the
receipt_idwith the action it justified (the payment, booking or contract). - A decision applies published rules to public-record facts. It is not legal advice or a certification.
- Jid is business information, not a consumer report: never use it for decisions about an individual's credit, employment, insurance or housing.