Ask262

Official registry Other

MCP server for understanding Javascript internals from ECMAScript specification.

What can you do with Ask262?

  • Vector search ECMAScript specification sections using semantic queries
  • Execute JavaScript in engine262 and capture spec sections, with ask262Debug.startImportant() to mark the key parts of your code
  • Knowledge graph mapping spec sections to implementation functions
  • 1-second timeout on code execution for safety

Install

Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).

Remote (streamable-http)
Claude Code
claude mcp add --transport http ask262 'https://ask262.mcp.bendtherules.io/mcp'
JSON configuration (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "ask262": {
            "type": "http",
            "url": "https://ask262.mcp.bendtherules.io/mcp"
        }
    }
}

Documentation

From the project's README on GitHub, refreshed weekly. Links open on GitHub.

Contents
  1. Ask262
  2. 🎮 Try it now
  3. Features
  4. Available Tools
  5. Quick Start (Hosted Instance)
  6. Local Installation
  7. Testing
  8. Development
  9. License

Ask262

MCP server for exploring the ECMAScript specification and its implementation in engine262.

🎮 Try it now

The fastest way to tinker with JavaScript internals:

  • Ask262 Chat — Ask questions in natural language (register new account)
  • MCP Inspector — Direct access to all mcp tools, no signup needed
  • npx add-mcp "https://ask262.bendtherules.in/mcp"

Features

  • Vector search ECMAScript specification sections using semantic queries
  • Execute JavaScript in engine262 and capture spec sections, with ask262Debug.startImportant() to mark the key parts of your code
  • Knowledge graph mapping spec sections to implementation functions
  • 1-second timeout on code execution for safety

Available Tools

ToolDescription
ask262_search_spec_sectionsVector search ECMAScript spec for relevant sections
ask262_get_section_contentRetrieve full content from a spec section
ask262_evaluate_in_engine262Execute JS and capture spec sections, with "important" marking to focus on relevant parts

Quick Start (Hosted Instance)

Use the hosted MCP server without any local setup:

Preferred Method: npx add-mcp

Install ask262 MCP server to your client with one command:

npx add-mcp "https://ask262.bendtherules.in/mcp"
Manual Configuration

If you prefer to configure manually:

Claude Desktop (claude_desktop_config.json):

{
  "mcpServers": {
    "ask262": {
      "url": "https://ask262.bendtherules.in/mcp"
    }
  }
}

OpenCode (~/.config/opencode/opencode.json):

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "ask262": {
      "type": "remote",
      "url": "https://ask262.bendtherules.in/mcp",
      "enabled": true
    }
  }
}

Local Installation

Prerequisites
  • Bun: Version 1.0.0 or higher (install)
  • Ollama: Installed with qwen3-embedding:8b \ (ollama pull qwen3-embedding:8b)
Setup
# Clone and install
git clone https://github.com/bendtherules/ask262
cd ask262
bun install

# Or install globally
bun install -g ask262
Environment Configuration

Copy .env.example and configure:

cp .env.example .env

Key variables:

  • ASK262_EMBEDDING_PROVIDER: Choose ollama (local) or fireworks (cloud). Default: ollama
  • OLLAMA_HOST: Ollama server URL. Default: http://localhost:11434
  • FIREWORKS_API_KEY: Required if using Fireworks. Get from https://app.fireworks.ai
  • ASK262_PORT: HTTP server port. Default: 8081

Example .env:

# Use Fireworks for embeddings (faster, cloud-based)
ASK262_EMBEDDING_PROVIDER=fireworks
FIREWORKS_API_KEY=fw_your_key_here

# Or use local Ollama (default)
# ASK262_EMBEDDING_PROVIDER=ollama
# OLLAMA_HOST=http://localhost:11434
Local MCP Configuration

Claude Desktop (claude_desktop_config.json):

stdio (no server needed)
{
  "mcpServers": {
    "ask262": {
      "command": "bunx",
      "args": ["ask262"]
    }
  }
}
http (requires server)
{
  "mcpServers": {
    "ask262": {
      "url": "http://localhost:8081/mcp"
    }
  }
}

⬇️ Required for HTTP config above:

bun run ask262-http # start HTTP server

OpenCode (~/.config/opencode/opencode.json):

stdio (no server needed)
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "ask262": {
      "type": "local",
      "command": ["bunx", "ask262"],
      "enabled": true
    }
  }
}
http (requires server)
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "ask262": {
      "type": "remote",
      "url": "http://localhost:8081/mcp",
      "enabled": true
    }
  }
}

⬇️ Required for HTTP config above:

bun run ask262-http # start HTTP server

HTTP Server Endpoints:

EndpointDescription
GET /healthHealth check
GET/POST /mcpMCP protocol endpoint
GET /MCP Inspector UI (auto-connects to /mcp)

Note: /mcp is defined before the inspector's catch-all / route to ensure proper request handling.

Testing

# Run MCP server tests
bun run test-mcp-server

# Test evaluate tool with timeout
bun run test-evaluate-timeout

# Test search functionality
bun run test-search-spec-sections

Development

For development or using a custom ECMAScript specification:

  1. Clone and setup:
     git clone https://github.com/bendtherules/ask262
     cd ask262
     bun install
  2. Ensure spec is present:

    • ./spec-built/multipage/ - Built ECMAScript spec HTML files

    Steps -

    1. git clone https://github.com/tc39/ecma262
    2. npm i && npm run build
    3. copy out/ from ecma262 to spec-built/ in this repo
  3. Build vectors (lancedb)
     bun run ingest
  4. Release to npm (maintainers only):

     bun run release

    This will:

    • Check for uncommitted git changes
    • Bump patch version (e.g., 0.0.1 → 0.0.2)
    • Fix any hard links in storage/
    • Run checks and release

    Other options: bun run release -- --minor, bun run release -- --major, or bun run release -- --no-bump

License

ISC

Frequently asked questions

What is Ask262?

MCP server for understanding Javascript internals from ECMAScript specification.

How do I install Ask262?

It runs as a remote server. In Claude Code: claude mcp add --transport http ask262 'https://ask262.mcp.bendtherules.io/mcp'. For other clients, paste the JSON configuration from this page into their MCP settings.

Does Ask262 need an API key?

Its registry entry lists no required key or secret. Some features may still need an account with the service it connects to.

Is Ask262 open source?

Its code is public on GitHub, but the repository does not declare a standard license.

Who maintains Ask262?

It is published by bendtherules. AI.tn lists it but does not maintain or endorse it.

From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.