mcpField
C
Custom Context MCP Server

Custom Context MCP Server

本地服务
github.com/omer-ayhanAI 与智能体181 周前更新

关于 Custom Context MCP Server

Custom Context MCP Server 根据 JSON 模板从文本提取信息并重组为结构化 JSON,适合处理 AI 生成内容的开发者。它将模板占位符转为提示词,并提供文本解析与 JSON 重建工具。

主要功能

  1. 01按模板生成信息提取提示词
  2. 02从文本提取键值对
  3. 03重建嵌套 JSON 结构

适用场景

  1. 01整理 AI 生成的文本内容
  2. 02将抽取结果传给下游应用

MCP 相关

这是 MCP 服务,向 MCP 客户端提供 `group-text-by-json` 和 `text-to-json` 工具,用于生成提示词并依据模板转换文本为 JSON。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

自定义上下文 MCP 服务

此 Model Context Protocol(MCP)服务提供用于根据 JSON 模板整理和提取文本数据的工具。

功能

文本转 JSON
  • 根据带有占位符的 JSON 模板对文本进行分组和整理
  • 从 AI 生成的文本中提取信息,并转换为结构化 JSON 格式
  • 支持包含嵌套占位符的任意 JSON 结构
  • 智能提取文本中的键值对
  • 将 AI 输出处理为适用于下游应用的结构化数据

入门

安装
npm install
运行服务
npm start

启用热重载进行开发:

npm run dev:watch

用法

此 MCP 服务提供两种主要工具:

1. 按 JSON 分组文本(group-text-by-json)

此工具使用带有占位符的 JSON 模板,为 AI 生成提示词,以便 AI 按照模板的结构对文本进行分组。

{
	"template": "{ \"type\": \"<type>\", \"text\": \"<text>\" }"
}

该工具会分析模板、提取占位符键,并返回提示词,引导 AI 以键值格式提取信息。

2. 文本转 JSON(text-to-json)

此工具使用上一步生成的分组文本输出,根据原始模板将其转换为结构化 JSON 对象。

{
	"template": "{ \"type\": \"<type>\", \"text\": \"<text>\" }",
	"text": "type: pen\ntext: This is a blue pen"
}

它会从文本中提取键值对,并按照模板进行整理。

示例工作流

  1. 定义带有占位符的 JSON 模板:

    {
    	"item": {
    		"name": "<name>",
    		"price": "<price>",
    		"description": "<description>"
    	}
    }
    
  2. 使用 group-text-by-json 创建 AI 提示词:

    • 该工具会识别占位符键:name、price、description
    • 生成提示词,指示 AI 按这些键对信息进行分组
  3. 将提示词发送给 AI 模型并接收分组文本:

    name: Blue Pen
    price: $2.99
    description: A smooth-writing ballpoint pen with blue ink
    
  4. 使用 text-to-json 将分组文本转换为 JSON:

    • 结果:
    {
    	"item": {
    		"name": "Blue Pen",
    		"price": "$2.99",
    		"description": "A smooth-writing ballpoint pen with blue ink"
    	}
    }
    

模板格式

模板可以在有效 JSON 结构中的任意位置包含占位符:

  • 使用尖括号定义占位符:<name>、<type>、<price> 等
  • 模板必须是有效的 JSON 字符串
  • 占位符可以位于任意嵌套层级
  • 支持复杂的嵌套结构

包含嵌套占位符的模板示例:

{
	"product": {
		"details": {
			"name": "<name>",
			"category": "<category>"
		},
		"pricing": {
			"amount": "<price>",
			"currency": "USD"
		}
	},
	"metadata": {
		"timestamp": "2023-09-01T12:00:00Z"
	}
}

实现细节

此服务的工作方式如下:

  1. 分析 JSON 模板以提取占位符键
  2. 生成提示词,引导 AI 模型根据这些键提取信息
  3. 解析 AI 生成的文本以提取键值对
  4. 根据原始模板结构重新构建 JSON 对象

开发

先决条件
  • Node.js v18 或更高版本
  • npm 或 yarn
构建和运行
# Install dependencies
npm install

# Build the project
npm run build

# Run the server
npm start

# Development with hot reloading
npm run dev:watch
自定义热重载

本项目包含一个自定义热重载配置,组合使用:

  • nodemon:监视 src 目录中的文件更改并重新构建 TypeScript 文件
  • browser-sync:在构建文件发生更改时自动刷新浏览器
  • 并发执行:同时运行两个服务并同步输出

相关配置位于:

  • nodemon.json:控制 TypeScript 文件的监视和重新构建
  • package.json:使用 concurrently 同时运行 nodemon 和 browser-sync

要使用自定义热重载功能:

npm run dev:watch

这样便会创建一个开发环境,在其中:

  1. TypeScript 文件更改时会自动重新构建
  2. MCP 服务会使用更新后的代码重新启动
  3. 已连接的浏览器会刷新并显示最新更改
使用 MCP Inspector

你可以使用 MCP Inspector 进行调试:

npm run dev

这会通过 MCP Inspector 运行服务,以便直观地调试请求和响应。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。