lmstudio-agent-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
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 |
|---|---|
| agent_read_fileA | Read the contents of a text file. Returns a JSON object with the file path, requested offset/limit, and the lines that were read. Large files are capped at MAX_FILE_SIZE bytes. Args: path: Absolute or relative path to the file. offset: Number of lines to skip from the beginning. limit: Maximum number of lines to return (null = unlimited). encoding: Text encoding to use. Returns: str: JSON string with keys 'success', 'path', 'offset', 'limit', 'total_lines', 'truncated', and 'content'. |
| agent_write_fileA | Write text content to a file, optionally creating parent directories. Args: path: Absolute or relative path to the file. content: Text content to write. encoding: Text encoding to use. append: If True, append to the file instead of overwriting. create_dirs: If True, create parent directories when they do not exist. Returns: str: JSON string with keys 'success', 'path', 'bytes_written', and 'operation' ('append' or 'overwrite'). |
| agent_execute_commandA | Execute a terminal command and return stdout, stderr, and exit code. The command runs in a subprocess. By default it is executed through the system shell so that pipes, redirections, and environment variables work. Use caution with untrusted input to avoid command injection. Args: command: Shell command to execute. working_directory: Working directory for the command. timeout: Maximum execution time in seconds. env: Additional environment variables to set or override. shell: Execute the command through the system shell. Returns: str: JSON string with keys 'success', 'command', 'exit_code', 'stdout', 'stderr', and 'timed_out'. |
| agent_web_searchA | Search the web using the specified search engine and return results. Supported engines: duckduckgo (default), bing, google, baidu. Each result contains a title, URL, and short snippet. No API key is required. Args: query: Search query string. engine: Search engine to use. num_results: Maximum number of results to return. region: Optional region/locale code for search results. Returns: str: JSON string with keys 'success', 'query', 'engine', and 'results'. |
| agent_memory_saveA | Persist a key/value memory entry to disk for cross-session recall. Each entry stores: key, value, category, tags, created_at, updated_at. Memory is kept in a JSON file and is safe to read concurrently. Args: key: Unique identifier for the entry. value: Content to remember. category: Logical bucket for the entry. tags: Optional list of tags for retrieval filtering. overwrite: If False, fail when the key already exists. Returns: str: JSON with keys 'success', 'key', 'category', 'tags', 'operation' ('created' or 'updated'). |
| agent_memory_loadA | Load a single memory entry by key. Args: key: Key of the memory entry to load. Returns: str: JSON with keys 'success', 'key', and the full entry payload. |
| agent_memory_listA | List memory entries, optionally filtered by category and/or tag. Args: category: Only return entries in this category. tag: Only return entries carrying this tag. limit: Maximum number of entries to return. Returns: str: JSON with keys 'success', 'count', and 'entries'. |
| agent_memory_deleteA | Delete a single memory entry by key. Args: key: Key of the memory entry to delete. Returns: str: JSON with keys 'success', 'key', and 'deleted' (bool). |
| agent_memory_searchA | Search memory entries by substring or regex across key, value, and tags. Args: query: Substring or regex to look for. use_regex: Treat the query as a regular expression. category: Restrict the search to a single category. limit: Maximum number of matches to return. Returns: str: JSON with keys 'success', 'count', and 'matches'. |
| agent_list_skillsA | Discover and list skills available in the configured skills directory. A skill is one of:
Args: skills_dir: Override the skills directory. pattern: Optional glob pattern to filter skill names. Returns: str: JSON with keys 'success', 'skills_dir', 'count', and 'skills'. |
| agent_run_skillA | Invoke a discovered skill by name and return its result. Python skills are imported in-process and their Args: name: Skill name. input: Primary input passed to the skill as the first argument. args: Additional keyword arguments forwarded to the skill. skills_dir: Override the skills directory. timeout: Maximum execution time in seconds. Returns: str: JSON with keys 'success', 'name', 'type', 'stdout', 'stderr', 'exit_code', and 'timed_out'. |
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 11 tools
Each tool targets a distinct action and resource: memory operations (load/save/list/delete/search) are clearly separated, file read/write are distinct, command execution, web search, and skill management (list/run) are all unique. No two tools overlap in purpose.
All tools follow the consistent pattern agent_<verb>_<noun> (e.g., memory_load, read_file, web_search). The verb-noun structure is uniform and predictable across file, memory, and skill operations.
11 tools is well within the optimal range; the server's broad scope (memory, files, commands, web, skills) justifies each tool, with no redundancy or bloat.
The memory subsystem has full CRUD plus search; file read/write covers typical text I/O; command execution and web search cover external interactions; skill discovery/execution is complete. Minor gaps like file delete/list exist but are not critical for the toolkit's purpose.