mirror of
https://github.com/bendtherules/ask262.git
synced 2026-08-18 13:21:55 +00:00
2603e65e5dfdfffc162f8a1bc0c41aab0ae9dd07
Ask262
MCP server for exploring the ECMAScript specification and its implementation in engine262.
Features
- Vector search ECMAScript specification sections using semantic queries
- Execute JavaScript in engine262 and capture which spec sections are hit
- Knowledge graph mapping spec sections to implementation functions
- 1-second timeout on code execution for safety
Prerequisites
- Bun: Version 1.0.0 or higher (install)
- Ollama: Installed locally with
qwen3-embedding:0.6bmodel pulled (ollama pull qwen3-embedding:0.6b)
Environment Variables
OLLAMA_HOST(optional): Ollama server URL. Defaults tohttp://localhost:11434
Installation
# Install globally with bun
bun install -g ask262
# Or run directly without installing
bunx ask262
# Or clone and install
git clone https://github.com/bendtherules/ask262
cd ask262
bun install
MCP Configuration
Add to your MCP client configuration using bunx (no installation required):
Claude Desktop (claude_desktop_config.json):
{
"mcpServers": {
"ask262": {
"command": "bunx",
"args": ["ask262"]
}
}
}
OpenCode (global config ~/.config/opencode/opencode.json or project config opencode.json):
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"ask262": {
"type": "local",
"command": ["bunx", "ask262"],
"enabled": true
}
}
}
Available Tools
| Tool | Description |
|---|---|
ask262_search_spec_sections |
Vector search ECMAScript spec for relevant sections |
ask262_get_section_content |
Retrieve full content from a spec section |
ask262_evaluate_in_engine262 |
Execute JS in engine262 and capture spec section marks |
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:
-
Clone and setup:
git clone https://github.com/bendtherules/ask262 cd ask262 bun install -
Ensure spec is present:
./spec-built/multipage/- ECMAScript spec HTML files
-
Build knowledge graph (if using custom spec):
bun run build -
Release to npm (maintainers only):
bun run releaseThis 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, orbun run release -- --no-bump
License
ISC
Languages
HTML
49%
JavaScript
32.7%
TypeScript
18.3%