Back to Browse

Ask262 MCP Server

Developer ToolsUse Caution4.2MCP RegistryLocalRemote
Free

Server data from the Official MCP Registry

MCP server for understanding Javascript internals from ECMAScript specification.

About

MCP server for understanding Javascript internals from ECMAScript specification.

Remote endpoints: streamable-http: https://ask262.mcp.bendtherules.io/mcp

Security Report

4.2
Use Caution4.2High Risk

Ask262 is a well-structured MCP server for exploring ECMAScript specifications with reasonable security practices. The server properly validates and limits code execution (1-second timeout), uses environment variables for sensitive configuration, and has appropriate input validation for spec searches. Minor code quality issues and broad exception handling in some places prevent a higher score, but no critical vulnerabilities or malicious patterns were identified. Supply chain analysis found 8 known vulnerabilities in dependencies (0 critical, 4 high severity).

4 files analyzed Ā· 12 issues found

Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.

Permissions Required

This plugin requests these system permissions. Most are normal for its category.

File System Read

Reads files on your machine. Normal for tools that analyze or process local data.

HTTP Network Access

Connects to external APIs or services over the internet.

env_vars

Check that this permission is expected for this type of plugin.

process_spawn

Check that this permission is expected for this type of plugin.

How to Install & Connect

Available as Local & Remote

This plugin can run on your machine or connect to a hosted endpoint. during install.

Documentation

View on GitHub

From the project's GitHub README.

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

Reviews

No reviews yet

Be the first to review this server!