Skip to content

Search these docs from your AI tool

  • Antigravity
    {
      "mcpServers": {
        "edisyl-docs": {
          "serverUrl": "https://docs.edisyl.com/mcp"
        }
      }
    }
  • Claude CodeCLI
    claude mcp add edisyl-docs https://docs.edisyl.com/mcp --transport http --scope user
  • CodexCLI
    codex mcp add --url https://docs.edisyl.com/mcp edisyl-docs
  • Cursor
    {
      "mcpServers": {
        "edisyl-docs": {
          "type": "http",
          "url": "https://docs.edisyl.com/mcp"
        }
      }
    }
  • Gemini CLI
    gemini mcp add --transport http edisyl-docs https://docs.edisyl.com/mcp
  • Goose
    {
      "extensions": {
        "edisyl-docs": {
          "enabled": true,
          "name": "edisyl-docs",
          "type": "streamable_http",
          "uri": "https://docs.edisyl.com/mcp",
          "envs": {},
          "env_keys": [],
          "headers": {},
          "description": "",
          "timeout": 300,
          "bundled": null,
          "available_tools": []
        }
      }
    }
  • JetBrains AI Assistant
    {
      "mcpServers": {
        "edisyl-docs": {
          "type": "http",
          "url": "https://docs.edisyl.com/mcp"
        }
      }
    }

    Paste into Settings → Tools → AI Assistant → Model Context Protocol → Add → As JSON. Direct file writing isn’t supported — JetBrains stores this per-version as XML.

  • Junie (JetBrains)
    {
      "mcpServers": {
        "edisyl-docs": {
          "url": "https://docs.edisyl.com/mcp"
        }
      }
    }
  • OpenCode
    {
      "mcp": {
        "edisyl-docs": {
          "type": "remote",
          "url": "https://docs.edisyl.com/mcp"
        }
      }
    }
  • VS CodeCLI
    code --add-mcp '{"name":"edisyl-docs","type":"http","url":"https://docs.edisyl.com/mcp"}'
  • Windsurf
    {
      "mcpServers": {
        "edisyl-docs": {
          "serverUrl": "https://docs.edisyl.com/mcp"
        }
      }
    }

    Supports both stdio and native HTTP connections.

Quickstart

Not “teach it everything,” and not one question in isolation either: a short list of real questions, on purpose, so you land on answers fast instead of spending the whole session on setup.

The edisyl CLI is built to be driven by an AI agent as easily as by hand. Copy this into Claude Code, Cursor, or any coding agent with terminal access, and it can run the steps below for you:

Prefer to run it yourself, step by step:

  1. Install the CLI and log in.

    Terminal window
    curl -fsSL https://cli.dev.edisyl.com/install.sh | sh
    edisyl login
    edisyl whoami

    See Install & log in if you need profiles or a non-default environment.

  2. Connect one source.

    Terminal window
    DS=$(edisyl data-sources create --name "My Warehouse" --type postgres \
    --config-file db.json --database ANALYTICS -j | jq -r '.id')
    edisyl data-sources models "$DS" # ready when placeholder descriptions are replaced
    edisyl pack list

    Creating a data source auto-creates the pack; pack list shows its name. Set that as PACK for the rest of this walkthrough (PACK="my-warehouse"). See Connect a data source for the full flow. One source is enough to start; more can come later.

  3. Brainstorm objectives.

    Let the pack propose questions from what it can actually see:

    Terminal window
    edisyl pack objectives brainstorm "$PACK" -d "$DS" --seed "<topic>"

    Already have a list of questions from a doc or a conversation? Paste it in instead: same result, faster if you already know what you want:

    Terminal window
    edisyl pack objectives structure "$PACK" --text "<question one>? <question two>?"
    # or: pbpaste | edisyl pack objectives structure "$PACK"

    See Declaring objectives for why this step matters beyond just generating a list: it’s what starts the pack working in the background, not just this session.

  4. Pick a short list. Look at what came back:

    Terminal window
    edisyl pack objectives list "$PACK" --status pending

    Pick 1–5 you actually want answered today, and archive the rest for now:

    Terminal window
    edisyl pack objectives archive <objective-id>

    A pack full of pending objectives no one’s asking about keeps working in the background at real cost, so don’t leave the ones you’re not using.

  5. Ask them.

    Terminal window
    edisyl ask "$PACK" "<question>" --wait

    Once for each question on your short list. This is also the moment to read the answer as a diagnostic, not just an answer: if ask can’t answer cleanly, see Closing gaps for how to read what it tells you about why.

You didn’t create an account, configure a pipeline, or write a query. You installed one CLI, connected one source, and let the pack turn “what can this actually answer” into a short list you picked from, then got real answers to real questions. Those same questions are now declared objectives, which means they don’t evaporate at the end of this session: the pack keeps working on them, and the next time anyone asks, the answer comes back faster and cheaper than it did just now.

From here: if a question needs a fact the data can’t express, teach the pack directly instead of modeling more data for it. Once it’s answering the way you want, steer its behavior with PACK.md, or put the same ask on a schedule so it keeps answering without anyone asking.

Next: Declaring objectives goes deeper on why declaring questions upfront beats asking them one at a time.

Report incorrect code

Please provide a detailed description of the incorrect code.