Aivin MCP服务器
OpenAI Agent Builder的MCP(模型上下文协议)服务器,提供智能文档查询和分析。它专门用于读取DOCX文档,提取层次结构部分,根据查询对相关性进行评分,并通过自动语言检测返回结构化结果,用于AI引导的响应。包括基本的计算工具,并支持多种传输协议以实现灵活集成。
特性
- DOCX阅读器工具:从DOCX文档中智能搜索和提取相关部分,包括分层内容包含、相关性评分优先标题、整数部分的父子扩展以及自动语言检测以指导AI响应。
- 添加工具:执行基本算术加法。
- 多个传输:支持基于请求的连接的StreamableHTTP。
- 语言检测:自动从用户输入中检测越南语或英语,并预先添加响应指令。
- TypeScript:完全打字,具有全面的错误处理和记录功能。
文档上传可行性
DOCX Reader工具支持处理大型文档,包括那些超过2000行的文档。
- 可行性:是的,长达2k行(大约10-20页)的文档通常不会出现问题。该工具将DOCX转换为HTML,提取部分,对相关性进行评分,并高效地构建响应。
- 演出:在现代硬件上,处理时间为秒;内存使用保持在Node.js的限制范围内。
- 局限性:
- 非常大的文档(例如,10k+行)可能会减缓评分或增加响应大小。 - 对于冗长的内容,响应字符串可能会变大——如果需要,可以考虑分块。 - 没有硬文件大小限制,但可以用您的文档进行测试。
- 建议:
- 将文件放入 src/documents/ 访问。 - 对于大量文档,通过将查询集中在特定部分进行优化。 - 监控日志以获取性能见解。
用AI学习新的编码语言
本节讨论了AI系统(LLM或专用代理)如何基于像MCP服务器这样的系统的能力学习新的编程语言。
法学硕士与代理学习方法
人工智能系统可以通过不同的机制学习新的编码语言。以下是LLM和代理在获取和应用新语言知识的能力方面的比较:
使用LLM(例如Grok或类似模型)
- 可行性:优秀;LLMs非常适合在飞行中学习新语言。
- 优势:
- 对话式学习:可以通过用户提供的示例或解释“学习”语法、模式和最佳实践。 - 即时生成:在学习基础知识后立即用新语言生成代码。 - 广泛的适应性:处理来自训练数据或推断模式的任何语言。
- 最适合:快速原型制作、代码生成和不熟悉语言的调试。
- 局限性学习是基于会话的;可能需要对复杂语言进行强化。
- 如何学习:通过对话中的模式识别——提供代码片段、规则或示例,LLM就会进行调整。
使用专用代理(例如,此MCP服务器)
- 可行性:有限;代理以任务为中心,需要明确的修改来“学习”新语言。
- 优势:
- 可靠的执行:一旦集成,代理可以一致地处理或生成新语言的代码。 - 可扩展性:通过代码更改、插件或API集成添加语言支持。 - 专业重点:擅长将所学语言应用于特定工作流程(如文档处理)。
- 最适合:特定语言功能或工具的生产部署。
- 局限性:不能自发学习;需要开发人员干预来更新代码或配置。
- 如何学习:通过代码修改——例如,为新语言添加解析器、编译器或库。
推荐LLM在人工智能本身通过交互快速学习新语言方面具有优势,而代理则受益于LLM辅助开发以整合这些语言。例如,使用LLM以一种新语言进行原型制作,然后将其集成到像这样的服务器中。
安装
- 克隆存储库:
git clone https://github.com/huyluu-levinci/aivin-mcp.git
cd aivin-mcp- 安装依赖项:
npm install- 构建项目:
npm run build配置
创建一个 .env 根目录中的文件,包含以下变量:
MCP_SERVER_NAME=aivin-mcp-server
MCP_SERVER_VERSION=0.1.0
PORT=3000用法
发展
使用热重载启动开发服务器:
npm run dev生产
构建并启动服务器:
npm run build
npm start服务器将监听 http://localhost:3000 默认情况下。
API终点
POST /mcp-流式HTTP MCP端点
工具
DOCX阅读器工具
在中搜索DOCX文件 src/documents 基于翻译查询的相关部分目录。自动检测原始用户输入的语言,并相应地引导AI响应。
输入架构:
{
"user_input": "string",
"query": "string"
}输出: 具有标题、层次结构内容、关系和语言指导的相关文档部分。
添加工具
执行两个数字的加法。
输入架构:
{
"a": "number",
"b": "number"
}输出:
{
"result": "number"
}使服务器可外部访问
为了使OpenAI Agent Builder能够连接,请在外部公开服务器:
使用ngrok
ngrok http 3000使用云部署
部署到云VM并配置防火墙以允许端口3000。
项目结构
src/
├── server.ts # Main server implementation
├── config/ # Configuration management
├── tools/ # MCP tools (add, docx-reader)
├── transports/ # Transport implementations (StreamableHTTP)
└── documents/ # Document storage directory依赖项
@modelcontextprotocol/sdk-MCP协议实现express-Web框架mammoth-DOCX文件处理cheerio-HTML解析zod-输入验证
开发说明
- 服务器绑定到
0.0.0.0接受外部连接 - DOCX文件应放置在
src/documents/目录 - 用于调试查询处理、评分和语言检测的广泛日志记录
许可证
\[在此处添加许可证信息\]
