Feature Reference
Bifurc is a local API development toolkit that combines routing, capture, mocking, authored requests, protocol tooling, extension-assisted browser workflows, and git-backed workspace management in one desktop app. This page is the reference matrix; for a walkthrough of each feature see Features.
Feature matrix#
| Area | What it covers |
|---|---|
| Service discovery | Detect listening localhost services and create mappings quickly |
| Dev servers | Start, stop and restart your dev servers, with live logs and an errors-only filter |
| Localhost mappings | Bind *.localhost domains to local targets |
| Proxy rules | Redirect and transform traffic with request/response scripts |
| Mocking | REST, GraphQL, and SOAP mock workflows, scenarios, hit counts and contract checks |
| Faults | Add latency, error statuses, drops or resets to proxied traffic |
| Record and replay | Record real answers into a cassette and serve it instead of the real hosts |
| Capture | Inspect proxied traffic with request/response detail |
| Requests | Save and replay REST, GraphQL, SOAP, and gRPC requests |
| Flows | Chain requests on a canvas with branches, loops, mail and MCP steps; run or load test them |
| Webhooks | Send signed webhooks from samples, or capture a real one through a temporary tunnel |
| Catch the mail your app sends on a local SMTP server, with codes and links picked out | |
| WebSockets | Connect, send, receive, and inspect messages |
| SSE | Open an event stream and search the events as they arrive |
| Socket.IO | Join a namespace, emit events with acknowledgements, and log chosen events |
| MCP | Connect to an MCP server over stdio or Streamable HTTP, and call its tools, prompts and resources |
| Vaults | Keep secrets out of captured traffic and exports |
| Environments | Reuse variables and randomizer tokens across workflows |
| TLS interception | Inspect and modify HTTPS traffic using a trusted local CA |
| Health checks | Monitor service endpoints from within the workspace |
| Git-backed workspaces | Publish, diff, restore, push, and pull configuration state |
| Browser extension | Browser proxy control and DevTools-to-workspace workflows |
| AI agents | A CLI and MCP server for agents, with sessions, policy guardrails, approvals and locks |
Core capabilities#
Service discovery#
- detects listening localhost ports
- shows process name and PID
- indicates whether a service is already mapped
- supports one-click mapping creation
*.localhost mappings#
- route friendly subdomains to local services
- avoid manual hosts-file edits
- keep mappings workspace-scoped
- use with browser proxying or explicit ports as needed
Proxy rules#
- match exact URLs or regex patterns
- redirect to mappings or other targets
- mutate requests before forwarding
- mutate responses before returning
Mocking#
- REST mocks for method and URL matching
- GraphQL mocks for operation-aware matching
- SOAP mocks for endpoint, SOAPAction, and operation matching
- response delays, streaming, binary payloads, and variable substitution where supported
Traffic capture#
- inspect full request and response metadata
- filter by method, URL, status, and route path
- create mocks from captured traffic
- save captured requests for replay
- pin exchanges, export them as HAR, copy one as cURL
- find a request's lines in your dev servers' logs
- record and replay cassettes (see Testing Toolkit)
Requests and replay#
- REST authoring with cURL import
- GraphQL schema introspection and operation generation
- SOAP WSDL-assisted request generation
- gRPC proto and reflection workflows
- pre-request and post-response scripting
- SSE, Socket.IO and MCP connections (see SSE, Socket.IO and MCP)
- signed webhook requests (see Mail and Webhooks)
- a Cookies tab that decodes JWTs, and a Types panel for TypeScript, Zod, Python and Go
- cancel, timeouts, redirects and certificate settings per request; the last five responses kept
- flows that chain requests (see Flows)
HTTPS on the proxies#
- an HTTPS toggle makes the reverse proxy serve
*.localhostnames over TLS, redirecting plain HTTP to HTTPS - the forward proxy's port accepts TLS and plain proxy clients
- uses the same local root CA as TLS interception
Browser extension workflows#
- toggle browser proxy routing
- connect to a localhost companion bridge, with the connected browsers listed in Settings → Servers
- capture live browser traffic in DevTools
- create mocks and saved requests from real pages
- batch-capture filtered traffic into folders
Workspace durability#
- git-backed publish and restore
- per-entity history and diff views
- remote push and pull
- optional GitHub sign-in to publish a workspace to a repository you own
Protocol support#
| Feature | REST | GraphQL | SOAP | gRPC |
|---|---|---|---|---|
| Saved requests | Yes | Yes | Yes | Yes |
| Mocking | Yes | Yes | Yes | No |
| Environment variables | Yes | Yes | Yes | Yes |
| Pre/post scripts | Yes | Yes | Yes | Yes |
| Schema or contract helpers | OpenAPI import paths | Introspection + SDL | WSDL | Proto + reflection |
| Streaming support | SSE + chunked | Limited by HTTP workflow | N/A | Unary + streaming modes |
Connection-based request types are opened by the engine directly and are not mockable:
| Type | What it connects to |
|---|---|
| WebSocket | A WebSocket endpoint |
| SSE | A text/event-stream endpoint |
| Socket.IO | A Socket.IO v3 or v4 server, per namespace |
| MCP | An MCP server over stdio or Streamable HTTP |
See the protocol-specific docs for implementation and workflow details.