Skip to main content
Glama

Code Reference Optimizer MCP Server

by FosterG4
README.mdβ€’5.75 kB
# Code Reference Optimizer MCP Server [![Trust Score](https://archestra.ai/mcp-catalog/api/badge/quality/FosterG4/mcpsaver)](https://archestra.ai/mcp-catalog/fosterg4__mcpsaver) [![npm version](https://img.shields.io/npm/v/%40fosterg4%2Fmcpsaver.svg)](https://www.npmjs.com/package/@fosterg4/mcpsaver) ![node version](https://img.shields.io/badge/node-%3E%3D18-brightgreen) ![license](https://img.shields.io/badge/license-MIT-blue) An advanced MCP (Model Context Protocol) server that intelligently extracts minimal, relevant code context using AST parsing, analyzes code differences, and optimizes imports to dramatically reduce token usage for AI assistants. ## Key Features - **Smart Context Extraction**: Uses AST parsing to identify and extract only relevant code sections - **Multi-language Support**: TypeScript/JavaScript, Python, Go, Rust, Java, C++, and more - **Intelligent Caching**: LRU cache with configurable persistence and customizable storage paths - **Token Optimization**: Filters unnecessary code while maintaining semantic completeness - **Diff Analysis**: Provides minimal, focused code differences with semantic understanding - **Import Optimization**: Eliminates unused imports and suggests consolidation opportunities - **Configurable**: Runtime configuration via tools with persistent settings - **Simple Integration**: stdio-based server and optional HTTP server, easy to integrate with any MCP client ## Quick Start (STDIO) - One-off (recommended): ```bash npx -y @fosterg4/mcpsaver ``` You should see: `Code Reference Optimizer MCP server running on stdio`. - Global (optional): ```bash npm i -g @fosterg4/mcpsaver mcpsaver ``` ## HTTP Mode Start the HTTP server on port 8081 (default): ```bash npx -y @fosterg4/mcpsaver mcpsaver-http # or after build npm run start:http ``` Configure your MCP client to use the HTTP binary if supported, e.g.: ```json { "mcpServers": { "mcpsaver": { "command": "mcpsaver-http", "env": { "PORT": "8081", "LOG_LEVEL": "info" } } } } ``` ## Use with an MCP client Add to your MCP client config (example `mcpServers.json`): ```json { "mcpServers": { "mcpsaver": { "command": "npx", "args": ["-y", "@fosterg4/mcpsaver"], "env": {} } } } ``` ## Available Tools The server provides 7 powerful tools for code analysis and optimization: ### πŸ” `extract_code_context` Extracts minimal, focused code context using AST parsing. Intelligently identifies relevant code sections, imports, and dependencies for specific symbols. ```json { "filePath": "path/to/file.ts", "targetSymbols": ["myFunc", "MyClass"], "includeImports": true, "maxTokens": 1000 } ``` **Required**: `filePath` | **Optional**: `targetSymbols`, `includeImports`, `maxTokens` ### πŸ’Ύ `get_cached_context` Retrieves previously extracted and cached code context for fast access without re-parsing. ```json { "filePath": "path/to/file.ts", "cacheKey": "optional-key" } ``` **Required**: `filePath` | **Optional**: `cacheKey` ### πŸ“Š `analyze_code_diff` Performs intelligent analysis of code differences with semantic understanding and minimal update suggestions. ```json { "filePath": "path/to/file.ts", "oldContent": "export function a() { return 1 }", "newContent": "export function a() { return 2 }" } ``` **Required**: `filePath`, `oldContent`, `newContent` ### 🧹 `optimize_imports` Analyzes and optimizes import statements to eliminate redundancy and improve code efficiency. ```json { "filePath": "path/to/file.ts", "usedSymbols": ["useEffect", "useMemo"] } ``` **Required**: `filePath` | **Optional**: `usedSymbols` ### βš™οΈ `get_config` Retrieves current configuration settings for cache behavior, extraction parameters, and more. ```json { "section": "cache" } ``` **Optional**: `section` (cache, extraction, imports, diff, performance, languages, logging, security) ### πŸ”§ `update_config` Updates configuration settings including cache policies, token limits, and performance thresholds. ```json { "config": { "cache": { "enablePersistence": true, "persistencePath": "/custom/cache/path" }, "extraction": { "maxTokens": 2000 } } } ``` **Required**: `config` ### πŸ”„ `reset_config` Resets all configuration settings to default values. ```json {} ``` **No parameters required** Note: Tool results are returned as MCP content with a single `text` item containing JSON of the result, e.g. ```json { "content": [{ "type": "text", "text": "{\n \"...\": true\n}" }] } ``` ## Additional MCP Capabilities - **Prompts**: listed but empty; `get_prompt` returns MethodNotFound. - **Resources**: listed but empty; reading a resource returns MethodNotFound. - **Roots**: exposes the current working directory as a single root `workspace`. - **Sampling**: stubbed; `sampling/createMessage` returns MethodNotFound. ## Examples See `docs/EXAMPLES.md` for end‑to‑end request examples of each tool. ## Configuration - Call `get_config`, `update_config`, `reset_config` to manage runtime settings. - You may also set environment variables via your MCP client if supported (e.g., `LOG_LEVEL`). ### Structured Logging The server uses a lightweight structured logger. Configure via `get_config`/`update_config` or env: - Level: `config.logging.level` (trace|debug|info|warn|error) - File logging: `config.logging.enableFileLogging` and `config.logging.logPath` ## Development ```bash npm ci npm run build npm start # run built server (stdio) npm run start:http # run built server (http) npm run dev # tsc --watch npm test npm run lint npm run type-check ``` ## Publishing (maintainers) ```bash npm login npm run clean && npm run build npm version patch npm publish --access public ``` ## License MIT β€” see `LICENSE`.

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/FosterG4/mcpsaver'

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