Loppee
REMOTE · LOPPEE.COM · SCANNED AUG 3
Agent-first US business trust registry with neutral Trust Cards and local search.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score →
Endpoint Security63
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- Authorisation check failed: no authorisation is required to call this server, and it exposes a tool marked destructive (set_admin_business_lifecycle). See how to fix → View diagnostics → Fail
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability53
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (poor).Fail
- Context-footprint check failed: tool/resource definitions use about 14083 tokens (~234/item across 60 items; 58 tools + 2 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management26
- Stability check failed: schema churn in the 8 days we've observed: 0 tool removals, 1 breaking changes, 0 auth/transport breaks, 1 additions. See how to fix → Fail
Tool Coverage87
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 53% of tool parameters carry a description.Partial
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.
remote · loppee.com
claude mcp add --transport http com-loppee-loppee https://loppee.com/mcp
[mcp_servers.com-loppee-loppee] url = "https://loppee.com/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"com-loppee-loppee": {
"type": "remote",
"url": "https://loppee.com/mcp",
"enabled": true
}
}
} openclaw mcp add com-loppee-loppee --url https://loppee.com/mcp --transport streamable-http
mcp_servers:
com-loppee-loppee:
url: "https://loppee.com/mcp" {
"mcpServers": {
"com-loppee-loppee": {
"type": "http",
"url": "https://loppee.com/mcp"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 2 Aug 26 +1
- The server rewrote its instructions, which are the text every model session reads security
- Tool “lookup_business” rewrote its description, which is the text the model reads security
- Tool “recommend_businesses” rewrote its description, which is the text the model reads security
- Tool “submit_review_for_moderation” rewrote its description, which is the text the model reads security
- Tool “compare_businesses” rewrote its description, which is the text the model reads security
- Tool “decide_admin_manual_verification_submission” rewrote its description, which is the text the model reads security
- Tool “explain_recommendation” rewrote its description, which is the text the model reads security
- Tool “get_business_reviews” rewrote its description, which is the text the model reads security
- Tool “get_trust_card” rewrote its description, which is the text the model reads security
- “submit_review_for_moderation” added an optional parameter “customer_confirmed” cosmetic
- “decide_admin_manual_verification_submission” added an optional parameter “owner_reason_code” cosmetic
- “decide_admin_manual_verification_submission” reworded the description of “source_authority” cosmetic
- “decide_admin_manual_verification_submission” reworded the description of “source_url” cosmetic
- 31 Jul 26 +3
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 29 Jul 26 +1
- Stability: 0.03 → fail ▼ security
- 27 Jul 26 +1
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 26 Jul 26 57
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 3 Aug 2026 · Probed https://loppee.com/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=loppee.com | CN=WE1,O=Google Trust Services,C=US | 30 Jun 2026 | 28 Sept 2026 | ECDSA 256 | ECDSA-SHA256 | 7f361399b02e7c1813aac560f5767068 |
| SANs: loppee.com | ||||||
| CN=WE1,O=Google Trust Services,C=US (CA) | CN=GTS Root R4,O=Google Trust Services LLC,C=US | 13 Dec 2023 | 20 Feb 2029 | ECDSA 256 | ECDSA-SHA384 | 7ff31977972c224a76155d13b6d685e3 |
| CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) | CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE | 15 Nov 2023 | 28 Jan 2028 | ECDSA 384 | SHA256-RSA | 7fe530bf331343bedd821610493d8a1b |
DNSSEC insecure
Validation of loppee.com. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| com. | present | 19718 | 13 | Verified |
| loppee.com. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
| Header | Value |
|---|---|
| strict-transport-security | max-age=31536000; includeSubDomains |
| content-security-policy | default-src 'self'; base-uri 'self'; object-src 'none'; frame-ancestors 'self'; img-src 'self' https: data:; font-src 'self' data:; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' https://js.stripe.com; connect-src 'self' https://loppee.com https://loppee.com https://*.supabase.co wss://*.supabase.co https://api.stripe.com; frame-src 'self' https://js.stripe.com https://hooks.stripe.com; form-action 'self' |
| x-content-type-options | nosniff |
| x-frame-options | SAMEORIGIN |
| referrer-policy | strict-origin-when-cross-origin |
| permissions-policy | accelerometer=(), autoplay=(), camera=(), geolocation=(self), gyroscope=(), magnetometer=(), microphone=(), payment=(), usb=() |
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://loppee.com/mcp | Verified | 200 | |
| http (plaintext) | http://loppee.com/mcp | HTTPS enforced | 301 | https://loppee.com/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.
apply_to_job Apply To Job ~121
Apply to an active Loppee job on behalf of the calling customer account. Requires a customer personal agent key whose account_id matches the account_id argument and whose allowed_actions include apply_to_job. The seeker is never charged. The resume must be a base64 PDF, DOC, or DOCX file and is stored in a private bucket; employers and the applicant retrieve it only through scoped short-lived signed URLs.
| Name | Type | Req | Description |
|---|---|---|---|
| account_id | string | yes | — |
| cover_note | string | — | — |
| job_id | string | yes | — |
| resume | object | yes | — |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
clear_my_location Clear My Saved Location ~122
Remove the calling customer's saved service location. Idempotent: clearing when nothing is saved returns available=false. Provider IP remains neutral context only and cannot activate local category/recommendation results, Sponsored placement, or impressions. On the next local search ask exactly: "Where should I search? For local categories, share your current location or use Home only when it is marked exact. Another city/ZIP is for area context or business-name lookup only."
| Name | Type | Req | Description |
|---|---|---|---|
| account_id | string | yes | The customer account id this personal-agent key belongs to (confirm with get_agent_identity). |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
compare_businesses Compare Businesses ~159
Compare published businesses only, in request order, by explicit v3 class and identity-verified-reviewer quality context. Registry rows remain unavailable on this tool. Every row retains its exact disclosure; payment never affects reviewer quality. Exposure-plan payment changes discovery reach and, when Sponsored ordering is active, labeled position-weighted exposure only within the same verification class and verified-review reputation band. It never changes business-profile publication, verification, review authority, reputation, moderation, class ordering, or reputation band. Loppee Jobs is a separate optional paid product; its billing affects job-posting activation only and never business verification or directory ranking.
| Name | Type | Req | Description |
|---|---|---|---|
| business_ids | array | yes | Two to twenty Loppee business ids to compare. Duplicates are de-duplicated. |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
create_location_handoff Ask User for Precise Location ~77
Create a short-lived consent link for current precise-location authority. Once approved, it can authorize local category/recommendation reach and Sponsored exposure. Send the location_url to the user, then poll get_location_handoff. The assistant receives readiness and normal business results, never latitude or longitude. Requires an active database-backed customer personal-agent key.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
decide_admin_manual_verification_submission Decide Manual Verification Submission ~378
Approve or reject one current entity/license submission through Loppee's audited manual authority. Rejection should include a controlled owner_reason_code plus a separate internal reason; omission maps to the controlled generic other copy only for legacy compatibility, and approval forbids owner_reason_code. Every official_source_manual decision requires the exact nonempty authority name and valid HTTPS source URL; document_review cannot carry an external source. official_record_not_found is additionally limited to a rejected official_source_manual review. Requires a team/admin-agent key with the separately granted complete_manual_verification action, all method-specific checks, a validity window for approval, and the exact type-to-confirm phrase. The database reauthorizes the exact key and derives the class; the agent cannot set a class or approve its own evidence. Insurance is not accepted by this tool.
| Name | Type | Req | Description |
|---|---|---|---|
| active_or_good_standing | boolean | — | — |
| confirmation | string | yes | — |
| holder_name_match | boolean | — | — |
| identifier_match | boolean | — | — |
| observed_at | string | — | — |
| outcome | string | yes | — |
| owner_reason_code | string | — | Controlled owner-visible rejection reason. New clients should always send it for rejection; omission maps to other only for legacy compatibility. official_record_not_found is valid only for a rejecte… |
| reason | string | yes | — |
| source_authority | string | — | Exact official authority name. Required for every official_source_manual decision; document_review cannot carry an external authority. |
| source_url | string | — | Exact HTTPS official source URL. Required for every official_source_manual decision and forbidden for document_review. |
| submission_id | string | yes | — |
| valid_until | string | — | — |
| verification_method | string | yes | — |
| verified_service_scope | array | — | — |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
explain_recommendation Explain Recommendation ~73
Explain one published business's v3 class and exact disclosure. Registry recommendation rationale remains on the category recommend row; explain_recommendation stays published-only because a business_id alone cannot prove the prior category, location, and fallback context.
| Name | Type | Req | Description |
|---|---|---|---|
| business_id | string | yes | Loppee business id of a published Trust Card. |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | — | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
get_admin_analytics Get Back-office Analytics ~66
Read bounded Back-office operational and projected-revenue analytics. Requires a team/admin-agent key whose exact allowed_actions include view_financial; a view-only key cannot call it. This tool is read-only and never changes billing, placement, verification, or publication.
| Name | Type | Req | Description |
|---|---|---|---|
| days | — | — | — |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
get_admin_overview Get Back-office Overview ~51
Read the Loppee back-office queue totals and launch checks. Requires a team/admin-agent key whose exact allowed_actions include view. This is a Back-office tool; consumer and business-owner keys cannot call it.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
get_admin_verification_case Get Back-office Verification Case ~62
Open one audited verification case file by business_id. Requires a team/admin-agent key with view. The response is the same minimized v3 projection used by the Back-office and never grants authority to change the business class.
| Name | Type | Req | Description |
|---|---|---|---|
| business_id | string | yes | — |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
get_agent_capabilities Get Agent Capabilities ~27
Return the Loppee agent contract, endpoints, policy rules, and available MCP tools.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
get_agent_identity Get Agent Identity ~119
Identify the calling agent from its API key: returns the account_id, scope_kind, label, and exact allowed_actions this key may perform. It also states explicitly that the connecting principal supplies and operates the external agent while Loppee issues only scoped API/MCP access. Call this first to confirm a key is wired correctly and to discover this agent's permissions before attempting any write tool. Requires a valid agent API key (X-LOPPEE-API-Key or Authorization: Bearer); returns an auth error when the key is missing or revoked.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
get_business_reviews Get Business Reviews (paginated) ~177
Read public reviews for a published business or visible Registry-page business. Every review stays visible. reviewer_verification_label and quality_ranking_weight expose Passkey-or-verified-phone quality authority separately from verification_label and ranking_weight interaction evidence. Unqualified legacy reviews remain visible with quality_ranking_weight=0. Verified reviewer means the registered account completed Passkey or phone verification. It does not prove a transaction or government identity.
| Name | Type | Req | Description |
|---|---|---|---|
| business_id | string | yes | Loppee business id of a published business. |
| limit | integer | — | Reviews per page (default 5, max 50). |
| page | integer | — | 1-based page number (default 1). |
| ratings | array | — | Star-rating filter: return only reviews with these ratings, e.g. [1] or [4,5]. Omit for all ratings. |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | — | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
get_location_handoff Check Location Request ~77
Check whether the customer approved current precise-location authority. This returns only status and expiry; it never returns coordinates. Once ready, pass handoff_id as location_handoff_id to search_businesses, search_category, or recommend_businesses.
| Name | Type | Req | Description |
|---|---|---|---|
| handoff_id | string | yes | Opaque handoff id returned by create_location_handoff. |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
get_location_options Get Safe Location Choices ~154
Return only the calling customer's safe Home metadata plus opaque saved_location_ref, current-location handoff availability, and provided city/ZIP context. Never returns ZIP, address, latitude, or longitude. Ask exactly: "Where should I search? For local categories, share your current location or use Home only when it is marked exact. Another city/ZIP is for area context or business-name lookup only." Only current or Home with kind=saved_exact authorizes local category/recommendation discovery; provided city/ZIP and coarse Home are neutral name-disambiguation context. Requires an active scoped consumer personal-agent key.
| Name | Type | Req | Description |
|---|---|---|---|
| account_id | string | yes | The customer account id this personal-agent key belongs to (confirm with get_agent_identity). |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
get_my_location Get Safe Location Choices (Compatibility Alias) ~144
Backward-compatible safe alias for get_location_options. Returns only availability, safe labels, precision metadata, and opaque references; it never returns ZIP, address, latitude, or longitude. Ask exactly: "Where should I search? For local categories, share your current location or use Home only when it is marked exact. Another city/ZIP is for area context or business-name lookup only." Only current or saved_exact authorizes local category/recommendation reach. Discovery location never affects any business's verification class, review authority, review reputation, or recommendation eligibility.
| Name | Type | Req | Description |
|---|---|---|---|
| account_id | string | yes | The customer account id this personal-agent key belongs to (confirm with get_agent_identity). |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
get_pricing_plans Get Loppee Pricing Plans ~147
Return Loppee's published exposure plans, feature bullets, branch add-ons, and promotions. Editing exposure-plan prices or promotions cannot change publication, verification class, review authority, reputation, moderation, or class ordering. Loppee Jobs is billed separately and affects job-posting activation only. Exposure-plan payment changes discovery reach and, when Sponsored ordering is active, labeled position-weighted exposure only within the same verification class and verified-review reputation band. It never changes business-profile publication, verification, review authority, reputation, moderation, class ordering, or reputation band. Loppee Jobs is a separate optional paid product; its billing affects job-posting activation only and never business verification or directory ranking.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
get_trust_card Get Trust Card ~99
Fetch the public v3 Trust Card for one published business or visible Registry-page business by business_id; domain_key remains published-only. Both use the same Trust Card contract. A Registry card retains its exact claim status and disclosure, remains outside the published Verified/Listed classes, and never fabricates missing facts.
| Name | Type | Req | Description |
|---|---|---|---|
| business_id | string | — | Loppee business id. |
| domain_key | string | — | Normalized domain key such as example-com. |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | — | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
list_admin_business_claims List Business Claims ~62
Page the full business-ownership claim queue. Requires a team/admin-agent key with review_intake. This read never grants ownership or changes a claim.
| Name | Type | Req | Description |
|---|---|---|---|
| filter | string | — | — |
| limit | integer | — | — |
| offset | integer | — | — |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
list_admin_businesses List Back-office Businesses ~123
Search and page the Loppee business-operations pipeline. Requires a team/admin-agent key with view. V3 results expose only the current Verified or Listed class and private operational completion, never a public numeric grade. This tool never edits a business.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | — | — |
| claim_status | string | — | — |
| cursor | string | — | — |
| limit | integer | — | — |
| search | string | — | — |
| sort | string | — | — |
| source | string | — | — |
| state | string | — | — |
| status | string | — | — |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
list_admin_manual_verification_submissions List Manual Verification Submissions ~89
Read the private entity/license manual-review queue. Requires a team/admin-agent key whose exact allowed_actions include complete_manual_verification. Signed document links are short lived; raw storage references are never returned. Merely reading a document cannot mint Verified.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | — | — |
| offset | integer | — | — |
| q | string | — | — |
| status | string | — | — |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
list_admin_review_anomalies List Review Anomaly Flags ~72
Read the private flag-only review-anomaly queue. Requires a team/admin-agent key with moderate_reviews. Flags never auto-hide, remove, or reweight a review and never change a business class.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | — | — |
| offset | integer | — | — |
| status | string | — | — |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
list_admin_verification_cases List Back-office Verification Cases ~71
List the server-owned verification work queue. Requires a team/admin-agent key with view. Reading a case never changes its class, evidence, publication, or assignment.
| Name | Type | Req | Description |
|---|---|---|---|
| cursor | string | — | — |
| filter | string | — | — |
| limit | integer | — | — |
| search | string | — | — |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
list_customer_messages List Customer Messages ~232
List inbound customer messages for a business you manage, newest first, each with any replies already sent. Follow pagination.next_cursor until pagination.has_more=false to traverse older history. Pass conversation_id from a webhook resource for one exact business-scoped lookup; conversation_id and cursor are mutually exclusive. Requires allowed_actions include list_customer_messages. Requires an owner-scoped management key, explicit business scope, and the tool's permission; exposure tier does not grant or remove access. Under v3, a business owner connects an external agent they already use. Loppee provides scoped API and MCP access only; it does not provide or host that customer-connected agent. Access is available at no charge for now. Use the returned interaction_id with reply_to_customer_message.
| Name | Type | Req | Description |
|---|---|---|---|
| account_id | string | yes | — |
| business_id | string | yes | — |
| conversation_id | string | — | Exact conversation referenced by a webhook; returns zero or one scoped thread. |
| cursor | string | — | Opaque pagination cursor returned by the previous page. Do not combine with conversation_id. |
| limit | integer | — | Max messages to return (default 20). |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
list_job_applications List Job Applications (Employer) ~346
List applications to the job postings of a business you manage, newest first — the employer side of the hiring pipeline. PII NOTICE: rows include the applicant's name, email, cover note, and (when attached) a SHORT-LIVED signed resume_url (about 5 minutes; re-list to refresh, null if signing fails). This is an explicit owner grant: the business owner must have checked this action when connecting this key (it is never granted by default), and access stays attributable to that scoped key. Handle applicant data only for this business's hiring workflow — never republish it or use it beyond hiring. Optional job_id/status filters and offset pagination (limit up to 100, default 25). Requires allowed_actions include list_job_applications. Requires an owner-scoped management key, explicit business scope, and the tool's permission; exposure tier does not grant or remove access. Under v3, a business owner connects an external agent they already use. Loppee provides scoped API and MCP access only; it does not provide or host that customer-connected agent. Access is available at no charge for now. Read-only: listing never changes application statuses and never affects verification class or recommendation order.
| Name | Type | Req | Description |
|---|---|---|---|
| account_id | string | yes | The managing agent's account id (from get_agent_identity). |
| business_id | string | yes | The employer business (must be in the key's allowed_business_ids). |
| job_id | string | — | Only applications to this posting. |
| limit | integer | — | Max applications to return (default 25). |
| offset | integer | — | Pagination offset into the newest-first list. |
| status | string | — | Only applications currently in this status. |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
list_missed_contacts List Missed Contacts ~110
List captured MISSED CONTACTS for the business this management agent is scoped to. The v3 exposure plan does not lock identity, message content, or access to this owner workflow. Rows remain restricted to the exact owner-authorized business, and the key must include list_missed_contacts. Reading missed contacts never affects verification class, ranking, or reviews.
| Name | Type | Req | Description |
|---|---|---|---|
| account_id | string | yes | — |
| business_id | string | yes | — |
| limit | integer | — | — |
| offset | integer | — | — |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
list_my_conversations List My Conversations ~192
List the calling customer account's OWN message conversations with businesses, newest first, each including the business's replies — the read half of send_message_request, so an agent can report answers back to its user. Follow pagination.next_cursor until pagination.has_more=false to traverse older history. Pass conversation_id from a webhook resource for one exact scoped lookup; conversation_id and cursor are mutually exclusive. Requires a valid scoped agent API key whose account_id matches the account_id argument (call get_agent_identity first); keys scoped to send_message_request may also read. Read-only: never modifies anything.
| Name | Type | Req | Description |
|---|---|---|---|
| account_id | string | yes | — |
| conversation_id | string | — | Exact conversation referenced by a webhook; returns zero or one scoped thread. |
| cursor | string | — | Opaque pagination cursor returned by the previous page. Do not combine with conversation_id. |
| limit | integer | — | Max conversations to return (default 20). |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
list_my_job_applications List My Job Applications ~262
List the calling customer account's OWN job applications, newest first — the read half of apply_to_job, so an agent can report what happened to each application. Each entry carries the employer-set status (submitted, viewed, shortlisted, rejected, hired, or withdrawn), a job + employer summary, the cover note, and — when a resume is attached — a short-lived signed resume_url (about 5 minutes; re-list to refresh, resume_url is null if signing fails). Optional status filter and offset pagination (limit up to 50, default 20). Requires a customer personal agent key whose account_id matches the account_id argument (call get_agent_identity first); keys minted before this tool existed may read with apply_to_job scope. Read-only: listing never changes an application's status and never affects any employer's verification class or recommendation order — application status is set by the employer, never by this tool.
| Name | Type | Req | Description |
|---|---|---|---|
| account_id | string | yes | The customer account id this personal-agent key belongs to (confirm with get_agent_identity). |
| limit | integer | — | Max applications to return (default 20). |
| offset | integer | — | Pagination offset into the newest-first list. |
| status | string | — | Only return applications currently in this employer-set status. |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
list_notifications List Owner Notifications ~99
List owner notifications for the business this management agent is scoped to. Returns event metadata, summaries, and resource links only; it never includes raw CVs, full message bodies, or applicant PII. Requires allowed_actions include list_notifications.
| Name | Type | Req | Description |
|---|---|---|---|
| account_id | string | yes | — |
| business_id | string | yes | — |
| limit | integer | — | — |
| offset | integer | — | — |
| type | string | — | — |
| unread | boolean | — | — |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
list_saved_businesses List Saved Businesses ~199
List the calling account's OWN saved-business shortlist, newest first — the read half of save_business, so an agent can review and report the shortlist it has built. Returns business_id, business_name, business_source, category, city, state, notes, and saved_at for up to 100 entries (default 20, newest-first, no cursor). Requires a valid scoped agent API key whose account_id matches the account_id argument (call get_agent_identity first); keys scoped to save_business may also read. Read-only: never modifies the shortlist and never affects any business's verification class or recommendation order. Returns a machine-readable auth error (invalid_agent_api_key / agent_account_scope_violation) when the key is absent or out of scope.
| Name | Type | Req | Description |
|---|---|---|---|
| account_id | string | yes | The customer/service-agent account id this key belongs to (confirm with get_agent_identity). |
| limit | integer | — | Max shortlist entries to return (default 20). |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
list_support_messages List Support Messages ~195
Read the Loppee support conversation(s) for a business you manage — the owner↔Loppee-support thread, newest first, each with its full message log and status (open/pending/resolved/closed). SCOPED to THIS business only: it never returns the owner's support tickets about their other businesses. Requires allowed_actions include list_support_messages. Requires an owner-scoped management key, explicit business scope, and the tool's permission; exposure tier does not grant or remove access. Under v3, a business owner connects an external agent they already use. Loppee provides scoped API and MCP access only; it does not provide or host that customer-connected agent. Access is available at no charge for now. Read-only; pair with send_support_message to reply.
| Name | Type | Req | Description |
|---|---|---|---|
| account_id | string | yes | — |
| business_id | string | yes | — |
| limit | integer | — | Max conversations to return (default 20). |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
lookup_business Lookup Business ~216
Universal, pay-independent business-name lookup. Exact and genuine-prefix matches remain relevance-authoritative and return the requested entity with its truthful Verified, Listed, or claim-state-accurate Registry classification. Coarse location may disambiguate names only; without precise authority results are commercially neutral, sponsored=false, and record no impressions. Exposure-plan payment changes discovery reach and, when Sponsored ordering is active, labeled position-weighted exposure only within the same verification class and verified-review reputation band. It never changes business-profile publication, verification, review authority, reputation, moderation, class ordering, or reputation band. Loppee Jobs is a separate optional paid product; its billing affects job-posting activation only and never business verification or directory ranking.
| Name | Type | Req | Description |
|---|---|---|---|
| cursor | string | — | Opaque cursor returned in next_cursor by the previous v3 search page. Omit for the first page. |
| limit | integer | — | Maximum result count from 1 to 50. |
| name | string | yes | Business name to look up through the universal, pay-independent name lane. |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
manage_business_deal Manage Business Deal ~347
Create, edit, publish, unpublish, or delete a deal/coupon for a business you manage. This mutates deal records: operation=create makes a draft, operation=publish takes a draft live, operation=unpublish cancels public display, operation=update overwrites supplied deal fields, and operation=delete removes the deal. Not idempotent for create/delete/publish transitions. Requires allowed_actions include manage_deals. Requires an owner-scoped management key, explicit business scope, and the tool's permission; exposure tier does not grant or remove access. Under v3, a business owner connects an external agent they already use. Loppee provides scoped API and MCP access only; it does not provide or host that customer-connected agent. Access is available at no charge for now. Deals are included plan-neutrally; the exposure plan does not change deal access. Call get_agent_identity first. Never affects the verification class or recommendation order.
| Name | Type | Req | Description |
|---|---|---|---|
| account_id | string | yes | The managing agent's account id (from get_agent_identity). |
| business_id | string | yes | The business this deal belongs to (must be in the key's allowed_business_ids). |
| deal_id | string | — | Required for update/publish/unpublish/delete. |
| description | string | — | — |
| discount_label | string | — | Human-readable discount, e.g. "20% off" or "$10 off". |
| ends_at | — | — | ISO date; null/absent = no expiry. |
| operation | string | yes | — |
| promo_code | — | — | — |
| starts_at | — | — | ISO date; null/absent = live immediately. |
| terms | — | — | — |
| title | string | — | — |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | — | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
manage_job_posting Manage Job Posting ~676
Create, edit, publish, pause, close, or delete a job posting for a business you manage (mirrors manage_business_deal). operation=create makes a DRAFT posting (never live directly). operation=publish takes a draft/paused posting live: when this environment has live billing and payment is required, it returns status=checkout_required with a Stripe Checkout url that the HUMAN business owner must open and pay — this tool NEVER completes payment itself; when billing is off, publish activates the posting directly at no charge. operation=update overwrites only the supplied fields (status changes go through publish/pause/close). operation=delete removes the posting (idempotent: deleting a missing posting reports deleted). Separate Loppee Jobs billing controls posting activation ONLY — it never ranks jobs, never changes the business's verification class, and never changes recommendation order. Employers must be claimed, verified, and published (jobs_verified_business_required otherwise). Seekers are never charged. Requires allowed_actions include manage_job_posting. Requires an owner-scoped management key, explicit business scope, and the tool's permission; exposure tier does not grant or remove access. Under v3, a business owner connects an external agent they already use. Loppee provides scoped API and MCP access only; it does not provide or host that customer-connected agent. Access is available at no charge for now. Call get_agent_identity first. Not idempotent for create/publish/delete transitions.
| Name | Type | Req | Description |
|---|---|---|---|
| account_id | string | yes | The managing agent's account id (from get_agent_identity). |
| apply_url | — | — | — |
| benefits | string | — | — |
| business_id | string | yes | The employer business (must be in the key's allowed_business_ids). |
| category | string | — | Free-text category label; defaults to the employer's category. |
| category_alias | string | — | Exact taxonomy LEAF alias for field/domain search (discover via GET /v1/taxonomy/suggest); defaults to the employer's primary alias. |
| city | string | — | Defaults to the employer's city for create. |
| compensation_text | string | — | Human-readable pay line, e.g. "$25-$30/hr + commission". |
| contact_email | — | — | — |
| description | string | — | — |
| direct_apply | boolean | — | true = seekers apply on Loppee (free for them); false = external apply_url. |
| employment_type | string | — | — |
| experience_level | string | — | — |
| job_id | string | — | Required for update/publish/pause/close/delete. |
| operation | string | yes | create makes a DRAFT; publish takes it live (returns checkout_required with a Stripe url for the HUMAN owner when payment is required); pause/close change visibility; delete removes the posting. |
| postal_code | string | — | — |
| salary_currency | string | — | — |
| salary_max | — | — | — |
| salary_min | — | — | — |
| salary_period | string | — | hour, year, or month. |
| schedule | string | — | — |
| skills | array | — | — |
| state | string | — | Two-letter US state; defaults to the employer's state for create. |
| street_address | string | — | — |
| title | string | — | Job title (required for create). |
| total_job_openings | — | — | — |
| workplace_type | string | — | — |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | — | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
mark_notification_read Mark Owner Notification Read ~57
Mark one owner notification as read for the business this management agent is scoped to. Requires allowed_actions include mark_notification_read.
| Name | Type | Req | Description |
|---|---|---|---|
| account_id | string | yes | — |
| business_id | string | yes | — |
| notification_id | string | yes | — |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
recommend_businesses Recommend Businesses ~893
Return category recommendations in explicit Verified, Listed, reviewed_registry, and fallback_registry sections. Published Verified and Listed businesses come first; identity-reviewed Registry rows may fill only within the one-mile Free reach. fallback_registry may contain at most one unrated unclaimed Registry row and only when every higher-authority pool is empty. Owner-submitted and claimed-but-unpublished Registry records are never fallback results. Registry rows retain claim status and remain outside published Verified/Listed classes; the recommendation rationale is carried on the returned recommend row. Exact fallback warning: This unclaimed business has no identity-verified reviewer ratings. Loppee has not verified it; the customer should independently check the business before making contact or booking service. Local category recommendations require current precise authority or Home with kind=saved_exact; coarse context returns no local results or commercial exposure. Local category discovery and recommendations require a current precise location proof or handoff, or a saved_exact Home location. City/state, ZIP, provider IP, saved_coarse locations, and caller-supplied coordinates are neutral area context for business-name disambiguation only: they return no local category or recommendation results, cannot activate Sponsored placement, and record no impressions. Exact and genuine-prefix business-name lookup remains universal; without precise location it is commercially neutral. Sponsored share-of-voice ordering is active only within one verification class and one verified-review half-star band. Paid tier entitlement is position-weighted, every paid placement is labeled with sponsored=true, eligible Free businesses retain a 25% exposure floor, and direct entity/name lookup is exempt from rotation. Exposure-plan payment changes discovery reach and, when Sponsored ordering is active, labeled position-weighted exposure only within the same verification class and…
| Name | Type | Req | Description |
|---|---|---|---|
| allowed_action | string | — | Require a published allowed action such as recommend or call_business. |
| category | string | — | Business category or taxonomy term. Local recommendations require a current precise proof/handoff or saved_exact authority. |
| city | string | — | City context. With state, it can disambiguate a business name but cannot enable local category/recommendation reach, Sponsored placement, or impressions. |
| limit | integer | — | Maximum result count from 1 to 50. |
| location_handoff_id | string | — | Opaque current precise-location handoff approved by the consumer. It can authorize local category/recommendation reach and Sponsored exposure. Requires the same active scoped consumer-agent key that… |
| location_selection | string | — | The customer's explicit location choice. Current, or Home when reach_precision=exact, can authorize local category/recommendation discovery. Provided city/ZIP and coarse Home are neutral area context… |
| q | string | — | Free-text search across the published pool. Exact and genuine-prefix name lookup remains universal; category recommendations require precise location authority. |
| radius_miles | number | — | Requested area radius. It never substitutes for a current precise location proof/handoff or saved_exact authority. Universal name lookup may use it only as neutral context. |
| saved_location_ref | string | — | Opaque saved-location reference returned by get_location_options. Required with location_selection=saved. Only kind=saved_exact authorizes local category/recommendation reach; coarse saved kinds rema… |
| state | string | — | Two-letter US state or territory code. With city, this is neutral area context for business-name disambiguation; it is not precise local-discovery authority. |
| zip | string | — | 5-digit US ZIP (ZIP+4 accepted). Its ZCTA centroid is neutral area context for business-name disambiguation only; it cannot enable local category/recommendation reach, Sponsored placement, or impress… |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
redeem_coupon Redeem Coupon ~493
Redeem a Loppee-issued subscription coupon for a business you manage: runs the exact same validation as validate_coupon, then creates a Stripe Checkout session for the chosen paid plan WITH the discount already applied, and returns its url plus the priced breakdown (original_cents, discount_cents, final_cents) and a redemption_id. IMPORTANT: this tool never charges anyone — the business owner must open the returned url and complete payment on Stripe's hosted page; until then the redemption is 'pending' and is released automatically if the checkout expires. Redeeming counts against the code's redemption limits while pending, so do not call this speculatively — use validate_coupon to check a code. Retry-safe/idempotent for an identical pending business + code + tier + period: it returns the same redemption and live Checkout session instead of creating another. A different plan, period, or coupon is refused with billing_checkout_in_progress while the existing business Checkout remains open; no competing session is created. Requires a scoped management key whose account_id + business_id match and whose allowed_actions include redeem_coupon (owner opt-in), plus enabled online billing (billing_not_configured otherwise); call get_agent_identity first. Machine-readable failures match the owner UI exactly: coupon_not_found (invalid code), coupon_inactive, coupon_expired, coupon_wrong_plan (code is scoped to a different plan), coupon_exhausted (total redemption cap reached), coupon_customer_limit (this business already used it), coupon_requires_paid_plan, plus the standard management auth errors (missing_api_key / forbidden_account / management_rate_limited), billing_already_active, billing_checkout_in_progress, and billing_not_configured. A coupon changes the subscription PRICE only. It never changes verification class, review reputation, plan entitlement, eligibility, or quality band; completed payment grants exactly the chosen plan.
| Name | Type | Req | Description |
|---|---|---|---|
| account_id | string | yes | The agent account id this API key belongs to (confirm with get_agent_identity). |
| business_id | string | yes | The managed business to apply the coupon for. Must be within this key's allowed_business_ids. |
| code | string | yes | The coupon code exactly as issued by the Loppee team. Case- and whitespace-insensitive. |
| period | string | — | Billing period to price the plan at. |
| tier | string | yes | Paid exposure plan to price: nearby=Silver, local=Gold, regional=Platinum, metro=Diamond. |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
reply_to_customer_message Reply To Customer Message ~212
Post a reply to an inbound customer message on behalf of a business you manage. Pass the interaction_id from list_customer_messages and the reply body. client_message_id is required and makes an exact retry idempotent; reuse with different content is rejected. Requires allowed_actions include reply_to_customer_message. Requires an owner-scoped management key, explicit business scope, and the tool's permission; exposure tier does not grant or remove access. Under v3, a business owner connects an external agent they already use. Loppee provides scoped API and MCP access only; it does not provide or host that customer-connected agent. Access is available at no charge for now. The reply is stored and attributed to this agent; it does not change the verification class or review reputation.
| Name | Type | Req | Description |
|---|---|---|---|
| account_id | string | yes | — |
| body | string | yes | — |
| business_id | string | yes | — |
| client_message_id | string | yes | — |
| interaction_id | string | yes | The customer message being answered (from list_customer_messages). |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
report_review Report Review ~419
Report a customer review of a business you manage into Loppee's moderation queue for a claimed policy violation (spam, harassment, off_topic, fake, or other). IMPORTANT: reporting NEVER removes the review — the review stays published, moderation is HUMAN and REACTIVE, and a moderator removes a review only for a recorded policy violation, never for being negative. Do not use this tool to suppress honest criticism; use respond_to_review to answer it publicly. Filing a report never changes the verification class, review authority, the review's weighting, or recommendation order. Requires allowed_actions include report_review. Requires an owner-scoped management key, explicit business scope, and the tool's permission; exposure tier does not grant or remove access. Under v3, a business owner connects an external agent they already use. Loppee provides scoped API and MCP access only; it does not provide or host that customer-connected agent. Access is available at no charge for now. Call get_agent_identity first. Reportability rules: only a NEGATIVE review (rating 3 stars and below) can be reported at all — a 4-5 star review returns review_report_not_negative; only ONE report may be open at a time — while a prior report is being reviewed a new one returns review_report_already_open; and a review accepts at most 3 reports in its LIFETIME — past that the call returns review_report_limit_reached. Returns review_not_found when the review does not belong to this business and invalid_report_reason for an unknown category.
| Name | Type | Req | Description |
|---|---|---|---|
| account_id | string | yes | The managing agent's account id (from get_agent_identity). |
| business_id | string | yes | The reviewed business (must be in the key's allowed_business_ids). |
| reason_category | string | yes | Policy-violation category. 'The review is negative' is not a category — negative reviews are never removed for being negative. |
| reason_detail | string | — | What specifically violates policy (up to 2000 characters). |
| review_id | string | yes | The review being reported. |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
resolve_admin_review_anomaly Resolve Review Anomaly Flag ~88
Resolve or ignore one anomaly flag with a recorded reason and exact confirmation. Requires a team/admin-agent key with moderate_reviews. This changes only the flag; it cannot hide/remove the review, change review weight, or change a business class.
| Name | Type | Req | Description |
|---|---|---|---|
| confirm | string | yes | — |
| flag_id | string | yes | — |
| resolution_note | string | yes | — |
| status | string | yes | — |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
respond_to_review Respond To Review ~297
Publish the business's ONE public response to a customer review of a business you manage. Repeating the call EDITS the existing response in place (idempotent per review — a business never gets a second response slot). The response is public and attributed to this agent. Responding NEVER changes the verification class, review authority, the review, its rating, or its weighting — it only adds the business's side of the story under the review. Requires allowed_actions include respond_to_review. Requires an owner-scoped management key, explicit business scope, and the tool's permission; exposure tier does not grant or remove access. Under v3, a business owner connects an external agent they already use. Loppee provides scoped API and MCP access only; it does not provide or host that customer-connected agent. Access is available at no charge for now. Call get_agent_identity first. Returns review_not_found when the review does not belong to this business, and missing_response_body when body is empty.
| Name | Type | Req | Description |
|---|---|---|---|
| account_id | string | yes | The managing agent's account id (from get_agent_identity). |
| body | string | yes | The public response text (up to 2000 characters, same cap as the owner dashboard). |
| business_id | string | yes | The reviewed business (must be in the key's allowed_business_ids). |
| review_id | string | yes | The review being answered (review ids appear in the business's review notifications and dashboard payload). |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
revoke_my_key Revoke My Key ~211
Immediately and irreversibly revoke the API key THIS call authenticates with — the agent-side 'delete my key' for connection hygiene (e.g. the key may be exposed, the integration is being retired, or the user asked to disconnect). Possession of the key is the authorization: it can only ever revoke itself, never another key or account, and it removes access rather than granting any. Takes effect on the next request (key validation is a live database check, so there is no cache window). The revocation is written to the audit log before the key is disabled. Requires confirm:true — without it the tool returns confirm_required and changes nothing. A new key can only be issued by the account's human owner from their Loppee dashboard (or by an admin); this tool cannot mint keys. Operator keys configured in the server environment return env_key_not_revocable. Call get_agent_identity first if you need to confirm which account and label this key belongs to.
| Name | Type | Req | Description |
|---|---|---|---|
| confirm | boolean | yes | — |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
save_business Save Business ~204
Attach a published business or directory listing to a customer/service-agent account workflow (a shortlist — it does not contact the business). The shortlist round-trips: read it back with list_saved_businesses and prune entries with unsave_business. Requires a valid scoped agent API key whose account_id matches the account_id argument and whose allowed_actions include save_business; call get_agent_identity first to confirm scope. Idempotent: saving the same business twice is a no-op. Saving never affects the business's verification class, review authority, review reputation, or recommendation eligibility. Returns a machine-readable auth error (missing_api_key / forbidden_account) when the key is absent or out of scope.
| Name | Type | Req | Description |
|---|---|---|---|
| account_id | string | yes | — |
| business_id | string | yes | — |
| business_name | string | yes | — |
| business_source | string | yes | — |
| category | string | — | — |
| city | string | — | — |
| notes | string | — | — |
| state | string | — | — |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.
search_businesses Search Businesses ~856
Search Loppee's closed taxonomy or use universal business-name lookup. A customer personal agent first calls get_location_options and asks exactly: "Where should I search? For local categories, share your current location or use Home only when it is marked exact. Another city/ZIP is for area context or business-name lookup only." Use current, or saved only when the returned kind is saved_exact, for local category discovery. Provided city/ZIP and coarse Home are name-disambiguation context only. Other personas cannot access customer location authority and therefore cannot run local category discovery. Never infer a choice or expose coordinates. Local category discovery and recommendations require a current precise location proof or handoff, or a saved_exact Home location. City/state, ZIP, provider IP, saved_coarse locations, and caller-supplied coordinates are neutral area context for business-name disambiguation only: they return no local category or recommendation results, cannot activate Sponsored placement, and record no impressions. Exact and genuine-prefix business-name lookup remains universal; without precise location it is commercially neutral. Exposure-plan payment changes discovery reach and, when Sponsored ordering is active, labeled position-weighted exposure only within the same verification class and verified-review reputation band. It never changes business-profile publication, verification, review authority, reputation, moderation, class ordering, or reputation band. Loppee Jobs is a separate optional paid product; its billing affects job-posting activation only and never business verification or directory ranking.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | — | Taxonomy category alias or category term. Resolved categories require current precise-location authority or saved_exact; coarse context returns no local results. |
| city | string | — | City context. With state, it can disambiguate a business name but cannot enable local category/recommendation reach, Sponsored placement, or impressions. |
| cursor | string | — | Opaque cursor returned in next_cursor by the previous v3 search page. Omit for the first page. |
| include_directory_listings | boolean | — | Include honestly labeled, unverified directory listings for discovery. |
| intent | string | — | Routing hint: auto resolves taxonomy first; category and name force their respective lanes. |
| limit | integer | — | Maximum result count from 1 to 50. |
| location_handoff_id | string | — | Opaque current precise-location handoff approved by the consumer. It can authorize local category/recommendation reach and Sponsored exposure. Requires the same active scoped consumer-agent key that… |
| location_selection | string | — | The customer's explicit location choice. Current, or Home when reach_precision=exact, can authorize local category/recommendation discovery. Provided city/ZIP and coarse Home are neutral area context… |
| q | string | — | Free-text search. Category terms auto-route to precise-location-gated discovery; otherwise exact and genuine-prefix business-name lookup is universal and commercially neutral without precise location. |
| radius_miles | number | — | Requested area radius. It never substitutes for a current precise location proof/handoff or saved_exact authority. Universal name lookup may use it only as neutral context. |
| saved_location_ref | string | — | Opaque saved-location reference returned by get_location_options. Required with location_selection=saved. Only kind=saved_exact authorizes local category/recommendation reach; coarse saved kinds rema… |
| state | string | — | Two-letter US state or territory code. With city, this is neutral area context for business-name disambiguation; it is not precise local-discovery authority. |
| zip | string | — | 5-digit US ZIP (ZIP+4 accepted). Its ZCTA centroid is neutral area context for business-name disambiguation only; it cannot enable local category/recommendation reach, Sponsored placement, or impress… |
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | string | yes | — |
| data | object | — | — |
| error | object | — | — |
| ok | boolean | yes | — |
No examples provided.