Connect Claude & ChatGPT
Add one connector URL, authorize with OAuth, pick a workspace. The read-only avatar tools turn on. Every client connects the same way — paste the URL, complete the handshake, choose the workspace.
https://avtrz.dev/mcp
Claude
Claude reaches the server through its Connectors directory.
- In Claude, open Settings → Connectors (web and desktop both work).
- Choose Add custom connector and paste
https://avtrz.dev/mcp. - Claude opens the Avtrz consent screen in your browser. Sign in if you aren't already.
- Pick the workspace this connection should bill to (if you belong to more than one), then click Authorize.
- Claude confirms the connector is connected. Ask it to look up a LinkedIn profile and it calls
get_profileorget_profile_avatarautomatically.
ChatGPT
ChatGPT connects MCP servers through Apps / Developer Mode.
- Enable Developer Mode in ChatGPT settings if you haven't already.
- Open Apps & Connectors → Add and choose to add an MCP server.
- Paste
https://avtrz.dev/mcp. - ChatGPT opens the Avtrz consent screen. Sign in, pick your workspace, and Authorize.
- Back in ChatGPT, the Avtrz tools appear. Ask it to resolve a profile and it calls the tools inline.
Generic MCP clients (Cursor, MCP Inspector)
Any MCP client that supports remote servers with OAuth works. Point it at the same URL and complete the browser handshake.
Cursor
Add an MCP server in settings with the remote URL:
{
"mcpServers": {
"avtrz": {
"url": "https://avtrz.dev/mcp"
}
}
}Cursor opens the consent screen in your browser; authorize and pick a workspace.
MCP Inspector
Run the inspector and connect to the streamable-HTTP transport:
npx @modelcontextprotocol/inspector # Transport: Streamable HTTP # URL: https://avtrz.dev/mcp
The inspector walks the OAuth flow for you, then lists get_profile_avatar and get_profile so you can call them by hand.
What the consent screen shows
The screen makes the grant obvious before you approve it:
- Verified publisher — the connecting client (Claude, ChatGPT, or your MCP client) is detected from its redirect URI and named at the top, with a verified badge.
- Granting access as — your account and the workspace this connection binds to. Use Switch to choose the right one. The issued token, and every quota and rate-limit decision, keys off that workspace.
- Scopes — the OpenID scopes requested (
openid,profile,email,offline_access). Required scopes are locked on; optional ones you can toggle off. - Read-only guarantee — an explicit note that the client can't write or delete data, change billing, or message your team.
- Tools this unlocks — the read-only avatar tools,
get_profile_avatarandget_profile. - Security — the exact redirect URI, plus a note that the connection uses OAuth 2.1 + PKCE and can be revoked anytime from your dashboard.
Once connected, the model also gets get_publishable_key, a read-only helper that returns the workspace's avatar key and a URL template for building durable image URLs. See MCP tools for all three.
Troubleshooting
- No workspace to grant — authorization is blocked until you have an organization. Create one in the dashboard, then retry.
- Tools return "Not authenticated" — the access token expired or was revoked. Reconnect the connector to start a fresh OAuth handshake.
- Wrong workspace billed — a connection is bound to the workspace you chose at consent time. To change it, revoke the connection and reconnect, picking the right workspace.
- Client can't discover the server — confirm the URL is exactly
https://avtrz.dev/mcp(streamable HTTP). The server answers an unauthenticated request with a401and an RFC 9728WWW-Authenticatechallenge so the client can find the authorization server. - Quota exhausted mid-chat — the tools return a clear "quota exceeded for this workspace" message. Upgrade the plan or wait for the next cycle; the connection stays valid.