{"server":{"name":"Relin","endpoint":"https://relin.app/mcp","transport":"streamable_http","version":"1.0.0","documentation":"https://relin.app/docs/mcp"},"authentication":{"anonymous":"Public read-only tools explain Relin, supported webhook shapes, and setup paths.","authenticated":"OAuth 2.0 with Relin accounts unlocks workspace tools for source setup, event inspection, metrics, and replay."},"capabilities":{"tools":{"describe_relin":{"name":"describe_relin","title":"Describe Relin","description":"Explain what Relin does and how agents should use it for webhook intake, delivery, replay, and anomaly review.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},"list_supported_webhook_shapes":{"name":"list_supported_webhook_shapes","title":"List Supported Webhook Shapes","description":"List the vendor webhook shapes Relin understands for event identity, ordering, and gap checks.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},"get_setup_guide":{"name":"get_setup_guide","title":"Get Setup Guide","description":"Return concise setup guidance for connecting a webhook source and destination.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},"list_destinations":{"name":"list_destinations","title":"List Destinations","description":"Authenticated tool for listing outbound destinations and retry policy.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"requiresAuth":true},"create_destination":{"name":"create_destination","title":"Create Destination","description":"Authenticated tool for creating an outbound destination and connection with retry policy and optional filters.","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false},"requiresAuth":true},"get_portal_settings":{"name":"get_portal_settings","title":"Get Portal Settings","description":"Authenticated tool for reading portal branding defaults and host setup for an app.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"requiresAuth":true},"save_portal_settings":{"name":"save_portal_settings","title":"Save Portal Settings","description":"Authenticated tool for saving portal branding defaults for an app.","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false},"requiresAuth":true},"list_portal_hosts":{"name":"list_portal_hosts","title":"List Portal Hosts","description":"Authenticated tool for listing stable portal hosts for an app.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"requiresAuth":true},"create_portal_host":{"name":"create_portal_host","title":"Create Portal Host","description":"Authenticated tool for creating a stable portal host with OIDC sign-in.","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false},"requiresAuth":true},"check_portal_host":{"name":"check_portal_host","title":"Check Portal Host","description":"Authenticated tool for refreshing hostname, certificate, and OIDC readiness for a stable portal host.","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false},"requiresAuth":true},"ensure_webhook_setup":{"name":"ensure_webhook_setup","title":"Ensure Webhook Setup","description":"Authenticated tool for idempotently setting up a vendor source and destination, returning the ingest URL when a new source is created.","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false},"requiresAuth":true},"list_recent_events":{"name":"list_recent_events","title":"List Recent Events","description":"Authenticated tool for inspecting recent received events, duplicates, and signature status.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"requiresAuth":true},"get_event_detail":{"name":"get_event_detail","title":"Get Event Detail","description":"Authenticated tool for reading one event with attempts, deliveries, and optional raw payload.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"requiresAuth":true},"list_open_issues":{"name":"list_open_issues","title":"List Open Issues","description":"Authenticated tool for listing open anomaly and delivery issues. Use q for smart lookup by anom_, dst_, evt_, or src_ IDs, or plain text like a status code or error message.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"requiresAuth":true},"replay_event":{"name":"replay_event","title":"Replay Event","description":"Authenticated tool for queueing a replay of a single received event.","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false},"requiresAuth":true},"replay_events":{"name":"replay_events","title":"Replay Events","description":"Authenticated tool for queueing replay by source, query, signature status, failed-delivery state, and time window.","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false},"requiresAuth":true},"retry_failed_deliveries":{"name":"retry_failed_deliveries","title":"Retry Failed Deliveries","description":"Authenticated tool for queueing immediate retries for failed fanout deliveries.","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false},"requiresAuth":true},"cancel_queued_retries":{"name":"cancel_queued_retries","title":"Cancel Queued Retries","description":"Authenticated tool for cancelling queued retry jobs for a workspace or destination.","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false},"requiresAuth":true},"list_api_keys":{"name":"list_api_keys","title":"List API Keys","description":"Authenticated tool to list API keys.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"requiresAuth":true},"create_api_key":{"name":"create_api_key","title":"Create API Key","description":"Authenticated tool to create API key.","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false},"requiresAuth":true},"revoke_api_key":{"name":"revoke_api_key","title":"Revoke API Key","description":"Authenticated tool to revoke API key.","annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":false,"openWorldHint":false},"requiresAuth":true},"list_sources":{"name":"list_sources","title":"List Sources","description":"Authenticated tool to list sources.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"requiresAuth":true},"create_source":{"name":"create_source","title":"Create Source","description":"Authenticated tool to create source.","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false},"requiresAuth":true},"rotate_source_token":{"name":"rotate_source_token","title":"Rotate Source Token","description":"Authenticated tool for rotating an ingest token and returning the replacement URL once.","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false},"requiresAuth":true},"archive_source":{"name":"archive_source","title":"Delete Source","description":"Authenticated tool for deleting a source, disabling its routing, cancelling queued retries, clearing event-stream coordinator state, and pruning stored source records.","annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":false,"openWorldHint":false},"requiresAuth":true},"list_apps":{"name":"list_apps","title":"List Apps","description":"Authenticated tool to list apps.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"requiresAuth":true},"create_app":{"name":"create_app","title":"Create App","description":"Authenticated tool to create app.","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false},"requiresAuth":true},"get_app":{"name":"get_app","title":"Get App","description":"Authenticated tool to get app.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"requiresAuth":true},"list_recipients":{"name":"list_recipients","title":"List Recipients","description":"Authenticated tool to list recipients.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"requiresAuth":true},"upsert_recipient":{"name":"upsert_recipient","title":"Upsert Recipient","description":"Authenticated tool for creating or updating a recipient.","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false},"requiresAuth":true},"list_endpoints":{"name":"list_endpoints","title":"List Recipient Endpoints","description":"Authenticated tool to list recipient endpoints.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"requiresAuth":true},"create_endpoint":{"name":"create_endpoint","title":"Create Endpoint","description":"Authenticated tool to create endpoint.","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false},"requiresAuth":true},"get_endpoint":{"name":"get_endpoint","title":"Get Endpoint","description":"Authenticated tool to get endpoint.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"requiresAuth":true},"update_endpoint":{"name":"update_endpoint","title":"Update Endpoint","description":"Authenticated tool to update endpoint.","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false},"requiresAuth":true},"delete_endpoint":{"name":"delete_endpoint","title":"Disable Endpoint","description":"Authenticated tool to disable endpoint.","annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":false,"openWorldHint":false},"requiresAuth":true},"rotate_endpoint_secret":{"name":"rotate_endpoint_secret","title":"Rotate Endpoint Secret","description":"Authenticated tool for rotating the signing secret for one endpoint.","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false},"requiresAuth":true},"list_messages":{"name":"list_messages","title":"List Messages","description":"Authenticated tool to list messages.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"requiresAuth":true},"send_message":{"name":"send_message","title":"Send Message","description":"Authenticated tool to send message.","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false},"requiresAuth":true},"get_message":{"name":"get_message","title":"Get Message","description":"Authenticated tool to get message.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"requiresAuth":true},"list_message_attempts":{"name":"list_message_attempts","title":"List Message Attempts","description":"Authenticated tool to list message attempts.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"requiresAuth":true},"replay_message":{"name":"replay_message","title":"Replay Message","description":"Authenticated tool to replay message.","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false},"requiresAuth":true},"list_event_types":{"name":"list_event_types","title":"List Event Types","description":"Authenticated tool to list event types.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"requiresAuth":true},"upsert_event_type":{"name":"upsert_event_type","title":"Upsert Event Type","description":"Authenticated tool to upsert event type.","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false},"requiresAuth":true},"delete_event_type":{"name":"delete_event_type","title":"Archive Event Type","description":"Authenticated tool to archive event type.","annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":false,"openWorldHint":false},"requiresAuth":true},"create_portal_session":{"name":"create_portal_session","title":"Create Portal Session","description":"Authenticated tool to create portal session.","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false},"requiresAuth":true},"list_delivery_attempts":{"name":"list_delivery_attempts","title":"List Delivery Attempts","description":"Authenticated tool for listing fanout delivery attempts with filters.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"requiresAuth":true},"list_retry_jobs":{"name":"list_retry_jobs","title":"List Retry Jobs","description":"Authenticated tool to list retry jobs.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"requiresAuth":true},"resolve_anomalies":{"name":"resolve_anomalies","title":"Resolve Anomalies","description":"Authenticated tool for marking one or more open anomalies resolved by anomaly_id.","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false},"requiresAuth":true},"get_metrics_summary":{"name":"get_metrics_summary","title":"Get Metrics Summary","description":"Authenticated tool for delivery, failure, duplicate, and open-issue rollups.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"requiresAuth":true},"list_alert_channels":{"name":"list_alert_channels","title":"List Alert Channels","description":"Authenticated tool to list alert channels.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"requiresAuth":true},"create_alert_channel":{"name":"create_alert_channel","title":"Create Alert Channel","description":"Authenticated tool to create alert channel.","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false},"requiresAuth":true},"get_slack_connect_url":{"name":"get_slack_connect_url","title":"Get Slack Connect URL","description":"Authenticated tool for returning the dashboard Slack OAuth connect URL and expected redirect URL.","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false},"requiresAuth":true}},"resources":[{"name":"relin_overview","title":"Relin Overview","uri":"relin://guides/overview","description":"What Relin does and when agents should use it."},{"name":"webhook_setup","title":"Webhook Setup","uri":"relin://guides/webhook-setup","description":"How to connect a source and destination."},{"name":"vendor_setup","title":"Vendor Setup","uri":"relin://guides/vendor-setup","description":"Provider-specific setup notes for GitHub, Stripe, Shopify, Twilio, and SendGrid."},{"name":"operations","title":"Operations","uri":"relin://guides/operations","description":"How agents should triage failed delivery, anomalies, replay, and source safety."}],"prompts":[{"name":"setup_vendor_webhook","title":"Setup Vendor Webhook","description":"Guide an agent through creating or validating a Relin source, vendor webhook, destination, and first test event."},{"name":"triage_webhook_issue","title":"Triage Webhook Issue","description":"Guide an agent through investigating failed deliveries, duplicate attempts, provider retries, and open anomalies."}]}}