Engineering Standards MCP Server
Provides AI assistants with structured access to an organization's engineering standards, practices, and processes through searchable knowledge base with CRUD operations and multi-dimensional organization.
README
Engineering Standards MCP Server
A Model Context Protocol (MCP) server for managing engineering standards, practices, and processes. This server provides AI assistants with structured access to your organization's engineering knowledge base through a standardized interface.
Table of Contents
- Features
- Installation
- Usage
- Architecture
- Tools
- File Naming Conventions
- Configuration
- Contributing
- License
Features
- Multi-dimensional Organization: Standards organized by type, tier, process, and tags
- Full-Text Search: Powerful search with relevance scoring across all standards
- Flexible Output: Support for both JSON and Markdown response formats
- In-Memory Caching: High-performance indexing for fast retrieval
- Type-Safe: Complete TypeScript implementation with strict validation
- MCP-Compliant: Built on the Model Context Protocol SDK v1.24+
- REST API: HTTP transport for easy integration with AI assistants
- CRUD Operations: Create, read, update, and manage standards programmatically
Installation
Prerequisites
- Node.js >= 18.0.0
- npm (comes with Node.js)
Step-by-Step Setup
- Clone or extract the project:
cd engineering-standards-mcp-server
- Install dependencies:
npm install
This will install approximately 192 packages including:
@modelcontextprotocol/sdk- MCP SDKexpress- HTTP serverzod- Schema validationgray-matter- Markdown frontmatter parsingglob- File pattern matching
- Verify installation:
npm start
Expected output:
============================================================
engineering-standards-mcp-server v1.0.0
============================================================
✓ Server running on http://localhost:3000/mcp
✓ Health check: http://localhost:3000/health
Ready to accept MCP connections.
Usage
Starting the Server
Development mode (with auto-reload):
npm run dev
Production mode:
npm start
Docker Deployment
Using Docker Compose (Recommended):
docker-compose up -d
Using Docker CLI:
# Build the image
npm run docker:build
# Run the container
npm run docker:run
For detailed Docker deployment instructions, see DOCKER.md.
Connecting AI Clients
Claude Desktop:
claude mcp add --transport http engineering-standards http://localhost:3000/mcp
MCP Inspector (for testing):
npx @modelcontextprotocol/inspector
# Connect to: http://localhost:3000/mcp
VS Code (if supported):
code --add-mcp '{"name":"engineering-standards","type":"http","url":"http://localhost:3000/mcp"}'
Example Queries
Once connected, you can interact with the server through your AI assistant:
- "List all active backend standards"
- "Search for Spring Boot security practices"
- "Show me the frontend development principles"
- "Create a new standard for API testing"
- "Update the database performance standard"
Health Check
Verify the server is running:
Invoke-WebRequest -Uri http://localhost:3000/health
Architecture
Project Structure
engineering-standards-mcp-server/
├── src/
│ ├── index.ts # Main server entry point
│ ├── constants.ts # Configuration constants
│ ├── types.ts # TypeScript type definitions
│ ├── schemas/
│ │ └── metadata.ts # Zod validation schemas
│ ├── services/
│ │ ├── validator.ts # Metadata validation
│ │ ├── parser.ts # Markdown parsing
│ │ ├── storage.ts # File system operations
│ │ └── indexer.ts # In-memory indexing
│ └── tools/
│ ├── list.ts # List index tool
│ ├── get.ts # Get standard tool
│ ├── search.ts # Search tool
│ ├── metadata.ts # Metadata tool
│ ├── create.ts # Create tool
│ └── update.ts # Update tool
├── data/ # Knowledge base directory
├── scripts/
│ └── migrate-standards.ts # Migration utility
├── package.json
├── tsconfig.json
└── README.md
Service Layers
- Validator Service: Validates standard metadata using Zod schemas
- Parser Service: Parses Markdown files with frontmatter
- Storage Service: Manages file system operations
- Indexer Service: Maintains in-memory search index
Tools
The server exposes 6 MCP tools following VS Code best practices:
1. list_standards
Browse all standards organized hierarchically by type, tier, and process.
Parameters: filterType, filterTier, filterProcess, filterStatus Output: JSON or Markdown
2. get_standard
Retrieve a specific standard by its file path or metadata.
Input: File path or metadata combination (type, tier, process) Output: Full standard content with metadata
3. search_standards
Full-text search across all standards with relevance scoring.
Input: Query string, optional filters (filterType, filterTier, etc.), limit Output: Ranked search results
4. get_standards_metadata
Query metadata only without fetching full content.
Parameters: filterType, filterTier, filterProcess, filterStatus, filterTags
5. create_standard
Create a new standard with automatic validation and file naming.
Input: Metadata and content Output: Created standard path
6. update_standard
Update existing standards with version bumping.
Input: Path, updated content, versionBump type Output: Updated standard details
File Naming Conventions
Standards must follow the naming pattern:
{type}-{tier}-{process}-{slug}-{status}.md
Components
- type:
principle|standard|practice|tech-stack|process - tier:
frontend|backend|database|infrastructure|security - process:
development|testing|delivery|operations - slug: Descriptive kebab-case identifier
- status:
active|draft|deprecated
Examples
standard-backend-development-spring-boot-security-active.md
principle-frontend-development-nextjs-principles-active.md
practice-security-testing-penetration-testing-active.md
Configuration
Environment Variables
Customize server behavior with environment variables:
# Change server port (default: 3000)
$env:PORT=3001; npm start
# Change standards directory (default: ./standards)
$env:STANDARDS_DIR="C:\path\to\standards"; npm start
TypeScript Configuration
The project uses strict TypeScript settings defined in tsconfig.json:
- ES2022 target
- ESM modules
- Strict type checking enabled
- Source maps for debugging
Contributing
We welcome contributions to improve the Engineering Standards MCP Server!
Getting Started
-
Fork the repository
-
Create a feature branch:
git checkout -b feature/your-feature-name -
Make your changes with proper type annotations
-
Test your changes:
npm start # Verify all tools work correctly -
Commit your changes:
git add . git commit -m "Add: your feature description" -
Push to your fork:
git push origin feature/your-feature-name -
Open a Pull Request with a clear description of changes
Development Guidelines
- Follow existing code style and TypeScript patterns
- Add Zod schemas for new validation requirements
- Update tool descriptions when modifying functionality
- Test with MCP Inspector before submitting
- Keep service layers decoupled and focused
Adding New Tools
- Create tool file in
src/tools/ - Define input schema in
src/schemas/metadata.ts - Register tool in
src/index.ts - Update constants in
src/constants.ts - Add documentation to this README
License
This project is licensed under the MIT License.
MIT License Summary
Permission is granted to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the software, subject to including the copyright notice and permission notice in all copies.
See the full license text: MIT License
Author
New York Life - Technology Division
Project Stats
- Lines of Code: ~3,000+
- Services: 4 core service layers
- Tools: 6 MCP-compliant tools
- Type Definitions: 12 TypeScript interfaces
- Validation Schemas: 7 Zod schemas
- Dependencies: 192 packages (0 vulnerabilities)
- Sample Standards: 2 complete examples included
Additional Resources
- Quick Start Guide - Detailed setup and usage instructions
- Model Context Protocol - Official MCP documentation
- MCP SDK - TypeScript SDK repository
Support
For issues, questions, or contributions, please contact the New York Life Technology Division team or open an issue in the repository 2. Follow QUICK_START.md for setup 3. Connect your preferred MCP client 4. Start adding your organization's standards
Migration
To migrate legacy standards to the new naming scheme (and normalize type values to singular form), use the migration script:
# Dry-run (preview changes)
npm run migrate
# Apply changes (rename files & update frontmatter)
npm run migrate:apply
Ready to use! 🚀
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。