Testing a webhook usually means switching to a browser tab and refreshing until something shows up. Here the agent blocks on wait_for_request and then reads what arrived. Every mutation needs confirm=true, so nothing rewrites your DNS records or served files on a first attempt.
A Python server over requestrepo, the request-capture service. It covers the whole surface: captured requests, sharing, DNS records and served files.
- wait_for_request to block until a callback lands, list_requests for what has already arrived
- delete_request and delete_all_requests to clear the log
- share_request and get_shared_request to hand a captured request to someone else
- add_dns, list_dns, update_dns and remove_dns for the DNS records on your subdomain
- set_file, get_file, list_files and update_files for what the endpoint serves back
- session_info for the current session
- Mutating tools gated behind confirm=true
- Binary fields returned in a JSON-safe bytes envelope
- Stdio by default, streamable-http optional
Python, installed from the repository. Everything is optional: with no REQUESTREPO_TOKEN the server creates a new session for you, and an admin token can be supplied instead. The host it talks to, the port and protocol, whether certificates are verified, the default wait before a timeout and the largest response it will return all have defaults, and all can be overridden in the environment.
Build from source — clone the repository and build it, then point your client at the binary
