{
  "name": "ng.speedmap/connect",
  "server_name": "speedmap-connect",
  "title": "Speedmap Connect: Nigerian identity verification",
  "description": "Identity verification MCP server for Nigeria. Verify NIN, BVN, CAC businesses (KYB), bank account names, documents, face liveness, fraud signals and AML sanctions and PEP lists. Tools return assertions only: a NIN never enters the AI context window.",
  "version": "1.0.0",
  "url": "https://api.speedmap.ng/mcp",
  "transport": {
    "type": "streamable-http",
    "stateless": true,
    "methods": [
      "POST"
    ],
    "response": "json"
  },
  "authentication": {
    "type": "bearer",
    "scheme": "http",
    "header": "Authorization",
    "format": "Bearer sk_test_... | Bearer sk_live_...",
    "description": "Speedmap secret API key. sk_test_ keys run in test mode (deterministic data, free); sk_live_ keys query NIMC and NIBSS channels and are billed. New accounts start in test mode and switch live after the compliance review.",
    "signup_url": "https://speedmap.ng/dashboard/keys"
  },
  "capabilities": {
    "tools": true,
    "resources": false,
    "prompts": false
  },
  "tools": [
    {
      "name": "verify_nin",
      "description": "Check a National Identity Number against NIMC. Returns verified/not_found, whether supplied name and date of birth match, and a masked name. Never returns the identity record."
    },
    {
      "name": "verify_bvn",
      "description": "Check a Bank Verification Number through NIBSS. Returns only whether the supplied name and/or date of birth match the BVN record. No PII is returned."
    },
    {
      "name": "verify_business",
      "description": "Look up a CAC-registered company by RC number, TIN or exact name. Returns company name, registration status, type and registration date."
    },
    {
      "name": "verify_account",
      "description": "NIBSS name enquiry on a 10-digit NUBAN account. Returns whether the expected holder name matches and a masked account name. Use list_banks for bank codes."
    },
    {
      "name": "face_match",
      "description": "Passive liveness on a selfie, optionally compared with the photo on a BVN record (NIBSS N-Face). Returns pass/fail and confidence scores only."
    },
    {
      "name": "verify_document",
      "description": "OCR and validate a Nigerian identity document (NIN slip or card, international passport, driver's licence, voter's card) from image URLs. NIN documents are cross-checked with NIMC; a selfie URL enables a face match against the printed portrait. Returns pass/fail, masked document number, field matches and fraud flags only."
    },
    {
      "name": "check_signals",
      "description": "One risk score (0-100) from SIM-swap recency, recent BVN demographic changes and watchlist status. Returns risk flags only."
    },
    {
      "name": "screen_aml",
      "description": "Screen a person or company against UN, OFAC, EU, UK and Nigerian sanctions lists, PEP data and adverse media. Returns risk (clear / potential_match / match), masked hit names, scores and the lists screened."
    },
    {
      "name": "bulk_verify",
      "description": "Queue many checks of one product. Returns a job id and dashboard link only; results are never returned into the conversation. Each item uses the same fields as the REST API for that product."
    },
    {
      "name": "get_bulk_job",
      "description": "Progress and outcome counts for a bulk job. Never returns rows."
    },
    {
      "name": "get_verification",
      "description": "Fetch the status and assertion for an earlier check by its reference_id (e.g. to resolve a pending result)."
    },
    {
      "name": "request_consent",
      "description": "Create a consent request (NIBSS Consent Hub) the person approves by link, email or USSD on any phone. Needed before a full BVN record check. Returns a link and USSD code to share with them."
    },
    {
      "name": "list_reasons",
      "description": "The 38 NIMC purpose codes accepted as reason on identity checks."
    },
    {
      "name": "list_banks",
      "description": "Bank names and CBN codes for verify_account."
    }
  ],
  "guarantees": [
    "Assertions by default: no NIN, BVN or identity record is returned to the model.",
    "reason is a constrained enum of 38 NIMC purpose codes; an agent cannot invent a purpose.",
    "Consent is required before any check that touches personal data.",
    "Bulk never returns rows inline; results stay in the dashboard and webhooks.",
    "Test mode (sk_test_) and live mode (sk_live_) are separate."
  ],
  "packages": [
    {
      "registry": "npm",
      "name": "@speedmap/mcp",
      "transport": "stdio",
      "run": "npx -y @speedmap/mcp",
      "env": [
        "SPEEDMAP_API_KEY"
      ]
    }
  ],
  "provider": {
    "name": "Speedmap",
    "url": "https://speedmap.ng",
    "country": "NG",
    "about": "https://speedmap.ng/company"
  },
  "links": {
    "homepage": "https://speedmap.ng/connect",
    "documentation": "https://speedmap.ng/docs/mcp",
    "openapi": "https://api.speedmap.ng/openapi.json",
    "llms_txt": "https://speedmap.ng/llms.txt",
    "llms_full_txt": "https://speedmap.ng/llms-full.txt",
    "agent_card": "https://speedmap.ng/.well-known/agent.json",
    "repository": "https://github.com/speedily/speedmap",
    "npm": "https://www.npmjs.com/package/@speedmap/mcp",
    "privacy": "https://speedmap.ng/legal/privacy",
    "terms": "https://speedmap.ng/legal/terms",
    "security": "https://speedmap.ng/security",
    "support": "mailto:developers@speedmap.ng"
  }
}
