Skip to main content
Glama
jakejackson910

license-verifier-mcp

License Verifier MCP Server 🪙

50-state professional license verification for AI agents.

Why This Exists

Every healthcare transaction, real estate deal, or legal engagement requires verifying professional licenses. Today that means manually checking 50+ different state websites — each with different interfaces, data formats, and quirks.

This MCP server wraps all 50 state licensing boards into a single, unified API that any AI agent can call.

Related MCP server: domain-expertise-mcp

Features

  • Unified Schema: Consistent response format regardless of source state

  • 50-State Coverage: Physicians, nurses, lawyers, contractors, real estate agents

  • Multi-Profession: Medical, Legal, Nursing, Pharmacy, Dental, and more

  • Real-Time Verification: Direct queries to state boards (with caching)

  • Disciplinary Actions: Includes suspensions, revocations, board orders

  • x402 Micropayments: Pay-per-call via Base USDC

Supported Professions

Profession

States

Status

Physicians (MD/DO)

CA, TX, FL, NY

🟢 Live

Attorneys

CA

🟢 Live

Nurses (RN/LPN)

CA, TX, FL, NY

🟢 Live

Physician Assistants

CA, TX, FL, NY

🟢 Live

Pharmacists

CA, FL, NY

🟡 Beta

Dentists

CA, FL

🟡 Beta

Tools

verify_license

Verify a specific license in a specific state.

{
  "state": "CA",
  "licenseNumber": "A12345",
  "licenseType": "MD"
}

search_license

Search for a license across multiple states.

{
  "name": "John Smith",
  "licenseType": "MD",
  "states": ["CA", "TX", "NY"]
}

list_supported_states

List all supported states and their capabilities.

Pricing

Tier

Price

Calls

Free

$0

100/month

Pro

$49/mo

10,000/month

Pay-per-call

$0.50-$1.50

x402 micropayment

Installation

npm install license-verifier-mcp

Usage

Add to your MCP client config:

{
  "mcpServers": {
    "license-verifier": {
      "command": "npx",
      "args": ["license-verifier-mcp"]
    }
  }
}

Roadmap

  • MCP server scaffold

  • State mapping (research)

  • California DCA API integration

  • Texas scraper

  • Florida scraper

  • New York scraper

  • x402 payment middleware

  • Smithery listing

  • Remaining 46 states

License

MIT


Built by Mint 🪙

Available Tools

3 tools
list_supported_statesA

List all states currently supported for license verification, with their capabilities.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. The verb 'List' implies a read-only operation, and the phrase 'with their capabilities' adds context about output content. However, it does not explicitly state non-destructive behavior or return format details, leaving some behavioral aspects unstated.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that front-loads the action and resource. Every word contributes meaning, with no redundancy or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a low-complexity tool with no parameters and no output schema, the description is mostly complete. It communicates what is listed and that capabilities are included. However, the ambiguity around 'states' (e.g., US states vs. others) and the nature of 'capabilities' leaves minor gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the baseline is 4. The description adds value by mentioning that the list includes capabilities, which suggests the output will provide more than just state names, but there is no need to explain parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('List') and resource ('states') with a clear scope ('supported for license verification'). It clearly distinguishes itself from the sibling tools verify_license and search_license by indicating it enumerates supported states rather than performing verification or searching.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for checking which states are supported, but it does not explicitly state when to use this tool versus the sibling tools or mention any exclusions. There is no direct alternative guidance, so the context is only implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_licenseA

Search for a professional license across multiple states. Useful when you don't know which state issued the license.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoLicensee name to search
statesNoStates to search (defaults to all 50)
licenseTypeNoLicense typeMD
licenseNumberNoLicense number to search

TDQS

A3.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It only states the scope and use case but does not describe any behavioral traits such as whether it requires either name or license number, returns results from multiple states, or has any side effects. This is a significant gap for a search tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no extraneous information; it is front-loaded with the action and resource, and the use-case sentence earns its place. Perfectly concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple search tool with full schema coverage, the description provides the core purpose and a usage hint. However, it lacks any mention of return value, input requirements, or result behavior, and with no annotations, it doesn't fully cover the context. It is minimally adequate but has gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description adds context that the states parameter can be omitted when the state is unknown, reinforcing the default to all states. This adds meaningful behavior beyond the schema descriptions, warranting a 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool searches for a professional license across multiple states, with a specific verb and resource. It also distinguishes itself from siblings by emphasizing the multi-state scope and the use case of unknown state, differentiating from verify_license.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear context for when to use this tool ('when you don't know which state issued the license'), indicating the appropriate scenario. However, it does not explicitly mention alternatives or exclusion criteria, such as using verify_license when the state is known.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

verify_licenseA

Verify a professional license in a specific state. Returns license status, holder name, issue/expiration dates, and any disciplinary actions.

ParametersJSON Schema
NameRequiredDescriptionDefault
stateYesTwo-letter state code (e.g., CA, TX, NY)
licenseTypeNoLicense type (e.g., MD, DO, RN, PA)MD
licenseNumberYesLicense number to verify

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It clearly states what the tool returns (license status, holder name, issue/expiration dates, disciplinary actions), implying a read-only verification operation. It does not mention failure modes or data source, but the return specification is meaningful.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one sentence, front-loaded with the core action and scope, followed by a precise list of return fields. No filler or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 3-parameter tool with no output schema or annotations, the description provides sufficient context about what the verification does and what it returns. It is complete enough to choose and invoke, though it could add guidance on invalid license numbers or supported license types.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description adds no extra parameter information beyond the schema; state and licenseNumber are self-explanatory, and licenseType default is documented in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly identifies the action (verify), the resource (professional license), and the scope (specific state). It also lists the returned data (status, holder name, dates, disciplinary actions), which clearly distinguishes it from the sibling search_license and list_supported_states tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies this tool is for verifying a specific license in a state, but it does not explicitly state when to choose it over search_license or how it differs. No exclusions or alternatives are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 3 tool updatesv0.1.0
    • First observedlist_supported_states
    • First observedsearch_license
    • First observedverify_license

TDQS

A4.3/5.0

Scored across 3 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: verify_license for a known state, search_license for unknown states, and list_supported_states for metadata. There is no overlap or ambiguity between them.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern with lowercase and underscores (verify_license, search_license, list_supported_states). This predictable structure makes the API easy to navigate.

Tool Count5/5

Three tools are well-scoped for a license verification service. Each tool serves a necessary function without unnecessary bloat, and the count fits comfortably within the ideal 3-15 range.

Completeness5/5

The tool set fully covers the core workflow: verify a known license, search when the state is unknown, and check supported states. There are no obvious missing operations for the stated domain.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Real-time contractor license verification across 45 US states. Verifies license status, expiration, and disciplinary history directly against state licensing board portals.
    4
    61
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Injects structured professional domain expertise into AI agents, providing access to decision frameworks, workflows, terminology, and regulatory context across 24 professional domains.
    73
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Enables AI agents to verify and search business entities across US state and international company registries, providing real-time confirmation of legal existence, status, and filings.
    9
    MIT