MCP-Smallest.ai について
Smallest.ai のナレッジベースを標準化された方法で管理するための MCP サーバーです。一覧、作成、詳細取得のツールとドキュメントリソースを提供します。
主な機能
- 01ナレッジベースの一覧表示
- 02ナレッジベースの作成
- 03ナレッジベース詳細の取得
- 04ドキュメントリソースの提供
活用シーン
- 01Smallest.ai のナレッジベースを確認
- 02ナレッジベースを新規作成
- 03ID でナレッジベースの詳細を検索
MCP 対応
MCP ツールを通じて Smallest.ai のナレッジベース管理機能を公開し、`docs://smallest.ai` にドキュメントリソースを提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細

MCP-Smallest.ai
Smallest.ai API と連携するための Model Context Protocol(MCP)サーバー実装です。このプロジェクトでは、Smallest.ai のナレッジベース管理システムとやり取りするための標準インターフェースを提供します。
アーキテクチャ
システム概要
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ │ │ │ │ │
│ 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 │
└─────────────────┘
概要
このプロジェクトは、クライアントと Smallest.ai API の間のミドルウェアとして機能する MCP サーバーを実装します。Model Context Protocol を通じて、Smallest.ai のナレッジベース管理機能を利用するための標準的な方法を提供します。
アーキテクチャ
[Client Application] <---> [MCP Server] <---> [Smallest.ai API]
コンポーネント
-
MCP サーバー
- クライアントリクエストを処理します
- API 通信を管理します
- 標準化されたレスポンスを提供します
- エラー処理を実装します
-
ナレッジベースツール
listKnowledgeBases:すべてのナレッジベースを一覧表示しますcreateKnowledgeBase:新しいナレッジベースを作成しますgetKnowledgeBase:特定のナレッジベースの詳細を取得します
-
ドキュメントリソース
docs://smallest.aiで利用できます- 使用方法と例を提供します
前提条件
- Node.js 18+ または Bun ランタイム
- Smallest.ai API キー
- TypeScript の知識
インストール
- リポジトリをクローンします:
git clone https://github.com/yourusername/MCP-smallest.ai.git
cd MCP-smallest.ai
- 依存関係をインストールします:
bun install
- ルートディレクトリに
.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
利用可能なツール
- ナレッジベースの一覧表示
await client.callTool({
name: "listKnowledgeBases",
arguments: {}
});
- ナレッジベースの作成
await client.callTool({
name: "createKnowledgeBase",
arguments: {
name: "My Knowledge Base",
description: "Description of the knowledge base"
}
});
- ナレッジベースの取得
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
新しいツールの追加
index.tsでツールを定義します:
server.tool(
"toolName",
{
param1: z.string(),
param2: z.number()
},
async (args) => {
// Implementation
}
);
- リソース内のドキュメントを更新します:
server.resource(
"documentation",
"docs://smallest.ai",
async (uri) => ({
contents: [{
uri: uri.href,
text: `Updated documentation...`
}]
})
);
セキュリティ
- API キーは環境変数に保存されます
- すべてのリクエストは認証されます
- パラメーター検証を実装しています
- エラーメッセージはサニタイズされます
貢献
- リポジトリをフォークします
- 機能ブランチを作成します(
git checkout -b feature/amazing-feature) - 変更をコミットします(
git commit -m 'Add some amazing feature') - ブランチにプッシュします(
git push origin feature/amazing-feature) - プルリクエストを作成します
ライセンス
このプロジェクトは MIT License の下でライセンスされています。詳細については、LICENSE ファイルを参照してください。
謝辞
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。
