1import{v as m,j as e,C as i,D as l,B as j,T as t,G as h,E as c,bu as f,bs as n,ac as y,_ as s,I as x,a7 as k,X as C,a8 as b}from"./index-dE8a1mPK.js";import{C as u}from"./Code-YtMEZkZ5.js";import{C as w,I as v}from"./IconCopy-B63sUmw8.js";/** 2 * @license @tabler/icons-react v3.43.0 - MIT 3 * 4 * This source code is licensed under the MIT license. 5 * See the LICENSE file in the root directory of this source tree. 6 */const z=[["path",{d:"M7 8l-4 4l4 4",key:"svg-0"}],["path",{d:"M17 8l4 4l-4 4",key:"svg-1"}],["path",{d:"M14 4l-4 16",key:"svg-2"}]],I=m("outline","code","Code",z);/** 7 * @license @tabler/icons-react v3.43.0 - MIT 8 * 9 * This source code is licensed under the MIT license. 10 * See the LICENSE file in the root directory of this source tree. 11 */const S=[["path",{d:"M8 9l3 3l-3 3",key:"svg-0"}],["path",{d:"M13 15l3 0",key:"svg-1"}],["path",{d:"M3 6a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2l0 -12",key:"svg-2"}]],T=m("outline","terminal-2","Terminal2",S),p="https://xlift-mcp-production.up.railway.app/mcp",M=`claude mcp add --transport http xlift ${p}`,B=JSON.stringify({mcpServers:{xlift:{type:"http",url:p}}},null,2);function P({value:a,label:o="Copy"}){return e.jsx(w,{value:a,timeout:1500,children:({copied:r,copy:g})=>e.jsx(C,{size:"xs",variant:r?"filled":"light",color:r?"green":"gray",leftSection:r?e.jsx(b,{size:14}):e.jsx(v,{size:14}),onClick:g,children:r?"Copied":o})})}function d({value:a,label:o}){return e.jsxs(h,{gap:"xs",wrap:"nowrap",align:"center",children:[e.jsx(u,{block:!0,style:{flex:1,minWidth:0,whiteSpace:"pre-wrap",wordBreak:"break-all",fontSize:12},children:a}),e.jsx(P,{value:a,label:o})]})}function N(){return e.jsxs(i,{gap:"md",maw:860,children:[e.jsxs(l,{withBorder:!0,p:0,style:{overflow:"hidden",position:"relative"},children:[e.jsx("style",{children:` 12 @keyframes xl-mcp-drift { from { background-position: 0% 50%; } to { background-position: 200% 50%; } } 13 .xl-mcp-word { 14 font-size: clamp(72px, 18vw, 160px); 15 font-weight: 900; 16 letter-spacing: -0.06em; 17 line-height: 0.9; 18 text-align: center; 19 background: linear-gradient(100deg, #1e90ff, #a855f7, #ec4899, #f59e0b, #1e90ff); 20 background-size: 200% 100%; 21 -webkit-background-clip: text; 22 background-clip: text; 23 color: transparent; 24 animation: xl-mcp-drift 9s linear infinite; 25 } 26 .xl-mcp-grid { 27 position: absolute; inset: 0; pointer-events: none; 28 background-image: 29 linear-gradient(currentColor 1px, transparent 1px), 30 linear-gradient(90deg, currentColor 1px, transparent 1px); 31 background-size: 44px 44px; 32 opacity: 0.05; 33 mask-image: radial-gradient(circle at 50% 50%, #000 0%, transparent 72%); 34 -webkit-mask-image: radial-gradient(circle at 50% 50%, #000 0%, transparent 72%); 35 } 36 @media (prefers-reduced-motion: reduce) { .xl-mcp-word { animation: none; } } 37 `}),e.jsx(j,{className:"xl-mcp-grid"}),e.jsxs(i,{gap:4,align:"center",py:44,px:"md",style:{position:"relative"},children:[e.jsx("div",{className:"xl-mcp-word",children:"MCP"}),e.jsx(t,{fw:600,size:"lg",ta:"center",children:"Run Xlift from inside Claude"}),e.jsx(t,{size:"sm",c:"dimmed",ta:"center",maw:520,children:"Connect once and Claude gets your accounts, campaigns, leads, inbox and analytics as tools â ask in plain English, it does the work here."}),e.jsxs(h,{gap:"xs",mt:"xs",children:[e.jsx(c,{variant:"light",color:"blue",children:"54 tools"}),e.jsx(c,{variant:"light",color:"grape",children:"OAuth â no key to paste"}),e.jsx(c,{variant:"light",color:"teal",children:"Streamable HTTP"})]})]})]}),e.jsxs(l,{withBorder:!0,children:[e.jsxs(h,{gap:"xs",mb:"xs",children:[e.jsx(f,{size:16}),e.jsx(t,{fw:600,size:"sm",children:"Server URL"})]}),e.jsx(d,{value:p,label:"Copy URL"})]}),e.jsx(l,{withBorder:!0,children:e.jsxs(n,{defaultValue:"claude",children:[e.jsxs(n.List,{mb:"md",children:[e.jsx(n.Tab,{value:"claude",leftSection:e.jsx(y,{size:14}),children:"Claude app"}),e.jsx(n.Tab,{value:"cli",leftSection:e.jsx(T,{size:14}),children:"Claude Code"}),e.jsx(n.Tab,{value:"other",leftSection:e.jsx(I,{size:14}
37),children:"Other clients"})]}),e.jsx(n.Panel,{value:"claude",children:e.jsx(i,{gap:"sm",children:e.jsxs(s,{type:"ordered",size:"sm",spacing:"xs",children:[e.jsxs(s.Item,{children:["Open"," ",e.jsx(x,{href:"https://claude.ai/settings/connectors",target:"_blank",rel:"noreferrer",children:"claude.ai â Settings â Connectors"})," ","and click ",e.jsx("b",{children:"Add custom connector"}),"."]}),e.jsxs(s.Item,{children:["Name it ",e.jsx("b",{children:"Xlift"})," and paste the server URL above."]}),e.jsxs(s.Item,{children:["Claude opens a sign-in page â use the same account you log into this panel with, then approve. Tick ",e.jsx("b",{children:"admin"})," only if you want Claude to disconnect accounts and run bulk operations."]}),e.jsx(s.Item,{children:"Ask it something: âwhat did Xlift do today?â"})]})})}),e.jsx(n.Panel,{value:"cli",children:e.jsxs(i,{gap:"sm",children:[e.jsxs(t,{size:"sm",children:["Run this in any terminal, then ",e.jsx(u,{children:"/mcp"})," inside Claude Code to sign in."]}),e.jsx(d,{value:M,label:"Copy command"})]})}),e.jsx(n.Panel,{value:"other",children:e.jsxs(i,{gap:"sm",children:[e.jsx(t,{size:"sm",children:"Any MCP client that speaks Streamable HTTP with OAuth 2.1 works. Drop this into its config:"}),e.jsx(d,{value:B,label:"Copy JSON"})]})})]})}),e.jsxs(l,{withBorder:!0,children:[e.jsx(t,{fw:600,size:"sm",mb:"xs",children:"Try asking"}),e.jsxs(s,{size:"sm",spacing:4,c:"dimmed",children:[e.jsx(s.Item,{children:"âWhich of my accounts had the most replies this week?â"}),e.jsx(s.Item,{children:"âDraft 5 tweets in my brand voice and schedule them for tomorrow.â"}),e.jsx(s.Item,{children:"âFind 50 founders tweeting about cold outreach and add them to a list.â"}),e.jsx(s.Item,{children:"âAnything in the inbox I haven't answered?â"})]}),e.jsxs(t,{size:"xs",c:"dimmed",mt:"sm",children:["Everything Claude does runs through the same guardrails, caps and approvals as the panel. Writes it makes show up in your"," ",e.jsx(x,{component:k,to:"/audit",children:"audit log"}),"."]})]})]})}export{N as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.