A Model Context Protocol server providing LLM Agents with system utilities and tools, including IP geolocation, network diagnostics, system monitoring, cryptographic operations, and QR code generation.
The Model Context Protocol (MCP) enables communication between:
- Clients: Claude Desktop, IDEs, and other MCP-compatible clients
- Servers: Tools and resources for task management and automation
- LLM Agents: AI models that leverage the server's capabilities
- IP geolocation with intelligent caching
- Network connectivity testing
- Ping and traceroute utilities
- Public IP detection
- Rate limiting (45 requests/minute)
- System information retrieval
- Resource monitoring
- Load average tracking
- Network interface details
- Cryptographic hash generation (MD5, SHA-1, SHA-256, SHA-512)
- Constant-time hash comparison
- UUID generation
- QR code generation
- Terminal output
- SVG format
- Base64 encoded images
# Using npm (recommended)
npm install @cyanheads/toolkit-mcp-server
# Or install from source
git clone git@github.com:cyanheads/toolkit-mcp-server.git
cd toolkit-mcp-server
npm install
npm run build
Add to your MCP client settings:
{
"mcpServers": {
"toolkit": {
"command": "node",
"args": ["node_modules/@cyanheads/toolkit-mcp-server/build/index.js"],
"env": {
"NODE_ENV": "production"
}
}
}
}
// Get geolocation data
const geo = await mcp.use('toolkit-mcp-server', 'geolocate', {
query: '8.8.8.8'
});
// Check connectivity
const conn = await mcp.use('toolkit-mcp-server', 'checkConnectivity', {
host: 'example.com',
port: 443
});
// Get system information
const sysInfo = await mcp.use('toolkit-mcp-server', 'getSystemInfo', {});
// Get load average
const load = await mcp.use('toolkit-mcp-server', 'getLoadAverage', {});
// Generate hash
const hash = await mcp.use('toolkit-mcp-server', 'hashData', {
input: 'test data',
algorithm: 'sha256'
});
// Generate UUID
const uuid = await mcp.use('toolkit-mcp-server', 'generateUUID', {});
// Generate QR code
const qr = await mcp.use('toolkit-mcp-server', 'generateQRCode', {
data: 'https://example.com',
type: 'svg'
});
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
Apache License 2.0. See LICENSE for more information.