julia-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| JULIA_THREADS | No | Number of threads for Julia (e.g., 'auto', '1'). Default is 'auto'. | |
| JULIA_STARTUP_FILE | No | Whether to load Julia's startup file ('yes' or 'no'). Default is 'no'. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| julia_evalA | ALWAYS use this tool to run Julia code. NEVER run julia via command line. Persistent REPL session with state preserved between calls.
Each env_path gets its own session, started lazily.
Do not type Args: code: Julia code to evaluate. Use display(...)/println(...) to see output. env_path: Julia project directory path. Omit for a temporary environment. timeout: Seconds (default: 60). Auto-disabled for Pkg operations. julia_cmd: Custom Julia command, should be used rarely, only when explicitly requested. Examples: "julia +1.11", "julia --check-bounds=yes", "/path/to/julia". |
| julia_restartA | Restart a Julia session, clearing all state. IMPORTANT: Restarting is slow and loses all session state. Very rarely needed. Revise.jl is loaded automatically in every session, so code changes to loaded packages are picked up without restarting. Only restart as a last resort when the session is truly broken, or code changes that Revise cannot fix. Do NOT restart just because source files were edited between script or test runs — Revise picks up those changes automatically. Args: env_path: Environment to restart. If omitted, restarts the temporary session (NOT every active session) — most callers should pass the same env_path they used in julia_eval. |
| julia_list_sessionsA | List all active Julia sessions and their environments. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 3 tools
Each tool has a clearly distinct purpose: julia_eval runs code, julia_list_sessions lists active sessions, and julia_restart restarts a session. There is no overlap or ambiguity.
All tool names follow a consistent 'julia_verb' pattern with snake_case, making it easy to predict and understand the function of each tool.
With 3 tools, the server covers the essential interactions with a Julia REPL (evaluating code, listing sessions, restarting). The count is well-scoped for the server's purpose.
The tool set covers core lifecycle operations (evaluate, list, restart). Minor gaps like obtaining session metadata or clearing state without restarting exist, but the surface is functional for typical usage.