Skip to main content
Glama

MCP 서버 - MCP 서버 구축을 위한 계층형 노드 패키지

이 라이브러리는 Node In Layers를 사용하여 MCP 서버를 쉽게 생성할 수 있는 기능을 추가합니다.

MCP 클라이언트를 생성하는 데 사용되는 '@node-in-layers/mcp-client'라는 보조 라이브러리가 있습니다. 이 두 라이브러리는 모델과 도구를 정의하는 데 동일한 함수를 공유합니다.

새 레이어

이 라이브러리는 시스템에 새로운 레이어인 mcp 추가합니다. 이 레이어는 express 레이어 뒤에 배치해야 합니다.

Related MCP server: Node Omnibus MCP Server

용법

이 라이브러리를 사용하려면 구성에 추가해야 하며 앱/도메인에서 "mcp" 레이어를 만들어 내보내야 합니다.

구성

이 앱/도메인을 설정 파일에 추가하세요. 앱을 추가하기 전에 이 작업을 수행해야 MCP 서버에 도구가 추가됩니다.

그런 다음 다음을 사용하여 mcp 앱/도메인을 구성합니다.

지엑스피1

MCP 레이어 생성

앱/도메인에서 레이어를 반환하는 함수를 내보내어 MCP 레이어를 만들 수 있습니다.

// /src/yourDomain/mcp.ts import { McpContext, McpNamespace } from '@node-in-layers/mcp-server' import { Config } from '@node-in-layers/core' import { YourFeaturesLayer } from './features.js' const create = (context: McpContext<Config, YourFeaturesLayer>) => { // Adds your tool. context.mcp[McpNamespace].addTool({ name: 'my-hello-world-tool', description: 'My Tool', execute: async (input: any) => { return 'Hello, world!' }, }) // Create a tool from your feature context.mcp[McpNamespace].addTool({ name: 'my-hello-world-tool', description: 'My Tool', inputSchema: { type: 'object', properties: { name: { type: 'string', }, }, required: ['name'], }, execute: (input: any) => { // You get an object, pass it back to your feature. Handles async for you. return context.features.yourDomain.yourFeature(input) }, }) return {} } export { create }

모델 추가

모델을 CRUDS 함수로 래핑하고 mcp 레이어를 통해 MCP 서버에 추가할 수 있습니다. 참고: 이 기능을 사용하려면 레이어에 모델 외에도 서비스 레이어와 기능 레이어가 모두 있어야 합니다. 레이어의 노드는 모델과 함께 자동으로 CRUDS 속성을 생성하며, 이를 추가할 수 있습니다.

한 번에 하나씩 하는 예는 다음과 같습니다. (일반적으로 권장하지는 않지만, 실행 가능합니다).

// /src/yourDomain/mcp.ts import { McpContext, McpNamespace } from '@node-in-layers/mcp-server' import { Config } from '@node-in-layers/core' import { YourFeaturesLayer } from './features.js' const create = (context: McpContext<Config, YourFeaturesLayer>) => { // Adds your models cruds through features. context.mcp[McpNamespace].addModelCruds( context.features.yourFeature.cruds.Cars ) return {} }

가스로 제대로 요리하는 방법을 소개합니다. (강력 추천)

// /src/yourDomain/mcp.ts import { McpContext, McpNamespace, mcpModels } from '@node-in-layers/mcp-server' import { Config } from '@node-in-layers/core' import { YourFeaturesLayer } from './features.js' const create = (context: McpContext<Config, YourFeaturesLayer>) => { // This automatically adds ALL of your models from features. mcpModels('yourDomain')(context) return {} }

모델 추가를 구성하는 또 다른 방법은 중앙 집중식 MCP 도메인을 사용하는 것입니다. 다른 모든 도메인이 로드된 후 이 도메인을 마지막 도메인으로 지정하세요.

// /src/mcp/mcp.ts import { McpContext, McpNamespace, mcpModels } from '@node-in-layers/mcp-server' import { Config } from '@node-in-layers/core' const create = (context: McpContext<Config>) => { // Add all your models for your whole system in one go. mcpModels('yourDomain')(context) mcpModels('yourDomain2')(context) mcpModels('yourDomain3')(context) mcpModels('yourDomain4')(context) return {} }
-
security - not tested
F
license - not found
-
quality - not tested

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/Node-In-Layers/mcp-server'

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