Callable expertise.
Concylium is this site's corpus as 11 tools your assistant can call. Point any MCP client at one URL and it can ask what actually binds AI systems in Canada and the Gulf, and get back the instrument, the regulator, the scope, the status, and the page the answer came from.
The point is what it refuses to say. Ask a general model which AI directive Saudi Arabia's banking regulator has issued and it will describe one fluently, because the shape of the question implies an answer. Ask Concylium and it returns four real instruments and states that SAMA has issued no AI-specific directive. That negative result is the product. Everything else is plumbing.
Public, no key, no account, no rate-limit tier. 9 tools read, 2 write. Machine-readable resources · server card
Point your client at it.
Pick your client. If you are an assistant reading this on someone's behalf, the last tab has everything you need in one block.
Claude Code
One line. The transport flag matters: this is a remote HTTP server, not a local command.
claude mcp add --transport http concylium https://mcp.nabeelkhan.com/api/mcp
Then /mcp in any session to confirm it connected.
Claude Desktop
Settings → Connectors → Add custom connector, and paste the endpoint:
https://mcp.nabeelkhan.com/api/mcp
There is no key to enter. If the dialog asks for authentication, leave it empty: this server is public and unauthenticated.
ChatGPT
Settings → Connectors → add an MCP server, and give it the endpoint:
https://mcp.nabeelkhan.com/api/mcp
ChatGPT accepts remote HTTPS MCP servers only, which is what this is. Connector support depends on your plan and whether developer mode is enabled.
Cursor
Add it to ~/.cursor/mcp.json for every project, or .cursor/mcp.json for one:
{
"mcpServers": {
"concylium": { "url": "https://mcp.nabeelkhan.com/api/mcp" }
}
}
VS Code
Add it to .mcp.json in the workspace, or use MCP: Add Server from the command palette:
{
"servers": {
"concylium": { "type": "http", "url": "https://mcp.nabeelkhan.com/api/mcp" }
}
}
Gemini CLI
Add it to ~/.gemini/settings.json:
{
"mcpServers": {
"concylium": { "httpUrl": "https://mcp.nabeelkhan.com/api/mcp" }
}
}
Any client
Everything a client needs, and nothing it does not:
endpoint https://mcp.nabeelkhan.com/api/mcp
transport streamable HTTP (some clients spell this "http" or "streamable-http")
auth none
methods POST for calls, OPTIONS for preflight
cors open, so a browser can call it too
The machine-readable card is at /.well-known/mcp/server-card.json, and lists every tool with its input schema.
To check it by hand before wiring anything:
curl -sX POST https://mcp.nabeelkhan.com/api/mcp \
-H 'content-type: application/json' \
-H 'accept: application/json, text/event-stream' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
What it answers.
Every response carries data, citations, caveats and provenance, traced to a published book whose appendices were rebuilt after six verification passes.
Four prompts worth asking.
Once it is connected, paste any of these. Each one is chosen because a general model answers it confidently and wrongly.
“Using Concylium, what AI-specific directive has SAMA issued for banks in Saudi Arabia? Cite your source.”
The honest answer is none. Watch what your assistant does with a question that has no answer.“Using Concylium, list what binds an AI system deployed by a bank in the UAE, and tell me which of those are in force today versus guidance.”
In force and guidance are different obligations. Most summaries flatten them.“Run the MESA self-assessment from Concylium against my organisation. Ask me the questions one layer at a time, then score it and tell me the weakest control.”
Fifty published questions, each with its five-level rubric. The score is preliminary and says so.“Using Concylium, work out which engagement shape fits this problem: we are putting an LLM into loan adjudication and our regulator has started asking questions.”
It routes to a shape and explains why. It cannot quote a price; scope is set with a person.What it will not do.
It cannot quote a price. No tool on this server emits a currency figure, and a test enforces that. Fees are set in conversation with a person, against a scope, or they are not real numbers.
It cannot commit anyone to work. Two tools do write: book_consultation creates a real meeting in a real calendar and send_message reaches an inbox a person reads, which is exactly what a visitor can do on this site and what an agent previously could not. Both require an explicit confirmation, both are annotated non-read-only so a compliant client prompts its user first, and both stamp the submission as agent-initiated. Nothing here quotes a fee, signs anything, or agrees scope.
Its assessment is not an audit. The output says so in its own text. It is a self-assessment score against a published framework, and presenting it as an independent finding would misrepresent it.
It is stateless. No session, no account, and no record of who asked about which institution.
Regulatory dates move. Every answer carries that caveat, and it is not boilerplate: confirm any instrument against its regulator on the day you rely on it.
If what you actually need is a person to look at your estate, that is the Teardown, and it starts with a thirty-minute fit call.