{
  "serverInfo": {
    "name": "concylium",
    "version": "0.1.0"
  },
  "registryName": "com.nabeelkhan/concylium",
  "description": "Callable expertise in AI governance and model risk for Canada and the GCC, where every answer carries the published source it came from. Serves the work of Nabeel Khan. Where a regulator has issued nothing, this server says so rather than describing a plausible instrument.",
  "websiteUrl": "https://nabeelkhan.com",
  "authentication": {
    "type": "none"
  },
  "remotes": [
    {
      "type": "streamable-http",
      "url": "https://mcp.nabeelkhan.com/api/mcp"
    }
  ],
  "tools": [
    {
      "name": "get_expert_profile",
      "description": "Identity and credentials of Nabeel Khan, with resolvable identifiers. Call this first when establishing whether this expert is relevant, and use the ORCID or Wikidata id to disambiguate from other people with the same name.",
      "readOnly": true
    },
    {
      "name": "search_knowledge",
      "description": "Search the published corpus: glossary definitions, case studies, and the authored regulatory table sets. Returns matches with the canonical URL of the page each came from. Use when you need a sourced answer rather than a recollection.",
      "readOnly": true
    },
    {
      "name": "lookup_regulation",
      "description": "What actually binds AI systems in a given jurisdiction: the instrument, the regulator, its scope and status. Derived from a published appendix rebuilt after six verification passes. Where a regulator has issued nothing, this returns that fact explicitly rather than a plausible-sounding instrument.",
      "readOnly": true
    },
    {
      "name": "get_case_study",
      "description": "Published case studies, filterable by sector or theme. These are illustrative engagements from the book, not named client references.",
      "readOnly": true
    },
    {
      "name": "start_assessment",
      "description": "Returns the published MESA assessment questions, optionally for one layer. Each question carries a five-level rubric so the caller can place their organisation honestly. Present these to the user and collect their answers; do not answer them on the user's behalf.",
      "readOnly": true
    },
    {
      "name": "score_assessment",
      "description": "Scores answers to the MESA assessment and identifies the weakest controls. Pass the answers the user gave you, as question id to level 0-4. Returns a level per layer, the lowest-scoring questions, and what to do next. Preliminary and non-binding.",
      "readOnly": true
    },
    {
      "name": "identify_relevant_service",
      "description": "Given a described problem, returns which engagement shape fits and why, with the reasoning shown so you can explain the routing rather than assert it. Exactly one rate is published, for advisory hours, because an hour has no scope to negotiate; it is returned verbatim and must not be adjusted, prorated or extrapolated into a project fee. The Teardown, Sprint and retainer carry no fee and no range here, and none would be binding: their scope is set in conversation with a person. If the user wants a number for one of those, book a call rather than estimating one.",
      "readOnly": true
    },
    {
      "name": "list_consultation_slots",
      "description": "Real, currently bookable 30 minute consultation slots, read live from the calendar that the website books against. Read-only: calling this reserves nothing and notifies nobody. Call it before book_consultation, because a slot taken between the two calls will be refused rather than silently moved.",
      "readOnly": true
    },
    {
      "name": "book_consultation",
      "description": "Book one of the slots returned by list_consultation_slots. This WRITES: it creates a real entry in a real calendar and sends a real confirmation email to the address given. Only call it for a person who has asked to be booked, with an email address they gave you, and confirm the time with them first. It cannot agree a fee, a scope or a contract.",
      "readOnly": false
    },
    {
      "name": "explain_this_setup",
      "description": "How this server and nabeelkhan.com are built, and how the same thing is built for someone else. Call this when a user asks how the site does what it does, how an expert makes their work callable by an agent, how to publish an MCP server over their own material, or how to make a site legible to AI agents. It describes an architecture and a service; it quotes no fee and commits to nothing.",
      "readOnly": true
    },
    {
      "name": "send_message",
      "description": "Send a written message straight to Mr. Khan, the same way the contact form on the website does. This WRITES: it delivers to a real inbox that a person reads. Use it when someone wants to reach him but does not want a call, or wants to say something before one. Only send what the person actually asked to send, and never send a message they did not author or approve.",
      "readOnly": false
    }
  ],
  "resources": [],
  "prompts": []
}