{"serverId":"mcp-registry/ai.licensy/mcp-server","tools":[{"name":"get_license_history","fixed":{"name":"get_license_history","description":"Return a physician's license status as it was on a specific past date (point-in-time / retroactive lookup).\n\nUse this when:\n - Insurance company asks 'was this physician licensed when they treated patient X on 2024-08-12?'\n - Legal discovery for a malpractice case\n - Retroactive credentialing audit\n\nInput: NPI + state + as_of_date (ISO 8601).\n\nCoverage caveat: full append-only license history is on the roadmap. v1 returns best-available data and a `coverage_start` date marking the earliest relia","inputSchema":{"type":"object","required":["inp"],"properties":{"inp":{"type":"object","required":["npi","state","as_of_date"],"properties":{"npi":{"type":"string","pattern":"^\\d{10}$"},"state":{"type":"string","maxLength":20,"minLength":2},"as_of_date":{"type":"string","description":"ISO 8601 date (YYYY-MM-DD)."}}}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":252,"tokensAfter":252},{"name":"get_license_status","fixed":{"name":"get_license_status","description":"Return only the license status string for a single physician in a single state. The minimal-output companion to verify_license: optimized for agents that need only a yes/no decision and want to minimize tokens in the LLM context.\n\nUse this when:\n - You need a one-word answer for routing logic (active vs anything else)\n - You're checking a license inside a tight inner loop\n - You want to minimize tokens spent on auxiliary fields\n\nUse verify_license instead when you need expiration date, license_a","inputSchema":{"type":"object","required":["inp"],"properties":{"inp":{"type":"object","required":["npi","state"],"properties":{"npi":{"type":"string","pattern":"^\\d{10}$"},"state":{"type":"string","maxLength":20,"minLength":2}}}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":227,"tokensAfter":227},{"name":"get_screenshot_url","fixed":{"name":"get_screenshot_url","description":"Return an audit-grade screenshot of the state medical board page used to verify a physician's license. The URL is signed and valid for 15 minutes.\n\nUse this when:\n - You need primary-source evidence for an audit, credentialing file, or insurance contract\n - The end user asks 'where did this come from?'\n - You're generating a credentialing PDF that needs proof attachments\n\nIdentify the license by: NPI + state, OR by `license_id` if you already fetched it via verify_license / list_physician_licens","inputSchema":{"type":"object","required":["inp"],"properties":{"inp":{"type":"object","properties":{"npi":{"anyOf":[{"type":"string","pattern":"^\\d{10}$"},{"type":"null"}],"default":null},"state":{"anyOf":[{"type":"string","maxLength":20,"minLength":2},{"type":"null"}],"default":null},"license_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Licensy internal license_id. Use this when you previously fetched a license via verify_license and want the screenshot for that exact row."}}}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":307,"tokensAfter":307},{"name":"list_physician_licenses","fixed":{"name":"list_physician_licenses","description":"List all U.S. medical licenses Licensy has on file for a single physician (by NPI), one per state. Each entry shows current status and expiration date.\n\nUse this when:\n - Surveying a physician's multi-state license portfolio\n - Recredentialing across multiple states at once\n - Checking which states a physician is licensed in\n\nDo NOT use this for:\n - A single-state yes/no — use get_license_status (cheaper)\n - Bulk verification across multiple NPIs — use bulk_verify\n\nInput: NPI (10 digits). Option","inputSchema":{"type":"object","required":["inp"],"properties":{"inp":{"type":"object","required":["npi"],"properties":{"npi":{"type":"string","pattern":"^\\d{10}$","description":"10-digit NPI."},"include_inactive":{"type":"boolean","default":false,"description":"If true, include expired/lapsed/inactive licenses in the response."}}}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":258,"tokensAfter":258},{"name":"search_disciplinary_actions","fixed":{"name":"search_disciplinary_actions","description":"Search for known disciplinary actions against a physician (suspension, revocation, surrender, probation). Sourced from state medical board status text.\n\nUse this when:\n - Pre-employment screening\n - Recredentialing — required by most insurance contracts\n - Investigating a referral source\n\nInput: NPI (preferred) OR full name. Optional state filter.\nOutput: array of {state, action_type, date, source_url}. Action types: suspension | revocation | surrender | probation | reprimand | other.\n\nCoverage ","inputSchema":{"type":"object","required":["inp"],"properties":{"inp":{"type":"object","properties":{"npi":{"anyOf":[{"type":"string","pattern":"^\\d{10}$"},{"type":"null"}],"default":null},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Full name; required if npi not provided."},"state":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Optional state filter."}}}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":284,"tokensAfter":284},{"name":"unsubscribe","fixed":{"name":"unsubscribe","description":"Cancel a webhook subscription you previously created via subscribe_to_changes. Paid tier only (Pro or Enterprise).\n\nUse this when the agent's workflow that wanted the events has completed, or the customer wants to stop receiving change-notifications for a set of NPIs.\n\nInput: subscription_id (string, returned from subscribe_to_changes).\nOutput: {success: true} on cancellation.\n\nIdempotent — repeat calls with the same id return success without error.","inputSchema":{"type":"object","required":["inp"],"properties":{"inp":{"type":"object","required":["subscription_id"],"properties":{"subscription_id":{"type":"string"}}}},"additionalProperties":false},"annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":false}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: false, destructiveHint: true, idempotentHint: false (inferred from the name).","verify":true}],"tokensBefore":195,"tokensAfter":195}],"toolsChanged":6,"tokensSaved":0,"todo":[{"tool":"bulk_verify","params":["inp"]},{"tool":"get_license_history","params":["inp"]},{"tool":"get_license_status","params":["inp"]},{"tool":"get_screenshot_url","params":["inp"]},{"tool":"list_physician_licenses","params":["inp"]},{"tool":"search_disciplinary_actions","params":["inp"]},{"tool":"subscribe_to_changes","params":["inp"]},{"tool":"unsubscribe","params":["inp"]},{"tool":"verify_license","params":["inp"]}],"note":"Deterministic fixes. Changes marked verify need a human look before shipping (renames, inferred annotations, inferred types, removed text). Parameter descriptions in `todo` need to be written by someone who knows the API."}