# Lighthouse Explorer MCP Server
An MCP (Model Context Protocol) server for the **5N Lighthouse Explorer API** at [lighthouse.cantonloop.com](https://lighthouse.cantonloop.com).
## Overview
This server provides AI assistants (Claude, etc.) with tools to query the Canton Network via the Lighthouse Explorer. It covers CNS (Canton Name Service), governance, validators, parties, contracts, transfers, prices, and more.
**No API key required** — this is a public API.
## API Status Summary
| Status | Count | Description |
|--------|-------|-------------|
| ✅ Working | 27 | Tested and working reliably |
| ⚠️ API Limit | 4 | Endpoints don't exist on public API |
| 🐛 API Bug | 1 | Server-side bug (transfer_get) |
**Total: 28 tools defined**
## Installation
```bash
# Clone the repo
git clone https://github.com/agenticledger/ClientMCP_LIGHTHOUSE_MCPSERVER.git
cd ClientMCP_LIGHTHOUSE_MCPSERVER
# Install dependencies
npm install
# Build
npm run build
```
## Configuration
No API key required! Just configure Claude Desktop:
### Claude Desktop Configuration
Add to your `claude_desktop_config.json`:
```json
{
"mcpServers": {
"lighthouse": {
"command": "node",
"args": ["/path/to/lighthouse-mcp-server/dist/index.js"]
}
}
}
```
## Available Tools (28 total)
### CNS - Canton Name Service (2 tools)
| Tool | Description |
|------|-------------|
| `cns_list` | List CNS records with pagination |
| `cns_get` | Get a CNS record by domain name |
### Contracts (2 tools)
| Tool | Description |
|------|-------------|
| `contracts_list` | List contracts with pagination |
| `contract_get` | Get contract details by contract_id (hex) |
### Featured Apps (1 tool)
| Tool | Description |
|------|-------------|
| `featured_apps_get` | Get list of featured applications |
### Governance (3 tools)
| Tool | Description |
|------|-------------|
| `governance_list` | List all governance vote requests |
| `governance_stats` | Get governance statistics |
| `governance_get` | Get vote request details by ID |
### Party (8 tools)
| Tool | Description |
|------|-------------|
| `party_balance` | Get CC balance for a party |
| `party_burns` | List burns for a party |
| `party_pnl` | Get profit/loss data |
| `party_rewards` | List rewards earned |
| `party_burn_stats` | Aggregated burn stats |
| `party_reward_stats` | Aggregated reward stats |
| `party_transfers` | List party transfers |
| `party_transactions` | List party transactions |
### Preapprovals (1 tool)
| Tool | Description |
|------|-------------|
| `preapprovals_list` | List preapproval records |
### Prices (2 tools)
| Tool | Description |
|------|-------------|
| `price_get` | Get latest CC price in USD |
| `price_history` | Get 24-hour price history |
### Rounds (2 tools)
| Tool | Description |
|------|-------------|
| `rounds_list` | List consensus rounds |
| `round_get` | Get round details by number |
### Search (1 tool)
| Tool | Description |
|------|-------------|
| `search` | Universal search across entities |
### Stats (1 tool)
| Tool | Description |
|------|-------------|
| `stats_get` | Get chain statistics |
### Transactions (2 tools)
| Tool | Description |
|------|-------------|
| `transactions_list` | List transactions |
| `transaction_get` | Get transaction by update ID |
### Transfers (1 tool)
| Tool | Description |
|------|-------------|
| `transfers_list` | List all transfers |
### Validators (2 tools)
| Tool | Description |
|------|-------------|
| `validators_list` | Get all validators |
| `validator_get` | Get validator details by ID |
## Usage Examples
### Get Network Stats
```
Use the stats_get tool to see current chain statistics
```
### Check CC Price
```
Use price_get to get the latest CC price in USD
```
### Search for a Party
```
Use search with q="Cumberland" to find parties by name
```
### Get Party Balance
```
Use party_balance with id="Global-Synchronizer-Foundation::1220b086..." to check CC balance
```
## Testing
Run the test suite:
```bash
npm test
```
## Project Structure
```
lighthouse-mcp-server/
├── src/
│ ├── api-client.ts # HTTP client for Lighthouse API
│ ├── tools.ts # MCP tool definitions (28 tools)
│ └── index.ts # Server entry point
├── test/
│ └── test-tools.ts # Automated test suite
├── docs/
│ ├── index.html # Interactive API docs
│ └── TEST-RESULTS.md # Test results
├── dist/ # Compiled JavaScript
├── package.json
├── tsconfig.json
└── README.md
```
## Known Limitations
### Endpoints Not Available (4)
- `/sv` (super validators) - use `/validators` instead
- `/me` (participant info) - not on public API
- `/stats/rounds/latest` - endpoint removed
- `transfer_get` - API returns HTTP 500 (bug)
### Data Limitations
- **CNS:** No Canton Name Service records currently exist
- **party_balance:** Some parties return 500 if no balance data (use Super Validator IDs)
## Links
- [Lighthouse Explorer](https://lighthouse.cantonloop.com) - Canton Network Explorer
- [CantonLoop](https://cantonloop.com) - Provider
- [Canton Network](https://canton.network) - Learn about Canton
- [API Docs](https://lighthouse.cantonloop.com/swagger/index.html) - Swagger/OpenAPI
## License
MIT
## Author
Ore Phillips ([@oregpt](https://github.com/oregpt))