Skip to main content
Glama
VinayakTiwari1103

MCP-Smallest.ai

图像

MCP-Smallest.ai

用于 Smallest.ai API 集成的模型上下文协议 (MCP) 服务器实现。该项目提供了与 Smallest.ai 知识库管理系统交互的标准化接口。

建筑学

系统概述

无标题-2025-03-21-0340(6)

┌─────────────────┐     ┌─────────────────┐     ┌─────────────────┐
│                 │     │                 │     │                 │
│  Client App     │◄────┤   MCP Server    │◄────┤  Smallest.ai    │
│                 │     │                 │     │    API          │
└─────────────────┘     └─────────────────┘     └─────────────────┘

组件详细信息

1.客户端应用层

  • 实现 MCP 客户端协议

  • 处理请求格式

  • 管理响应解析

  • 提供错误处理

2. MCP 服务器层

  • 协议处理程序

    • 管理 MCP 协议通信

    • 处理客户端连接

    • 将请求路由到适当的工具

  • 工具实现

    • 知识库管理工具

    • 参数验证

    • 响应格式

    • 错误处理

  • API 集成

    • Smallest.ai API 通信

    • 身份验证管理

    • 请求/响应处理

3. Smallest.ai API层

  • 知识库管理

  • 数据存储和检索

  • 身份验证和授权

数据流

1. Client Request
   └─► MCP Protocol Validation
       └─► Tool Parameter Validation
           └─► API Request Formation
               └─► Smallest.ai API Call
                   └─► Response Processing
                       └─► Client Response

安全架构

┌─────────────────┐
│  Client Auth    │
└────────┬────────┘
         │
┌────────▼────────┐
│  MCP Validation │
└────────┬────────┘
         │
┌────────▼────────┐
│  API Auth       │
└────────┬────────┘
         │
┌────────▼────────┐
│  Smallest.ai    │
└─────────────────┘

Related MCP server: MCP Boilerplate

概述

该项目实现了一个 MCP 服务器,作为客户端和 Smallest.ai API 之间的中间件。它提供了一种通过模型上下文协议 (MCP) 与 Smallest.ai 知识库管理功能进行交互的标准化方式。

建筑学

[Client Application] <---> [MCP Server] <---> [Smallest.ai API]

成分

  1. MCP 服务器

    • 处理客户端请求

    • 管理 API 通信

    • 提供标准化的响应

    • 实现错误处理

  2. 知识库工具

    • listKnowledgeBases :列出所有知识库

    • createKnowledgeBase :创建新的知识库

    • getKnowledgeBase :检索特定知识库详细信息

  3. 文档资源

    • 可在docs://smallest.ai获取

    • 提供使用说明和示例

先决条件

  • Node.js 18+ 或 Bun 运行时

  • Smallest.ai API 密钥

  • TypeScript 知识

安装

  1. 克隆存储库:

git clone https://github.com/yourusername/MCP-smallest.ai.git
cd MCP-smallest.ai
  1. 安装依赖项:

bun install
  1. 在根目录中创建一个.env文件:

SMALLEST_AI_API_KEY=your_api_key_here

配置

使用 Smallest.ai API 配置创建一个config.ts文件:

export const config = {
    API_KEY: process.env.SMALLEST_AI_API_KEY,
    BASE_URL: 'https://atoms-api.smallest.ai/api/v1'
};

用法

启动服务器

bun run index.ts

测试服务器

bun run test-client.ts

可用工具

  1. 列出知识库

await client.callTool({
  name: "listKnowledgeBases",
  arguments: {}
});
  1. 创建知识库

await client.callTool({
  name: "createKnowledgeBase",
  arguments: {
    name: "My Knowledge Base",
    description: "Description of the knowledge base"
  }
});
  1. 获取知识库

await client.callTool({
  name: "getKnowledgeBase",
  arguments: {
    id: "knowledge_base_id"
  }
});

响应格式

所有回复都遵循以下结构:

{
  content: [{
    type: "text",
    text: JSON.stringify(data, null, 2)
  }]
}

错误处理

服务器实现了全面的错误处理:

  • HTTP 错误

  • API 错误

  • 参数验证错误

  • 类型安全的错误响应

发展

项目结构

MCP-smallest.ai/
├── index.ts           # MCP server implementation
├── test-client.ts     # Test client implementation
├── config.ts          # Configuration file
├── package.json       # Project dependencies
├── tsconfig.json      # TypeScript configuration
└── README.md          # This file

添加新工具

  1. index.ts中定义该工具:

server.tool(
  "toolName",
  {
    param1: z.string(),
    param2: z.number()
  },
  async (args) => {
    // Implementation
  }
);
  1. 更新资源中的文档:

server.resource(
  "documentation",
  "docs://smallest.ai",
  async (uri) => ({
    contents: [{
      uri: uri.href,
      text: `Updated documentation...`
    }]
  })
);

安全

  • API 密钥存储在环境变量中

  • 所有请求都经过身份验证

  • 参数验证已实现

  • 错误消息已净化

贡献

  1. 分叉存储库

  2. 创建你的功能分支( git checkout -b feature/amazing-feature

  3. 提交您的更改( git commit -m 'Add some amazing feature'

  4. 推送到分支( git push origin feature/amazing-feature

  5. 打开拉取请求

执照

该项目根据 MIT 许可证获得许可 - 有关详细信息,请参阅LICENSE文件。

致谢

Install Server
A
security – no known vulnerabilities
F
license - not found
A
quality - confirmed to work

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/VinayakTiwari1103/MCP-smallest-ai'

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