Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
IK8B_BINNoPath to prebuilt ik8b binary
IK8B_ROOTNoPath to ik8b checkout (defaults to <IKIDE_ROOT>/tools/ik8b)
IKIDE_BINNoPath to prebuilt ikide binary
IKIDE_ROOTNoPath to ikide checkout (overrides vendored submodule)

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{}
prompts
{}
resources
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
ik_overviewA

Curated cheat-sheet for the ik language: sigils ($ @ %), the left-to-right value -> target assignment, program shape, types, memory spaces, control flow, interrupts, and a minimal program. READ THIS FIRST before writing any ik code.

ik_grammarA

The complete formal EBNF grammar of the ik language.

ik_referenceA

Read a language-reference chapter as plain text. Topics: lexical, types, memory, expressions, statements, functions, interrupts, interrupt-vectors, intrinsics, conditional-compilation, grammar.

ik_intrinsicsA

List the compiler intrinsics (@nop @sei @cli @wdr @sleep @break @burn @swap @movw @mul @goto @spm @swtch) with signatures and notes. These are the only built-in @-functions.

ik_vm_referenceA

Deep reference for the ik8bvm AVR simulator: core classes, register file, SREG flags, memory map, the implemented instruction set, the peripherals/interrupts modeled, cycle counting, and the explicit limitations. Use this to reason about simulation behaviour.

ik_compiler_referenceA

Deep reference for the ik8b compiler internals: the lex->parse->IR->regalloc->AVR->HEX pipeline, the SSA IR shown by --emit ir, register allocation, the calling convention/ABI, ISR codegen, fixed-point (r8/r16) lowering, intrinsic lowering, and optimization passes. Use this to reason about the generated code.

ik_tutorialA

Read a tutorial page, or list pages when no argument is given. Pages: index, installing, firstprogram, tour, stdlib, interrupts.

ik_stdlib_listA

List every standard-library module with a one-line summary, whether it depends on the selected target, and its public function count.

ik_stdlib_moduleA

Full API for one stdlib module: every public function signature + summary, the rendered reference doc, and optionally the ik source. Accepts 'gpio' or 'std/gpio'.

ik_examplesA

List bundled ik example programs, or return one example's source by name.

ik_searchA

Full-text search across the language reference, stdlib docs, tutorial, toolchain docs, std/ sources, and examples. Returns matching lines with scope/file/line.

ik_devicesA

List supported AVR target devices (name, core family, SRAM, FLASH, EEPROM, SRAM_START). Optional filter matches a device-name substring or an exact core family (AVRe, AVRePlus, AVRxm, AVRxt, AVRrc).

ik_device_infoA

Memory layout and core family for one device (the value for target <device>).

ik_compileA

Compile ik source (inline source or a path) with the real ik8b compiler. Returns success, diagnostics, and the Intel HEX (emit=hex) or SSA IR (emit=ir) artifact. import std/... resolves automatically. Use this to VERIFY any ik code you generate.

ik_checkA

Fast syntax/semantic check: compile and return only ok + diagnostics (no artifact). The quickest write-compile-fix feedback loop.

ik_simulateA

Run code on the ik8bvm AVR core simulator. Provide ik source/path (compiled then run with the source's own target), OR a hex_path + mcu. Returns the register/PC/SP/SREG dump, any --peek bytes, and an optional instruction trace. Interrupts can be injected for testing.

ik_project_analyzeA

Understand a multi-file ik project structurally (exact, parser-based — not fuzzy search). Returns the import graph, the effective target and where it is declared, the @main entry file, the symbols each file exports (functions/isrs/consts), and cross-file problems (no/conflicting target, missing/duplicate @main, unresolved imports). Use this BEFORE editing an existing project so you write in the right context (e.g. don't re-declare target in imported files — they inherit it). Give a directory path, a single-file path, or inline files. Set include_diagnostics to also compile the entry point for authoritative errors.

ik_statusA

Diagnostics: resolved toolchain root, compiler/simulator binary paths, and whether documentation sources are available.

ide_overviewA

How to build a complete ikide project: the program (.ik), the test bench (tests/.rhai), and virtual devices/peripherals (devices/.rhai), and how they fit together. READ THIS before writing tests or devices.

ide_test_apiB

The complete test-bench (Bench) API for tests/*.rhai: every function to drive and observe the simulated core (program, run, UART, SPI, I2C, ADC, GPIO, SRAM/IO, EEPROM, interrupts, core) plus assertions, grouped by area, with how-to-run notes and examples.

ide_test_templateC

A starter tests/*.rhai bench script to adapt.

ide_run_testsA

Run the headless ikide test runner and return the real PASS/FAIL verdict. Provide an existing workspace (with tests/*.rhai), OR inline program + test (assembled into a throwaway workspace). Optionally attach custom devices and pick an mcu for load_hex tests.

ide_device_apiB

The complete virtual-device authoring contract for devices/.rhai: meta() fields, pin/terminal modes, view element kinds, every behaviour handler (pin_set, on_view, spi_transfer, i2c_, uart_tx/poll, tick), the framebuffer/display API, helpers, and the execution model & limits.

ide_device_templateC

A starter devices/*.rhai virtual-device script to adapt.

ide_devicesA

List the virtual-device models the IDE ships (name, bus, address, display, pins, purpose). Optional filter matches name or bus (none/uart/spi/i2c). Read one model's source with ide_device_script.

ide_device_scriptA

Return the full Rhai source of a shipped device model (e.g. 'ssd1306', 'max7219', 'led') — a worked reference for authoring your own.

ide_examplesA

List the IDE's bundled breadboard example projects (program + wiring + often tests/devices), with title and description.

ide_exampleA

Return all files of one example project (main.ik, tests/.rhai, devices/.rhai, info.json, README) — a complete worked reference.

ide_searchA

Full-text search across the IDE's device scripts, the device-authoring guide, and example projects' programs/tests.

ide_statusB

Diagnostics: resolved ikide root, ikide binary path, and whether the IDE checkout is available.

Prompts

Interactive templates invoked by user choice

NameDescription
ik_new_projectScaffold a new ik program from a plain-language goal: pick the target, write idiomatic ik, and verify it compiles and simulates.
ik_write_testsWrite a tests/*.rhai bench for an ik program and run it headless for a real PASS/FAIL verdict.
ik_model_deviceAuthor a devices/*.rhai virtual peripheral so a program can be tested against a part you don't have on the bench.
ik_port_targetPort an ik program to a different AVR target, adjusting register addresses and guarding device-specific code.
ik_debugDiagnose and fix an ik compile or simulation failure using the real compiler and the language reference.
ik_reviewReview an ik program or project for correctness, idiom, and resource use.

Resources

Contextual data attached and managed by the client

NameDescription
ik overviewCurated ik language cheat-sheet.
ik grammar (EBNF)Formal EBNF grammar.
ik8bvm referenceDeep AVR simulator reference.
ik8b internalsDeep compiler internals reference.
ikide project overviewHow program + tests + devices fit together.
ikide test APIThe test-bench (Bench) scripting API.
ikide device APIThe virtual-device authoring contract.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/isakruas/ikmcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server