Appearance
Creating Tests
Tests are the core of Pingward. Each test monitors an endpoint on a schedule to verify it's working correctly. Pingward supports five test types: HTTP, MCP Server, A2A Agent, GraphQL, and gRPC.
Choosing a Test Type
When creating a test, select the type that matches your endpoint:
| Type | Use Case |
|---|---|
| HTTP | REST APIs, webhooks, web services, health check endpoints |
| MCP Server | Model Context Protocol servers (AI tool servers) |
| A2A Agent | Agent-to-Agent Protocol agents (AI agent endpoints) |
| GraphQL | GraphQL APIs (introspection, schema validation, query monitoring) |
| gRPC | gRPC services (health checks, service discovery) |
The test type determines which configuration fields and assertions are available.
Basic Configuration
Naming Your Test
Choose a descriptive name that identifies what the test monitors. Good names include:
- The service or API being tested
- The environment (production, staging)
- The specific functionality
Examples:
- "Production API - User Authentication"
- "Payment Service Health Check"
- "MCP Tools Server - Production"
- "Translation Agent - A2A Health"
Description
Add an optional description to provide more context about the test. This is helpful for team members who may need to understand what the test does or troubleshoot issues.
HTTP Test Settings
| Setting | Description |
|---|---|
| Name | Descriptive identifier for the test |
| Description | Optional context about what the test monitors |
| Method | HTTP method (GET, POST, PUT, etc.) |
| URL | The endpoint to test |
| Frequency | How often to run the test |
| Timeout | Maximum time to wait for a response |
| Importance | Affects maximum severity of issues |
MCP Server Test Settings
MCP (Model Context Protocol) tests monitor AI tool servers that implement the MCP specification.
| Setting | Description |
|---|---|
| MCP Endpoint URL | The streamable HTTP endpoint of the MCP server |
| Protocol Version | MCP protocol version (default: 2025-03-26) |
| Perform Initialize | Run the initialize/initialized handshake |
| Discover Capabilities | Enumerate tools, resources, and prompts |
| Expected Capabilities | Capabilities the server must advertise (e.g., tools, resources) |
| Canary Tool Name | Optional tool to invoke as a health check |
| Canary Resource URI | Optional resource to read as a health check |
A2A Agent Test Settings
A2A (Agent-to-Agent Protocol) tests monitor AI agents that implement the A2A specification.
| Setting | Description |
|---|---|
| Agent Base URL | Base URL of the agent (agent card at /.well-known/a2a/agent-card) |
| Protocol Version | A2A protocol version (default: 1.0) |
| Validate Agent Card | Fetch and validate the agent card |
| Expected Skills | Skill IDs the agent must advertise |
| Send Probe Task | Send a test message to verify task processing |
| Probe Task Message | Custom message for the probe task |
| Auth Scheme | Authentication method (Bearer, API Key) |
GraphQL Test Settings
GraphQL tests monitor GraphQL API endpoints with schema introspection and query validation.
| Setting | Description |
|---|---|
| GraphQL Endpoint URL | The GraphQL endpoint |
| Perform Introspection | Run introspection query to discover schema |
| Expected Types | Schema type names that must exist |
| Expected Fields | Fields in Type.field format that must exist |
| Canary Query | Optional GraphQL query to execute |
| Canary Variables | JSON variables for the canary query |
| Max Deprecated Fields | Alert threshold for deprecated fields |
| Expected Schema Hash | Detect schema drift via hash comparison |
gRPC Test Settings
gRPC tests monitor gRPC services using the standard health checking protocol.
| Setting | Description |
|---|---|
| Server Address | The gRPC server address (e.g., https://grpc.example.com:443) |
| Use TLS | Whether to use TLS for the connection |
| Perform Health Check | Run the standard grpc.health.v1 health check |
| Health Check Service | Specific service name (empty for overall health) |
| Expected Services | Service names to validate via health check |
| Auth Token | Bearer token for authentication |
Creating Your First Test
- Navigate to Tests → New Test
- Enter a name and optional description
- Select the test type (HTTP, MCP Server, A2A Agent, GraphQL, or gRPC)
- Configure the endpoint and protocol-specific settings
- Configure assertions to validate the response
- Set the schedule frequency
- Click Create Test
The test will begin running on the configured schedule immediately.