Skip to main content
Glama
systempromptio

SystemPrompt Coding Agent

Official
README.md5.81 kB
# Server Configuration Constants Server-level configuration and metadata for the SystemPrompt Coding Agent MCP server, defining capabilities, protocol version, and runtime settings. ## Overview This directory contains the core server configuration that defines how the MCP server presents itself to clients and what capabilities it offers. It follows the MCP specification for server implementation metadata. ## Files ### 📄 `server-config.ts` Complete MCP server configuration including: #### Server Implementation (`serverConfig`) ```typescript export const serverConfig: Implementation = { name: "systemprompt-coding-agent", version: "0.01", metadata: { name: "SystemPrompt Coding Agent", description: "MCP server for orchestrating Claude Code CLI...", icon: "code", color: "blue", serverStartTime: Date.now(), environment: process.env.NODE_ENV || "production", customData: { serverType: "coding-agent-orchestrator", implementationFeatures: [ "task-orchestration", "agent-management", "state-persistence", "real-time-notifications" ] } } }; ``` #### Server Capabilities (`serverCapabilities`) ```typescript export const serverCapabilities: ServerCapabilities = { tools: {}, // Tools defined separately prompts: {}, // Prompts available resources: {}, // Resources exposed notifications: true // Real-time updates }; ``` #### Additional Configuration (`SERVER_CONFIG`) ```typescript export const SERVER_CONFIG = { SESSION_TIMEOUT_MS: 1800000, // 30 minutes REQUEST_SIZE_LIMIT: "10mb", RATE_LIMIT: { window: 60000, // 1 minute max: 100 // requests per window }, PROTOCOL_VERSION: "2025-06-18", FEATURES: { asyncTaskExecution: true, multiAgentSupport: true, branchBasedExecution: true, statePersistence: true } }; ``` ## MCP Protocol Version The server implements MCP protocol version **2025-06-18** (latest stable) as defined in the specification. ## Capabilities Explained ### Tools ✅ The server provides tools for: - **Task Management**: Create, update, monitor tasks - **Agent Control**: Manage Claude Code and Gemini sessions - **State Operations**: Clean, persist, restore state - **System Utilities**: Check status, get prompts ### Prompts ✅ Dynamic prompt generation for: - Bug fixing workflows - Unit test creation - React component development - Custom coding patterns ### Resources ✅ Structured data access: - Task outputs and logs - Resource templates - Task history - System state ### Notifications ✅ Real-time updates for: - Task status changes - Agent progress - Resource updates - System events ## Server Metadata ### Implementation Features The server advertises these features: - **task-orchestration**: Manages coding tasks - **agent-management**: Controls AI agents - **state-persistence**: Saves task state - **real-time-notifications**: WebSocket updates - **branch-execution**: Git branch integration - **multi-tool-support**: Multiple agent types ### Environment Information Runtime data included: ```typescript { serverStartTime: Date.now(), environment: process.env.NODE_ENV, nodeVersion: process.version, platform: process.platform } ``` ## Configuration Details ### Session Management - **Timeout**: 30 minutes of inactivity - **Cleanup**: Automatic on disconnect - **Persistence**: Optional state saving ### Rate Limiting - **Window**: 1 minute rolling - **Limit**: 100 requests per window - **Per-client**: Individual tracking ### Request Handling - **Size Limit**: 10MB per request - **Timeout**: 5 minutes for long operations - **Compression**: gzip supported ## Usage ### Import Configuration ```typescript import { serverConfig, serverCapabilities, SERVER_CONFIG } from '@/constants/server/server-config'; // Initialize MCP server const server = new Server(serverConfig, serverCapabilities); // Use additional config app.use(express.json({ limit: SERVER_CONFIG.REQUEST_SIZE_LIMIT })); ``` ### Accessing Metadata ```typescript // Get server info const serverInfo = { ...serverConfig, uptime: Date.now() - serverConfig.metadata.serverStartTime, capabilities: Object.keys(serverCapabilities) }; ``` ## Customization ### Adding Features To add new features: 1. **Update Capabilities** ```typescript export const serverCapabilities = { ...existing, myFeature: { enabled: true } }; ``` 2. **Update Metadata** ```typescript customData: { implementationFeatures: [ ...existing, "my-new-feature" ] } ``` 3. **Update Config** ```typescript FEATURES: { ...existing, myFeature: true } ``` ### Environment-Specific Config ```typescript const isDev = process.env.NODE_ENV === 'development'; export const SERVER_CONFIG = { SESSION_TIMEOUT_MS: isDev ? 3600000 : 1800000, RATE_LIMIT: { max: isDev ? 1000 : 100 } }; ``` ## Best Practices 1. **Version Management**: Update version on releases 2. **Feature Flags**: Use config for toggling features 3. **Environment Vars**: Override defaults via env 4. **Type Safety**: Always use TypeScript types 5. **Documentation**: Keep metadata descriptive ## Security Considerations - Rate limiting prevents abuse - Request size limits prevent DoS - Session timeouts limit resource usage - Environment isolation for secrets ## Monitoring The configuration exposes metrics: - Server uptime - Active features - Protocol version - Environment status ## Future Enhancements Planned additions: - OAuth 2.1 authentication config - Advanced rate limiting rules - Feature deprecation notices - Client version requirements This configuration forms the foundation of how the MCP server presents itself and operates within the Model Context Protocol ecosystem.

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/systempromptio/systemprompt-code-orchestrator'

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