MCP Sourcify Server
Verify and retrieve smart contract source code using the Sourcify API.
MCP Sourcify Server
A Model Context Protocol (MCP) server that provides tools for interacting with the Sourcify API to verify and retrieve smart contract source code.
Overview
This MCP server enables LLMs to interact with Sourcify, a decentralized repository of verified smart contract source code. It provides tools to check contract verification status, retrieve source code, and access contract metadata across multiple blockchain networks.
Features
- Check Contract Verification: Verify if a contract is registered on Sourcify
- Get Contract Source: Retrieve the complete source code of verified contracts
- Get Contract Metadata: Access compiler settings and ABI information
- Batch Verification: Check multiple contracts in a single request
Installation
# Clone the repository
git clone <repository-url>
cd mcp-sourcify
# Install dependencies
npm install
# Build the project
npm run build
Configuration
The server can be configured using environment variables:
SOURCIFY_API_URL: The Sourcify API endpoint (default:https://sourcify.dev/server)PORT: Server port (default: 3000) - Note: This is not used in stdio mode
Usage
With Claude Desktop
Add the following to your Claude Desktop configuration file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"sourcify": {
"command": "node",
"args": ["/path/to/mcp-sourcify/dist/index.js"]
}
}
}
With VS Code
Install the MCP extension for VS Code and add the server configuration to your workspace settings.
Direct Usage (Development)
# Run in development mode
npm run dev
# Or run the built version
npm start
Available Tools
1. check-contract
Check if a contract is verified on Sourcify.
Parameters:
chainId(number): The blockchain chain IDaddress(string): The contract address to check
Returns: Verification status (perfect, partial, or false)
2. get-contract-source
Retrieve the source code of a verified contract.
Parameters:
chainId(number): The blockchain chain IDaddress(string): The contract address
Returns: Object with file names as keys and source code as values
3. get-contract-metadata
Get the metadata of a verified contract including compiler settings and ABI.
Parameters:
chainId(number): The blockchain chain IDaddress(string): The contract address
Returns: Contract metadata including compiler version, ABI, and settings
4. check-multiple-contracts
Check verification status for multiple contracts at once.
Parameters:
chainId(number): The blockchain chain IDaddresses(array): Array of contract addresses to check
Returns: Array of verification statuses
Example Usage
Once configured, you can use natural language to interact with Sourcify through your MCP-enabled client:
"Check if contract 0x1234... on Ethereum mainnet (chain 1) is verified on Sourcify"
"Get the source code for contract 0x5678... on Polygon (chain 137)"
"Show me the ABI for contract 0xabcd... on Arbitrum (chain 42161)"
Supported Networks
This server supports all networks that are supported by Sourcify. Common chain IDs include:
- Ethereum Mainnet: 1
- Goerli: 5
- Polygon: 137
- Arbitrum: 42161
- Optimism: 10
- BSC: 56
For a complete list, visit Sourcify's supported chains.
Development
# Watch mode for development
npm run watch
# Build the project
npm run build
# Run type checking
tsc --noEmit
Error Handling
The server includes comprehensive error handling for:
- Invalid contract addresses
- Unsupported chain IDs
- Network timeouts
- Contracts not found in Sourcify
License
ISC
Contributing
Contributions are welcome! Please submit pull requests or open issues for any improvements or bug fixes.
संबंधित सर्वर
Scout Monitoring MCP
प्रायोजकPut performance and error data directly in the hands of your AI assistant.
Alpha Vantage MCP Server
प्रायोजकAccess financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
Wopee MCP
AI testing agents for web apps — dispatch test runs, analysis crawls, and AI agent tests, fetch artifacts and project status
Sentry MCP Server
An MCP server for interacting with the Sentry error tracking and performance monitoring platform.
MCP Android Agent
Automate Android devices using the uiautomator2 library, requiring adb and a connected device.
TUUI - Tool Unitary User Interface
A desktop MCP client for tool integration and cross-vendor LLM API orchestration.
Better Auth
Enterprise-grade authentication with secure credential management, multi-protocol support, and real-time threat detection.
ServiceNow
A production-ready Model Context Protocol (MCP) server for ServiceNow platform integration. Built with TypeScript for Node.js 20+, this server enables LLMs and AI assistants to interact with ServiceNow instances through a standardized interface.
mcpproxy-go
Open-source local MCP proxy server. Routes multiple MCP servers through a single endpoint with BM25 tool filtering, quarantine security, activity logging, and web UI.
Authless Remote MCP Server
An authentication-free, remote MCP server designed for deployment on Cloudflare Workers.
Godot RAG
Provides Godot documentation to a RAG model using a vector database.
Kirha MCP Gateway
An MCP server that provides seamless access to Kirha AI tools.