Files
ask262/Readme.md
T
bendtherules 0eff954a4f docs: replace Setup section with Development guide
Removed the outdated Setup documentation and introduced a new Development section that includes cloning instructions, spec setup steps, and guidance on building the knowledge graph for custom ECMAScript specifications. This reorganization clarifies the workflow for developers and users building the project from source.
2026-04-14 17:50:10 +05:30

107 lines
2.3 KiB
Markdown

# Ask262
MCP server for exploring the ECMAScript specification and its implementation in [engine262](https://github.com/bendtherules/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](https://bun.sh/docs/installation))
- **Ollama**: Installed locally with `qwen3-embedding:0.6b` model pulled (`ollama pull qwen3-embedding:0.6b`)
### Environment Variables
- `OLLAMA_HOST` (optional): Ollama server URL. Defaults to `http://localhost:11434`
## Installation
```bash
# 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`):
```json
{
"mcpServers": {
"ask262": {
"command": "bunx",
"args": ["ask262"]
}
}
}
```
**OpenCode** (`.opencode/mcp.json`):
```json
{
"servers": {
"ask262": {
"command": "bunx",
"args": ["ask262"]
}
}
}
```
## 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
```bash
# 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**:
```bash
git clone https://github.com/bendtherules/ask262
cd ask262
bun install
```
2. **Ensure spec is present**:
- `./spec-built/multipage/` - ECMAScript spec HTML files
3. **Build knowledge graph** (if using custom spec):
```bash
bun run build
```
## License
ISC