Provides extensible onchain tools and third-party protocol integration for AI applications to interact with blockchain networks via the Model Context Protocol, enabling wallet management, smart contract deployment, fund transfers, and reputation checks.
Unlock the full potential of Hashkey MCP Server through LangDB's AI Gateway. Get enterprise-grade security, analytics, and seamless integration with zero configuration.
Free tier available • No credit card required
Discover shared experiences
!OpenRouter Integration
A Model Context Protocol (MCP) server that provides onchain tools for AI applications like Claude Desktop and Cursor, allowing them to interact with the Hashkey Network.
Hashkey MCP is designed to be extensible, allowing you to add your own third-party protocols, tools, and data sources. This section provides an overview of how to extend the Hashkey MCP server with new capabilities.
If you want to add a new tool to the Hashkey MCP server, follow these steps:
src/tools
directory for your toolindex.ts
: Define and export your toolsschemas.ts
: Define input schemas for your toolshandlers.ts
: Implement the functionality of your toolssrc/tools/index.ts
The Hashkey MCP server follows this structure for tools:
src/
├── tools/
│ ├── index.ts (exports toolsets)
│ ├── [TOOL_NAME]/ Settings > Developer > Edit Config.
2. Add the following configuration:
```json
{
"mcpServers": {
"hashkey-mcp": {
"command": "npx",
"args": ["-y", "hashkey-mcp@latest"],
"env": {
"COINBASE_API_KEY_NAME": "your_api_key_name",
"COINBASE_API_PRIVATE_KEY": "your_private_key",
"SEED_PHRASE": "your seed phrase here",
"COINBASE_PROJECT_ID": "your_project_id",
"ALCHEMY_API_KEY": "your_alchemy_api_key",
"PINATA_JWT": "your_pinata_jwt",
"OPENROUTER_API_KEY": "your_openrouter_api_key",
"CHAIN_ID": "177"
},
"disabled": false,
"autoApprove": []
}
}
}
Retrieves the address for your wallet.
Example query to Claude:
Lists all balances for your wallet.
Example query to Claude:
Transfers funds from your wallet to another address.
Parameters:
destination
: The address to which to transfer fundsassetId
: The asset ID to transferamount
: The amount of funds to transferExample query to Claude:
Deploys a smart contract to the blockchain.
Parameters:
constructorArgs
: The arguments for the contract constructorcontractName
: The name of the contract to deploysolidityInputJson
: The JSON input for the Solidity compiler containing contract source and settingssolidityVersion
: The version of the solidity compilerExample query to Claude:
Checks the reputation of an address.
Parameters:
address
: The Ethereum address to checkExample query to Claude:
Gets the vaults for a given asset on Morpho.
Parameters:
assetSymbol
: Asset symbol by which to filter vaults (optional)Example query to Claude:
Calls a contract function on the blockchain.
Parameters:
contractAddress
: The address of the contract to callfunctionName
: The name of the function to callfunctionArgs
: The arguments to pass to the functionabi
: The ABI of the contractvalue
: The value of ETH to send with the transaction (optional)Example query to Claude:
Gets the assets available for onramping in a given country/subdivision.
Parameters:
country
: ISO 3166-1 two-digit country code string representing the purchasing user's country of residencesubdivision
: ISO 3166-2 two-digit country subdivision code (required for US)Example query to Claude:
Gets a URL for onramping funds via Coinbase.
Parameters:
amountUsd
: The amount of funds to onrampassetId
: The asset ID to onrampExample query to Claude:
Gets the balance of an ERC20 token.
Parameters:
contractAddress
: The address of the ERC20 contractExample query to Claude:
Transfers an ERC20 token to another address.
Parameters:
contractAddress
: The address of the ERC20 contracttoAddress
: The address of the recipientamount
: The amount of tokens to transferExample query to Claude:
Lists NFTs owned by a specific address.
Parameters:
ownerAddress
: The address of the owner whose NFTs to listlimit
: Maximum number of NFTs to return (default: 50)Example query to Claude:
Transfers an NFT to another address. Supports both ERC721 and ERC1155 standards.
Parameters:
contractAddress
: The address of the NFT contracttokenId
: The token ID of the NFT to transfertoAddress
: The address of the recipientamount
: The amount to transfer (only used for ERC1155, default: 1)Example query to Claude:
Buys OpenRouter credits with USDC.
Parameters:
amountUsd
: The amount of credits to buy, in USDExample query to Claude:
If you encounter issues:
MIT License
Contributions are welcome! Please feel free to submit a Pull Request.
For detailed guidelines on contributing to Hashkey MCP, including:
Please refer to our comprehensive CONTRIBUTING.md guide.
Basic contribution steps:
git checkout -b feature/amazing-feature
)git commit -m 'Add some amazing feature'
)git push origin feature/amazing-feature
)Please make sure your code follows the existing style and includes appropriate tests.
Shared threads will appear here, showcasing real-world applications and insights from the community. Check back soon for updates!