BICScan MCP Server: Blockchain Address Risk Scoring
Analyze blockchain addresses with the BICScan MCP server to obtain comprehensive risk scores, asset details and domain/dApp assessments via API
npx -y @ahnlabio/bicscan-mcpOverview
BICScan MCP Server integrates the BICScan risk-scanning API into a Model Context Protocol (MCP) server that can be run locally or inside Docker. It provides on-demand blockchain address risk scoring, asset holdings enumeration, and domain/dApp assessments so developer tools, chat assistants, and automated workflows can quickly surface on-chain risk signals without embedding the remote API directly.
This server is most useful for developers building AML/Compliance pipelines, security dashboards, DeFi monitoring, or any application that needs quick, programmatic insights on addresses and smart-contract endpoints. The MCP server acts as a small adapter around the BICScan API with built-in configuration for running in Claude Desktop (MCP) environments or as a standalone container.
Features
- Risk scoring (0–100): aggregated risk scores for addresses, domains, and dApp URLs (100 = high risk).
- Asset inventory: list of native balances, ERC-20/ERC-721 token holdings and summarized fiat values across supported chains.
- Domain & dApp checks: reputation and metadata for domains and decentralized application URLs.
- Real-time queries: forwards requests to BICScan to fetch up-to-date results.
- Simple integration: runs with uv / uvx (for Claude Desktop) or Docker.
- Configurable via environment variable BICSCAN_API_KEY.
- Robust logging and error handling for predictable responses.
Installation / Configuration
Prerequisites
- Python 3.10+
- uv 0.6.x (for uv/uvx runs) or Docker (for container runs)
- git
Clone the repository:
Get a free BICScan API key:
- Register at https://bicscan.io
- In your profile create an application and copy the API key.
Environment variable
Run with uv (local, recommended for development)
Run with Docker
# build
# run (replace API key)
Run with uvx (pull and run from Git)
Claude Desktop MCP configuration examples Add a bicscan entry to your claude_desktop_config.json (uv example):
Docker entry:
uvx entry:
Table: run modes at a glance
| Mode | Requirement | How to supply API key |
|---|---|---|
| uv | Python + uv | env.BICSCAN_API_KEY in claude_desktop_config.json |
| uvx | uvx tool | env.BICSCAN_API_KEY in claude_desktop_config.json |
| Docker | Docker daemon | docker run –env BICSCAN_API_KEY=… |
Available Resources
- GitHub repository: https://github.com/ahnlabio/bicscan-mcp
- BICScan portal (get API key and docs): https://bicscan.io
- Example integration: claude_desktop_config.json snippets (see above)
The MCP server itself exposes the scanning functionality to the MCP consumer (e.g., Claude Desktop) and forwards requests to BICScan. Use the repository to inspect implementation, logging, and response mapping.
Example output (representative)
A typical scan response returned by the server might look like:
Fields may include additional metadata such as chain name, contract labels, and links to the BICScan report.
Use Cases
- AML / Compliance: screen incoming wallet addresses against risk scores before onboarding or accepting deposits.
- Automated monitoring: set up cron jobs that call the MCP server to re-scan high-value addresses and trigger alerts on score changes.
- KYC investigations: enrich off-chain identity data with on-chain asset snapshots and domain/dApp reputations.
- Smart-contract audits / DeFi integrations: vet counterparty addresses and dApp endpoints prior to integration or liquidity provisioning.
Concrete example (address screening)
- Run the