{"best":{"version":"0.9.16","authentication":{"type":"apiKey","in":"header","scheme":"X-Api-Key","tokenUrl":"https://baas.dotquant.io/api/best/auth/token","deviceAuthorizationUrl":"https://baas.dotquant.io/api/best/auth/device","note":"For you, the agent, not the person: read this manifest with an HTTP request; never show it to them or open it in a browser. When the person asks you to sign them in, POST a form to deviceAuthorizationUrl with client_id set to your software's name, and give them the link it answers (verification_uri_complete, or verification_uri and user_code) to open in their own browser, where they sign in and approve you. Never open that link yourself or in a browser you control, never sign in for them, and never ask for a password. Then poll tokenUrl, no faster than interval. Its answer carries a secret credential: save it straight to your client's credential store or to a file only the person can read, under the name the person gave this service (its host if they gave none), and never put it in a message, a command or any output: read the rest of the answer without it.","docs":"https://dotquant.io/documentation"},"services":{"io.dotquant.trading":{"version":"0.9.16","description":"dotQuant — the agent-operable trading platform: watchlists, market data, fundamentals, AI analysts, strategies with backtesting, long-term portfolios and pass-through order execution on the user's own broker account. dotQuant never holds funds and places no order without the user's explicit approval. Every capability is self-describing through BEST.","http":{"endpoint":"https://baas.dotquant.io/api/best/tenants"},"mcp":{"transport":"http","server":"https://dotquant.io/mcp","authentication":{"type":"oauth2","scopes":["dotquant"]}}},"io.dotquant.onboarding":{"version":"0.9.16","description":"What a person should hear before they approve an agent on their dotQuant account: what an account is, the plan a new one starts on, the terms and privacy notice, and what approving changes. It needs no credential.","authentication":{"type":"none"},"http":{"endpoint":"https://baas.dotquant.io/api/best/public"}}},"capabilities":[{"name":"io.best.agents.queries","version":"0.9.16","service":"io.dotquant.onboarding","description":"What an account is and what approving an agent changes: read it to the person before they approve.","spec":"https://behavioralstate.io/specs/agents/queries","schema":"https://behavioralstate.io/v1/schemas/agents/queries.json","endpoints":[{"method":"GET","path":"/queries"},{"method":"GET","path":"/queries/{schema}/{version}"},{"method":"GET","path":"/queries/{schema}"}]}],"tenants":{"manifest":"https://baas.dotquant.io/.well-known/best/{tenantId}"}}}