For developers
Endpoint
Section titled “Endpoint”| Item | Value |
|---|---|
| Server | https://trysort.com/mcp |
| Transport | Streamable HTTP, stateless JSON responses |
| Protocol versions | 2026-07-28, and the 2025-11-25 family for older clients |
| Capabilities | Tools |
Authorization
Section titled “Authorization”Sort is an OAuth 2.1 authorization server. A request without a valid token gets 401 with:
WWW-Authenticate: Bearer resource_metadata="https://trysort.com/.well-known/oauth-protected-resource/mcp", scope="sort"| Item | Value |
|---|---|
| Protected resource metadata (RFC 9728) | https://trysort.com/.well-known/oauth-protected-resource/mcp |
| Authorization server metadata (RFC 8414) | https://trysort.com/.well-known/oauth-authorization-server |
| Issuer | https://trysort.com |
| Client registration | Client ID metadata documents (an HTTPS client ID), or dynamic registration at /oauth/register |
| Grant types | authorization_code with PKCE S256 (required), refresh_token |
| Client authentication | none, client_secret_post or client_secret_basic |
| Scope | sort: everything the member can do |
| Tokens | Access tokens last one hour. Refresh tokens last 30 days and are single use; reusing one revokes the grant. |
| Revocation | /oauth/revoke (RFC 7009) |
Redirect URIs must use HTTPS, a loopback HTTP address (127.0.0.1, localhost or [::1], any port) or a private app scheme such as cursor://. The authorization response includes iss (RFC 9207).
Access tokens work only on /mcp, not on Sort’s web API.
Sort serves the same tools as Sort AI chat, plus search and fetch in the shape ChatGPT deep research uses. Each tool has readOnlyHint, destructiveHint and openWorldHint annotations. See Tools.
Tool errors return isError: true with a message the model can act on, for example a missing parameter or no access.
Approvals
Section titled “Approvals”A tool call that needs the member’s approval returns a pendingAction with an approvalUrl and an id. Show the link to the member. Call get_approval with the id to read the status: pending, confirmed, cancelled, failed or expired.
Test with the MCP Inspector
Section titled “Test with the MCP Inspector”npx @modelcontextprotocol/inspectorChoose Streamable HTTP, enter https://trysort.com/mcp and connect. The Inspector runs the OAuth flow in your browser.