typescript-sdk:构建LLM应用的新框架

typescript-sdk:构建LLM应用的新框架

typescript-sdk The official Typescript SDK for Model Context Protocol servers and clients typescript-sdk 项目地址: https://gitcode.com/gh_mirrors/ty/typescript-sdk

在当今人工智能技术飞速发展的时代,语言模型的应用变得越来越广泛。为了更好地管理和提供模型运行所需的上下文信息,Model Context Protocol(MCP)应运而生。typescript-sdk 是一款遵循 MCP 规范的开源 TypeScript SDK,它让开发者能够轻松地构建符合标准的数据和功能暴露服务。

项目介绍

typescript-sdk 是一个实现完整 MCP 规范的 TypeScript SDK,旨在帮助开发者构建可以连接到任意 MCP 服务器的客户端,同时也能创建暴露资源、提示和工具的服务器。它支持标准的传输方式,如 stdio 和 SSE,并能够处理所有 MCP 协议消息和生命周期事件。

项目技术分析

typescript-sdk 的核心是 McpServer 类,它负责连接管理、协议遵守和消息路由。通过这个类,开发者可以定义资源(Resources)、工具(Tools)和提示(Prompts),这些是 MCP 协议中的核心概念。

  • 资源(Resources):类似于 REST API 中的 GET 端点,资源用于向 LLM 提供数据,但不应该进行复杂的计算或产生副作用。
  • 工具(Tools):工具则像是 POST 端点,允许 LLM 通过服务器执行代码或产生其他副作用。
  • 提示(Prompts):提示是可重用的模板,帮助 LLM 更有效地与服务器交互。

项目技术应用场景

typescript-sdk 的应用场景非常广泛,它可以用于构建各种类型的人工智能服务,包括但不限于:

  • 数据库查询接口,为 LLM 提供快速的数据检索能力。
  • 功能性工具,例如计算器、天气查询等,允许 LLM 执行特定操作。
  • 复杂交互流程,如代码审查、数据分析等,通过提示引导 LLM 完成任务。

项目特点

typescript-sdk 具有以下显著特点:

  1. 标准化:遵循 MCP 规范,确保与不同 LLM 应用和服务的兼容性。
  2. 灵活性:支持多种传输方式,包括 stdio 和 HTTP with SSE,适用于不同部署环境。
  3. 易用性:丰富的文档和示例代码,帮助开发者快速上手。
  4. 扩展性:通过工具和提示的概念,可以轻松扩展服务器的功能。

以下是typescript-sdk 的核心功能简要介绍:

核心功能

  • 构建 MCP 客户端和服务端。
  • 暴露资源和工具,为 LLM 提供数据和功能。
  • 使用 stdio 和 SSE 等标准传输方式。
  • 处理 MCP 协议消息和生命周期事件。

现在,让我们通过几个示例来详细了解如何使用 typescript-sdk。

示例:创建简单的 MCP 服务器

以下是一个创建包含计算器工具和问候语资源的简单 MCP 服务器的示例:

import { McpServer, ResourceTemplate } from "@modelcontextprotocol/sdk/server/mcp.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
import { z } from "zod";

const server = new McpServer({
  name: "Demo",
  version: "1.0.0"
});

// 添加加法工具
server.tool("add", { a: z.number(), b: z.number() }, async ({ a, b }) => ({
  content: [{ type: "text", text: String(a + b) }]
}));

// 添加动态问候语资源
server.resource(
  "greeting",
  new ResourceTemplate("greeting://{name}", { list: undefined }),
  async (uri, { name }) => ({
    contents: [{ uri: uri.href, text: `Hello, ${name}!` }]
  })
);

// 使用 stdio 传输方式启动服务器
const transport = new StdioServerTransport();
await server.connect(transport);

通过以上代码,我们定义了一个简单的 MCP 服务器,它可以通过 stdio 接收和发送消息。开发者可以根据需要添加更多资源和工具,以扩展服务器的功能。

总结来说,typescript-sdk 是一个强大且灵活的工具,它简化了 MCP 服务器的构建过程,为语言模型应用的开发提供了有力的支持。无论你是在开发一个简单的个人项目,还是一个复杂的企业级应用,typescript-sdk 都能帮助你快速实现需求,提高开发效率。

typescript-sdk The official Typescript SDK for Model Context Protocol servers and clients typescript-sdk 项目地址: https://gitcode.com/gh_mirrors/ty/typescript-sdk

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

薛曦旖Francesca

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值