skills/jpoutrin/product-forge/network-inspection

network-inspection

SKILL.md

Network Inspection Skill

Systematic approach to analyzing network requests using Chrome DevTools MCP.

HTTP Status Code Reference

Success (2xx)

Code Meaning Notes
200 OK Standard success response
201 Created Resource successfully created
204 No Content Success, no body returned

Redirect (3xx)

Code Meaning Debugging Action
301 Moved Permanently Update hardcoded URLs
302 Found (Temporary) Check redirect logic
304 Not Modified Cache is working correctly

Client Error (4xx)

Code Meaning Debugging Action
400 Bad Request Check request payload/parameters
401 Unauthorized Check auth token/session
403 Forbidden Check permissions/roles
404 Not Found Check URL/endpoint spelling
405 Method Not Allowed Check HTTP method (GET/POST/etc)
409 Conflict Check for duplicate data
422 Unprocessable Entity Check validation errors in response
429 Too Many Requests Implement rate limiting/retry

Server Error (5xx)

Code Meaning Debugging Action
500 Internal Server Error Check backend logs
502 Bad Gateway Check proxy/load balancer
503 Service Unavailable Check server health
504 Gateway Timeout Check backend performance

Network Request Analysis Workflow

1. List All Requests

Use Chrome DevTools MCP to list network requests:

Tool: mcp__chrome-devtools__list_network_requests

2. Filter by Status

Focus on failures first:

  1. 5xx errors - Server issues (highest priority)
  2. 4xx errors - Client issues (request problems)
  3. Slow requests - Performance issues
  4. Successful requests - Verify data is correct

3. Inspect Specific Request

Get detailed information:

Tool: mcp__chrome-devtools__get_network_request
Parameters: { "requestId": "request-id-here" }

4. Analyze Request Components

For each problematic request, examine:

  • URL - Is the endpoint correct?
  • Method - GET, POST, PUT, DELETE?
  • Headers - Authorization, Content-Type?
  • Body - Request payload format?
  • Response - What did server return?

Request Headers to Check

Outgoing Request Headers

Header Purpose Debug Value
Authorization Auth token Verify token format, expiry
Content-Type Payload format Match API expectation
Accept Response format application/json typically
Origin CORS source Check against allowed origins
Cookie Session data Verify session exists

Response Headers to Check

Header Purpose Debug Value
Set-Cookie Session management Check cookie attributes
X-Request-Id Request tracking Use for backend log correlation
Content-Type Response format Verify expected format
Cache-Control Caching policy Check if stale data issue
WWW-Authenticate Auth challenge Details on auth failure

Common API Issues

Authentication Problems

Symptom Possible Cause Solution
401 on all requests Token expired Refresh token
401 on some requests Missing token header Check auth interceptor
403 after login Insufficient permissions Check user roles
Redirect to login Session expired Re-authenticate

Data Issues

Symptom Possible Cause Solution
Empty response No data found Check query parameters
Partial data Pagination Check for next page
Stale data Caching Clear cache, check headers
Wrong data format API version mismatch Check API version

CORS Issues

Error Cause Solution
No 'Access-Control-Allow-Origin' Server not configured Add CORS headers on backend
Preflight failed OPTIONS request blocked Allow OPTIONS method
Credentials not supported withCredentials mismatch Configure credentials mode

Performance Analysis

Timing Breakdown

Phase Description Concern Threshold
DNS Lookup Domain resolution > 100ms
Connection TCP handshake > 100ms
TLS SSL negotiation > 100ms
Request Sending data > 500ms
Waiting (TTFB) Server processing > 500ms
Response Receiving data Depends on payload

Slow Request Causes

Phase Slow Likely Cause Solution
DNS DNS server issues Use faster DNS
Connection Server overloaded Scale infrastructure
TLS Certificate chain Optimize SSL config
Waiting Slow backend Optimize API/database
Response Large payload Paginate, compress

Debugging Report Template

## Network Debugging Report

**URL**: [page URL]
**Date**: [timestamp]
**Total Requests**: [count]

### Summary

- Failed Requests: X (Y% failure rate)
- Slow Requests (>1s): Z
- Total Data Transferred: N MB

### Failed Requests

| Endpoint | Method | Status | Error |
|----------|--------|--------|-------|
| [URL] | [GET/POST] | [code] | [message] |

### Request Analysis

#### Request 1: [endpoint]

**Status**: [code] [status text]

**Request**:
- Method: [method]
- URL: [full URL]
- Headers:

[relevant headers]

- Body:
```json
[request body]

Response:

  • Status: [code]
  • Headers:
    [relevant headers]
    
  • Body:
    [response body or error]
    

Analysis: [what went wrong]

Suggested Fix: [recommendation]

Performance Issues

Endpoint TTFB Total Time Issue
[URL] [ms] [ms] [analysis]

Recommendations

  1. [prioritized action 1]
  2. [prioritized action 2]

## Integration with Console Debugging

Network failures often cause console errors:

| Network Issue | Console Manifestation |
|---------------|----------------------|
| 401 Unauthorized | `Error: User not authenticated` |
| 404 Not Found | `Error: Resource not found` |
| 500 Server Error | `Error: Request failed` |
| Network offline | `TypeError: Failed to fetch` |
| CORS blocked | CORS error message |

Use `console-debugging` skill alongside for comprehensive debugging.

## Best Practices

1. **Check the obvious first** - Is the URL correct? Is the server running?
2. **Compare working vs broken** - What's different about failing requests?
3. **Test in isolation** - Use curl/Postman to eliminate frontend issues
4. **Check request order** - Are dependent requests happening in right order?
5. **Verify authentication flow** - Token refresh, session expiry?
6. **Look at full response** - Error details often in response body
Weekly Installs
1
GitHub Stars
8
First Seen
6 days ago
Installed on
zencoder1
amp1
cline1
openclaw1
opencode1
cursor1