Connect
Point an MCP client at https://mcp.loby.io. Transport is Streamable HTTP. Sign-in uses OAuth; the login UI is Loby Cloud.
Cursor
Add a remote MCP server with URL https://mcp.loby.io. When the client connects without a token, Loby returns 401 and OAuth metadata. Cursor registers, opens Loby Cloud, and you sign in (or confirm if you already have a session). After that, tool calls run as your user.
Local development can use http://localhost:3101 instead. That is the staff MCP running on your machine; it still needs a valid user token (see Authentication).
Claude
Use a custom connector / remote MCP with URL https://mcp.loby.io and Streamable HTTP. Complete the OAuth prompt in the browser (Loby Cloud).
MCP Inspector
npx @modelcontextprotocol/inspector
Connect to https://mcp.loby.io with transport Streamable HTTP. Leave auth to OAuth, or paste a Bearer token if you are hitting a local server.
Local development
Run the staff MCP locally (Node 24):
cd projects/mcp-server nvm use npm install npm start
That serves http://localhost:3101 and talks to local GraphQL unless you set LOBY_GRAPHQL_ENDPOINT.
Unauthenticated POST / still requires a Bearer token. For a local Cursor config, use a user token the matching GraphQL accepts (sign in to the matching web app and copy the Authorization header from a GraphQL request). Do not commit that token.
{ "mcpServers": { "loby": { "url": "http://localhost:3101", "headers": { "Authorization": "Bearer YOUR_TOKEN" } } } }
https://mcp.loby.io should use OAuth, not a pasted Bearer token.