proofstream_check_status
Check the status of a verification request by case ID to see if it is pending, confirmed, scheduled, in progress, completed, or cancelled.
Instructions
Check the status of a ProofStream verification request by case ID.
Status values:
pending_review: Request received, awaiting ProofStream acceptance
confirmed: Accepted, payment captured, verification scheduled
scheduled: Verification date/time confirmed
in_progress: Verifier on-site, livestream active (if requested)
completed: Verification done, report delivered to email
cancelled: Request declined (no charge)
When status is "completed", the full evidence report and invoice have been emailed to the address provided at submission.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| case_id | Yes | Case ID returned from proofstream_submit_request (e.g., PS-ABC123) |
Implementation Reference
- src/index.ts:172-189 (handler)The checkStatus async function that executes the proofstream_check_status tool logic. It takes a case_id, calls the ProofStream API endpoint /api/cases/{caseId}/status, and returns structured status information including case_id, status, status_label, service, submitted_at, and a human-readable message via getStatusMessage().
async function checkStatus(args: Record<string, unknown>): Promise<string> { const caseId = String(args.case_id).toUpperCase(); const res = await fetch(`${PROOFSTREAM_API}/api/cases/${caseId}/status`); if (!res.ok) { return JSON.stringify({ error: `Case ${caseId} not found`, status: res.status }); } const data = await res.json() as Record<string, unknown>; return JSON.stringify({ case_id: data.case_id, status: data.status, status_label: data.status_label, service: data.service, submitted_at: data.submitted_at, message: getStatusMessage(String(data.status)), }); } - src/index.ts:115-121 (schema)Input schema for proofstream_check_status: requires a string 'case_id' (e.g., PS-ABC123) as the only input parameter.
inputSchema: { type: 'object', required: ['case_id'], properties: { case_id: { type: 'string', description: 'Case ID returned from proofstream_submit_request (e.g., PS-ABC123)' } } } - src/index.ts:101-128 (registration)Tool definition registration in the TOOLS array with name 'proofstream_check_status', description of status values, and inputSchema.
{ name: 'proofstream_check_status', description: `Check the status of a ProofStream verification request by case ID. Status values: - pending_review: Request received, awaiting ProofStream acceptance - confirmed: Accepted, payment captured, verification scheduled - scheduled: Verification date/time confirmed - in_progress: Verifier on-site, livestream active (if requested) - completed: Verification done, report delivered to email - cancelled: Request declined (no charge) When status is "completed", the full evidence report and invoice have been emailed to the address provided at submission.`, inputSchema: { type: 'object', required: ['case_id'], properties: { case_id: { type: 'string', description: 'Case ID returned from proofstream_submit_request (e.g., PS-ABC123)' } } } }, { name: 'proofstream_get_pricing', description: 'Get current ProofStream pricing and service details without making a request.', inputSchema: { type: 'object', properties: {} } } ]; - src/index.ts:253-261 (registration)The CallToolRequestSchema switch-case that routes the 'proofstream_check_status' tool name to the checkStatus handler function.
case 'proofstream_check_status': result = await checkStatus(toolArgs); break; case 'proofstream_get_pricing': result = getPricing(); break; default: throw new Error(`Unknown tool: ${name}`); } - src/index.ts:191-204 (helper)Helper function getStatusMessage() that maps status strings (pending_review, confirmed, scheduled, in_progress, completed, cancelled, etc.) to human-readable messages used by checkStatus.
function getStatusMessage(status: string): string { const messages: Record<string, string> = { pending_review: 'Your request is under review. ProofStream will respond within a few hours.', new: 'Request received and queued for review.', reviewing: 'ProofStream is reviewing your request and may reach out with questions.', quoted: 'A quote has been sent to your email for review.', confirmed: 'Verification accepted and payment captured. Scheduling underway.', scheduled: 'Verification date confirmed. Verifier will arrive as scheduled.', in_progress: 'Verification is underway. If you requested livestream, check your email for watch credentials.', completed: 'Verification complete. Your report and invoice have been emailed to you.', cancelled: 'Request was not accepted. No charge was made.', }; return messages[status] || 'Unknown status'; }