aipod — server mode
v0.1.5A reference Model Context Protocol server that exercises every MCP feature — built with pydantic-ai.
Endpoints
POST /mcp — MCP (Streamable HTTP)
GET /health
GET /contract.json — service contract
GET /.well-known/oauth-protected-resource
— when auth is enabled
GET /metrics
— Prometheus (on by default; AIPOD_METRICS=none disables)
The companion aipod agent publishes an agent card at
/.well-known/agent-card.json (A2A shape, with a link back to this
contract).
Protocol tools
- echo — echo the input
- add — add two numbers
- get_tiny_image — text + image blocks
- get_annotated_message — priority / audience annotations
- get_structured_weather — typed output schema
- get_resource_reference — embedded resource block
- get_resource_links — resource_link blocks
- trigger_long_running_operation — progress updates
- toggle_simulated_logging — periodic log messages
- toggle_subscriber_updates — resources/updated events
- poet / summarize / weather_report — pydantic-ai via MCP sampling
Marvel roster
- list_heroes / get_hero — typed roster output
- find_heroes_by_power — search by power
- assemble_team — pick heroes for a threat
- hero_bio — pydantic-ai bio via sampling
SRE / IT-application
- list_services / get_service — service catalogue
- check_service_health — metrics + SLO + incidents → verdict
- error_budget — SLO budget + burn rate
- search_logs — deterministic synthetic log search
- list_incidents / open_incident / update_incident
- list_deployments / rollback_deployment
- get_oncall — on-call + escalation
- get_runbook — runbook steps by symptom
- incident_postmortem — pydantic-ai draft via sampling
Resources
demo://resource/dynamic/text/{resource_id}demo://resource/dynamic/blob/{resource_id}hero://roster/{codename}service://catalog/{name}runbook://{service}demo://resource/static/instructions.mddemo://resource/static/features.md
Prompts
- simple_prompt
- args_prompt (city, state?)
- completable_prompt (department → name)
- resource_prompt (embeds a resource)
Also
- Argument completion
- Resource subscriptions
- Client-controlled logging level
- Optional bearer auth (OAuth 2.1 protected resource)
- OpenTelemetry metrics (
/metrics, on by default)