[{"data":1,"prerenderedAt":274},["ShallowReactive",2],{"seo-allowlist":3,"connector-jam":73,"related-jam":249},[4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72],"activecampaign","ahrefs","airtable","amplitude","asana","avalara","aweber","bamboohr","billcom","bitbucket","brevo-sendinblue","buffer","calendly","clickup","close","confluence","constant-contact","copper","datadog","dialpad","docusign","expensify","figma","freshsales","github","gitlab","gmail","google-adsense","google-calendar","google-drive","google-forms","google-maps","google-sheets","google-slides","greenhouse","hubspot","intercom","jira","jotform","linear","mailchimp","microsoft-teams","miro","mixpanel","mondaycom","notion","outlook","pandadoc","personio","pipedrive","quickbooks-online","recurly","salesforce","sendgrid","sentry","slack","square","stripe","tableau","todoist","trello","typeform","wix","workable","wrike","youtube","zendesk","zoho-crm","zoom",{"id":74,"name":75,"icon":76,"description":77,"provider":78,"authType":79,"availableAuthTypes":80,"apiDocsUrl":81,"authDocsUrl":81,"category":82,"pageCopy":83,"datasets":118},"jam","Jam","\u002Fconnectoricons\u002Fjam.png","Paste a Jam link into Claude Code or Cursor and your coding agent reads the bug report the way you would: the video, console logs and network requests. Jam's MCP server turns recordings into context, and proof of work, for the fix. ContextGate connects it to Claude, ChatGPT and Cursor, and policies can block secrets captured in a recording's network logs.","vendor_mcp","oauth",[79],"https:\u002F\u002Fjam.dev\u002Fdocs\u002Fjam-mcp","Developer Tools & Data",{"title":84,"description":85,"heading":86,"connect":87,"sections":102,"utmCampaign":117},"Jam API and MCP for Claude Code & Cursor | ContextGate","Jam API via MCP: give Claude Code or Cursor a Jam's video, console logs and network requests to fix bugs. Switch off any tool; every call is recorded.","Jam MCP: bug recordings as context for your coding agent",{"heading":88,"steps":89},"Connect Jam to Claude Code, Cursor or ChatGPT",[90,92,94,100],{"text":91},"Click Connect Jam free and sign in with your Jam account.",{"text":93},"Jam's tools read recordings, so most teams keep them. Switch off the ones your agent doesn't need, such as member or recording-link listings, to keep its tool list focused on debugging.",{"text":95,"link":96,"after":99},"Add ContextGate to your AI app as a connector or MCP server. The steps for each app are on",{"label":97,"href":98},"the Works with page","\u002Fworks-with\u002F",".",{"text":101},"Paste a Jam link and ask your coding agent which failed request caused the bug, then open Activity to see the log and network calls.",[103,111],{"heading":104,"bullets":105},"Debugging with Jam in Claude Code or Cursor",[106,107,108,109,110],"Read a Jam's console errors, warnings and stack traces.","Inspect captured HTTP requests and WebSocket frames, filtered to failures.","Follow the user's clicks, inputs and navigation in order.","Pull still frames, screenshots or the spoken transcript from a video Jam.","Search workspace Jams by text, folder, author or source URL.",{"heading":112,"bullets":113},"Recordings without leaks",[114,115,116],"Switch off any Jam tool your agent doesn't need; it's hidden and refused if called.","Policies check every call, so secrets or personal data in captured logs can be blocked or hidden.","Activity records which Jams your AI apps opened and what they pulled from them.","jam-mcp",[119,129,137,145,153,161,169,177,185,193,201,209,217,225,233,241],{"name":120,"description":121,"recordCount":122,"type":123,"requiredParams":124,"optionalParams":125,"exampleEndpoint":122,"docsUrl":81,"sampleFields":126,"sampleData":127},"Analyze Jam Video","Extract structured user goals, reported issues, feedback, visual observations, interactions, and technical indicators from a video Jam.","N\u002FA","tool",[],[],[],[128],{"endpoint":122,"docs":81},{"name":130,"description":131,"recordCount":122,"type":123,"requiredParams":132,"optionalParams":133,"exampleEndpoint":122,"docsUrl":81,"sampleFields":134,"sampleData":135},"Get Console Logs","Get captured browser console errors, warnings, information, debug output, and stack traces from a Jam.",[],[],[],[136],{"endpoint":122,"docs":81},{"name":138,"description":139,"recordCount":122,"type":123,"requiredParams":140,"optionalParams":141,"exampleEndpoint":122,"docsUrl":81,"sampleFields":142,"sampleData":143},"Get Jam Details","Get the core details and debugging context for a Jam. Call this first before requesting logs, events, screenshots, frames, or transcripts.",[],[],[],[144],{"endpoint":122,"docs":81},{"name":146,"description":147,"recordCount":122,"type":123,"requiredParams":148,"optionalParams":149,"exampleEndpoint":122,"docsUrl":81,"sampleFields":150,"sampleData":151},"Get Jam Metadata","Get custom application debugging context attached through the jam.metadata() SDK, such as user IDs, versions, and feature flags.",[],[],[],[152],{"endpoint":122,"docs":81},{"name":154,"description":155,"recordCount":122,"type":123,"requiredParams":156,"optionalParams":157,"exampleEndpoint":122,"docsUrl":81,"sampleFields":158,"sampleData":159},"Get Network Requests","Get captured HTTP requests and WebSocket frames from a Jam, with filters for failures, hosts, methods, content types, and response bodies.",[],[],[],[160],{"endpoint":122,"docs":81},{"name":162,"description":163,"recordCount":122,"type":123,"requiredParams":164,"optionalParams":165,"exampleEndpoint":122,"docsUrl":81,"sampleFields":166,"sampleData":167},"Get Recording Link","Get one Recording Link's settings and submitted-Jam count by public ID.",[],[],[],[168],{"endpoint":122,"docs":81},{"name":170,"description":171,"recordCount":122,"type":123,"requiredParams":172,"optionalParams":173,"exampleEndpoint":122,"docsUrl":81,"sampleFields":174,"sampleData":175},"Get Jam Screenshots","Get screenshots and image attachments from a screenshot-type Jam for visual inspection.",[],[],[],[176],{"endpoint":122,"docs":81},{"name":178,"description":179,"recordCount":122,"type":123,"requiredParams":180,"optionalParams":181,"exampleEndpoint":122,"docsUrl":81,"sampleFields":182,"sampleData":183},"Get User Events","Get the chronological user interaction timeline from a Jam, including clicks, inputs, submissions, navigation, and scrolling.",[],[],[],[184],{"endpoint":122,"docs":81},{"name":186,"description":187,"recordCount":122,"type":123,"requiredParams":188,"optionalParams":189,"exampleEndpoint":122,"docsUrl":81,"sampleFields":190,"sampleData":191},"Get Jam Video Frames","Get still frames from a video Jam as an overview grid, exact timestamps, or an evenly sampled time window. Exactly one of those three modes is required: set overview=true, timestamps_ms, or from_ms wi",[],[],[],[192],{"endpoint":122,"docs":81},{"name":194,"description":195,"recordCount":122,"type":123,"requiredParams":196,"optionalParams":197,"exampleEndpoint":122,"docsUrl":81,"sampleFields":198,"sampleData":199},"Get Jam Video Transcript","Get the timestamped WebVTT speech transcript from a microphone-enabled video Jam when available; otherwise return Jam's explanation that it is pending or unavailable.",[],[],[],[200],{"endpoint":122,"docs":81},{"name":202,"description":203,"recordCount":122,"type":123,"requiredParams":204,"optionalParams":205,"exampleEndpoint":122,"docsUrl":81,"sampleFields":206,"sampleData":207},"List Jam Folders","Browse or search one page of workspace folders and return their IDs, names, Jam counts, and timestamps; pass next_cursor as cursor to continue.",[],[],[],[208],{"endpoint":122,"docs":81},{"name":210,"description":211,"recordCount":122,"type":123,"requiredParams":212,"optionalParams":213,"exampleEndpoint":122,"docsUrl":81,"sampleFields":214,"sampleData":215},"List Jams","Search and browse workspace Jams by text, type, folder, author, source URL, or creation date. Returns one page; pass next_cursor as cursor to continue.",[],[],[],[216],{"endpoint":122,"docs":81},{"name":218,"description":219,"recordCount":122,"type":123,"requiredParams":220,"optionalParams":221,"exampleEndpoint":122,"docsUrl":81,"sampleFields":222,"sampleData":223},"List Jam Members","Browse or search one page of workspace members by name or email for author discovery and attribution; pass next_cursor as cursor to continue.",[],[],[],[224],{"endpoint":122,"docs":81},{"name":226,"description":227,"recordCount":122,"type":123,"requiredParams":228,"optionalParams":229,"exampleEndpoint":122,"docsUrl":81,"sampleFields":230,"sampleData":231},"List Recording Domains","List the workspace's connected recording domains and whether each is verified to capture console and network logs.",[],[],[],[232],{"endpoint":122,"docs":81},{"name":234,"description":235,"recordCount":122,"type":123,"requiredParams":236,"optionalParams":237,"exampleEndpoint":122,"docsUrl":81,"sampleFields":238,"sampleData":239},"List Recording Link Jams","List Jams submitted through one Recording Link, newest first. Returns one page; pass next_cursor as cursor to continue when has_more is true.",[],[],[],[240],{"endpoint":122,"docs":81},{"name":242,"description":243,"recordCount":122,"type":123,"requiredParams":244,"optionalParams":245,"exampleEndpoint":122,"docsUrl":81,"sampleFields":246,"sampleData":247},"List Recording Links","List workspace Recording Links newest first, optionally including revoked links. Returns one page; when has_more is true, pass next_cursor as cursor to continue.",[],[],[],[248],{"endpoint":122,"docs":81},[250,253,256,259,262,265,268,271],{"id":251,"name":252},"jitsu","Jitsu",{"id":254,"name":255},"konghq","Kong Konnect",{"id":257,"name":258},"lambdatest","TestMu AI (formerly LambdaTest)",{"id":260,"name":261},"liner","Liner",{"id":263,"name":264},"localtonet","Localtonet",{"id":266,"name":267},"locize","Locize",{"id":269,"name":270},"logo-dev","Logo.dev",{"id":272,"name":273},"lovable","Lovable",1793790227186]