OAuth, scoped to you
An OAuth grant resolves to your NeetoKB user account, so every request runs under your permissions. Articles in categories you cannot see stay hidden, and an action you are not allowed to take is refused - the assistant sees exactly what you would see in the app. The server publishes its metadata athttps://connect.neetokb.com/.well-known/oauth-authorization-server:
Clients register themselves, so there is no key to copy. You add the server URL, the assistant sends you to NeetoKB to approve it, and it refreshes the grant on its own from then on.
OAuth currently works with the assistants that sign in through a browser - Claude and ChatGPT. Assistants that complete sign-in on a local callback address are not able to register with this deployment yet, so they connect with an API key. See Connect for which is which.
API key, scoped to the workspace
An API key carries no user identity. Requests made with it are not filtered by anyone’s permissions, so the assistant can reach every article, category, and team member in the workspace, including drafts and private categories. Use it when you want a workspace-wide integration, or when your assistant cannot use OAuth. It is the same key the REST API uses. Learn how to generate one. Your assistant sends it on every request:YOUR_API_KEY with your key, and the assistant sends the header for you.
How each NeetoKB surface authenticates
When authentication fails
MCP does not expose a 401 error the way a direct API request does. A missing or invalid credential usually looks like one of these:- The
neetokbtools never appear in your assistant. - A tool call fails, and the assistant reports it couldn’t reach NeetoKB.
Authorization header is wrong: the key may be mistyped, belong to another workspace, or have been revoked. Verify or regenerate it in the API Keys article. For OAuth, the grant may have been revoked or the approval never completed - remove the server and add it again. Then follow Troubleshooting.