RequestBin MCP Server
Officialby requestbin
README.md
# @requestbin/mcp-server
Use RequestBin directly in Claude Code, Cursor, Windsurf, and any MCP-compatible AI coding agent.
Create webhook bins, inspect captured HTTP requests, replay them, and stand up **mock API endpoints** — all without leaving your editor.
## Installation
```bash
npm install -g @requestbin/mcp-server
```
Or run directly with npx:
```bash
npx @requestbin/mcp-server
```
## Get an API Key
1. Go to [requestbin.net/api-keys](https://requestbin.net/api-keys)
2. Create a new API key
API keys and MCP access are available on **every plan**, including FREE (5 keys per account). Per-feature limits (bin count, mock endpoint count, custom mock slug) still apply per plan — see [requestbin.net/pricing](https://requestbin.net/pricing).
## Configuration
### Claude Code
Add to your project's `.mcp.json` or `~/.claude/settings.json`:
```json
{
"mcpServers": {
"requestbin": {
"command": "requestbin-mcp",
"env": {
"REQUESTBIN_API_KEY": "rb_your_key_here"
}
}
}
}
```
### Claude Desktop
Add to `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS) or `%APPDATA%\Claude\claude_desktop_config.json` (Windows):
```json
{
"mcpServers": {
"requestbin": {
"command": "requestbin-mcp",
"env": {
"REQUESTBIN_API_KEY": "rb_your_key_here"
}
}
}
}
```
### Cursor
Add to Cursor Settings > MCP Servers:
```json
{
"requestbin": {
"command": "requestbin-mcp",
"env": {
"REQUESTBIN_API_KEY": "rb_your_key_here"
}
}
}
```
### Windsurf
Add to `~/.windsurf/mcp_config.json`:
```json
{
"mcpServers": {
"requestbin": {
"command": "requestbin-mcp",
"env": {
"REQUESTBIN_API_KEY": "rb_your_key_here"
}
}
}
}
```
## Available Tools
**Webhook bins & replay:**
| Tool | Description |
|------|-------------|
| `list_bins` | List all your webhook bins with URLs and stats |
| `create_bin` | Create a new webhook bin (returns URL for webhook endpoint) |
| `get_bin` | Get bin details including recent interactions |
| `delete_bin` | Delete a webhook bin |
| `list_interactions` | List captured HTTP requests for a bin (method, headers, body) |
| `replay_request` | Send an HTTP request to any URL (server-side replay) |
| `get_replay_status` | Check the status of a replay job |
| `list_servers` | List available servers for bin creation |
**Mock APIs (`*.rbmock.dev`):**
| Tool | Description |
|------|-------------|
| `list_mock_endpoints` | List your mock endpoints with slug, URL, and rule count |
| `create_mock_endpoint` | Create a mock endpoint (returns live `{slug}.rbmock.dev` URL) |
| `add_mock_rule` | Append a routing rule (match method/path → status + headers + body) |
| `deploy_mock` | Publish the current rule set so the live mock server picks it up |
| `list_mock_captures` | List recent requests that hit a mock endpoint — verify your integration is actually calling the mock URL |
## Example Workflow
Here is what a typical conversation looks like with an AI agent that has the RequestBin MCP server configured:
**You:** "Create a webhook bin for testing my Stripe integration"
The agent will:
1. Call `list_servers` to find available servers
2. Call `create_bin` with name "Stripe Webhooks"
3. Return the bin URL to configure in your Stripe Dashboard
**You:** "Show me the last 5 requests to my Stripe webhook bin"
The agent will:
1. Call `list_bins` to find your bins
2. Call `list_interactions` with the bin ID and limit of 5
3. Display the HTTP method, path, headers, and body of each captured request
**You:** "Replay the last webhook event to my local server at localhost:3000/webhooks"
The agent will:
1. Call `list_interactions` to find the most recent request
2. Call `replay_request` with the same method, headers, and body targeting `http://localhost:3000/webhooks`
3. Call `get_replay_status` to confirm delivery
**You:** "Stand up a mock Stripe API that returns 200 for `POST /v1/charges` and 402 for `POST /v1/charges/decline`"
The agent will:
1. Call `create_mock_endpoint` with name "Stripe mock" — gets back a live URL like `https://abc12.rbmock.dev`
2. Call `add_mock_rule` twice (one per path) with the matching status codes and JSON bodies
3. Call `deploy_mock` to publish — the URL is now ready to point your integration at
## Environment Variables
| Variable | Required | Default | Description |
|----------|----------|---------|-------------|
| `REQUESTBIN_API_KEY` | Yes | -- | Your API key from [requestbin.net/api-keys](https://requestbin.net/api-keys) |
| `REQUESTBIN_BASE_URL` | No | `https://requestbin.net` | Custom API base URL (for self-hosted instances) |
| `REQUESTBIN_MOCK_DOMAIN` | No | `rbmock.dev` | Domain that hosts mock endpoints (override for self-hosted) |
## Requirements
- Node.js >= 18
- A RequestBin account (FREE tier works — API/MCP is open to every plan)
## Development
```bash
npm install
npm run dev # runs with tsx (hot reload)
npm run build # compile TypeScript to dist/
```
## License
MIT
TDQS
A3.8/5.0
Scored across 13 tools
Disambiguation4/5
Tools clearly separate bin and mock endpoint domains, but some overlap exists between list_interactions and list_mock_captures; descriptions help distinguish them.
Naming Consistency5/5
All tool names follow a consistent verb_noun pattern with snake_case, e.g., create_bin, list_mock_endpoints, replay_request.
Tool Count5/5
13 tools is well-scoped for managing webhook bins and mock endpoints, covering creation, listing, rules, and replay without being excessive.
Completeness3/5
Core workflows are present, but notable gaps exist: no delete_mock_endpoint, no update/remove rule operations, and mock endpoint details are limited to listing.
Maintenance
ActivityInactive
ResponsivenessNo issues