MCP Supergraph

Supergraph Structure

Testra organizes MCP servers into categories for easy discovery:

Core Categories

  • Chain-RPC

  • Trading MCP Servers

  • DeFi

  • Market Data

  • Social

  • Developer Tools


Server Features

Browse by Capability

Each server is tagged with its capabilities:

# Example server capabilities
Transport Layers:
  - HTTP/REST
  - WebSocket
  - GraphQL
  - gRPC

Security Features:
  - API Key Authentication
  - OAuth 2.0
  - JWT Tokens
  - Rate Limiting

Data Formats:
  - JSON
  - Protocol Buffers
  - MessagePack
  - XML

Transport Layer Support

HTTP/REST - Standard RESTful APIs

const httpServer = await client.getServer('rest-api-v1');
const data = await httpServer.get('/api/data');

WebSocket - Real-time data streams

const wsServer = await client.getServer('websocket-feed');
wsServer.subscribe('price-updates', (data) => {
  console.log('Price update:', data);
});

On-Chain - Smart contract interactions

const chainServer = await client.getServer('ethereum-oracle');
const price = await chainServer.call('latestPrice', { pair: 'ETH/USD' });

Security Assessment

Every server displays security information:

  • Security Audit Status: Passed/Pending/Failed

  • Authentication Methods: Supported auth types

  • Uptime Metrics: 99.9% availability

  • Performance: Response times and throughput


Testing with Live Inspector

The Live Inspector lets you test any server directly in your browser:

Features:

  • Real-time Testing: Execute functions and see results instantly

  • Schema Validation: Automatic parameter validation

  • Response Analysis: Detailed response inspection

  • Error Handling: Clear error messages and debugging info

  • Code Generation: Auto-generate integration code


Using the Inspector:

  1. Select a Server: Click "Test With Inspector" on any server page

  2. Choose Function: Select from available server functions

  3. Set Parameters: Fill in required parameters with validation

  4. Execute: Run the function and see real-time results

  5. Generate Code: Copy integration code for your language

// Example generated code
const testraClient = new TestraClient();
const server = await testraClient.getServer('price-oracle-v1');

try {
  const result = await server.call('getPrice', {
    symbol: 'ETH/USD',
    source: 'binance'
  });
  console.log('Price:', result.price);
} catch (error) {
  console.error('Error:', error.message);
}

Access Methods

Direct API Integration

Connect directly to MCP servers using their native APIs:

// Direct HTTP integration
const response = await fetch('https://api.example-server.com/execute', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer your-api-key'
  },
  body: JSON.stringify({
    function: 'getPrice',
    parameters: { symbol: 'ETH/USD' }
  })
});

Testra SDK Integration

Use the Testra SDK for enhanced features:

// SDK integration with automatic discovery
const client = new TestraClient();
const servers = await client.discover({
  category: 'defi',
  tags: ['price-oracle'],
  minUptime: 99.5
});

const bestServer = servers[0];
const result = await bestServer.call('getPrice', { symbol: 'ETH/USD' });

MCP Client Integration

Use standard MCP clients for protocol-native integration:

// Standard MCP client
import { MCPClient } from '@mcp/client';

const client = new MCPClient('https://api.example-server.com');
const capabilities = await client.getCapabilities();
const result = await client.execute('getPrice', { symbol: 'ETH/USD' });

Last updated