MCP-Smallest.ai

MCP-Smallest.ai
Eine Model Context Protocol (MCP)-Serverimplementierung für die Smallest.ai API-Integration. Dieses Projekt bietet eine standardisierte Schnittstelle für die Interaktion mit dem Wissensdatenbank-Managementsystem von Smallest.ai.
Architektur
Systemübersicht
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ │ │ │ │ │
│ Client App │◄────┤ MCP Server │◄────┤ Smallest.ai │
│ │ │ │ │ API │
└─────────────────┘ └─────────────────┘ └─────────────────┘Komponentendetails
1. Client-Anwendungsschicht
Implementiert das MCP-Clientprotokoll
Verarbeitet die Anforderungsformatierung
Verwaltet die Antwortanalyse
Bietet Fehlerbehandlung
2. MCP-Serverschicht
Protokollhandler
Verwaltet die MCP-Protokollkommunikation
Verwaltet Clientverbindungen
Leitet Anfragen an die entsprechenden Tools weiter
Tool-Implementierung
Tools zur Wissensdatenbankverwaltung
Parametervalidierung
Antwortformatierung
Fehlerbehandlung
API-Integration
Smallest.ai API-Kommunikation
Authentifizierungsverwaltung
Anfrage-/Antwortverarbeitung
3. Smallest.ai API-Schicht
Wissensdatenbankverwaltung
Datenspeicherung und -abruf
Authentifizierung und Autorisierung
Datenfluss
1. Client Request
└─► MCP Protocol Validation
└─► Tool Parameter Validation
└─► API Request Formation
└─► Smallest.ai API Call
└─► Response Processing
└─► Client ResponseSicherheitsarchitektur
┌─────────────────┐
│ Client Auth │
└────────┬────────┘
│
┌────────▼────────┐
│ MCP Validation │
└────────┬────────┘
│
┌────────▼────────┐
│ API Auth │
└────────┬────────┘
│
┌────────▼────────┐
│ Smallest.ai │
└─────────────────┘Related MCP server: Rememberizer MCP Server
Überblick
Dieses Projekt implementiert einen MCP-Server, der als Middleware zwischen Clients und der Smallest.ai-API fungiert. Es bietet eine standardisierte Möglichkeit zur Interaktion mit den Wissensdatenbank-Verwaltungsfunktionen von Smallest.ai über das Model Context Protocol.
Architektur
[Client Application] <---> [MCP Server] <---> [Smallest.ai API]Komponenten
MCP-Server
Bearbeitet Clientanfragen
Verwaltet die API-Kommunikation
Bietet standardisierte Antworten
Implementiert die Fehlerbehandlung
Wissensdatenbank-Tools
listKnowledgeBases: Listet alle Wissensdatenbanken aufcreateKnowledgeBase: Erstellt neue WissensdatenbankengetKnowledgeBase: Ruft spezifische Wissensdatenbankdetails ab
Dokumentationsressource
Verfügbar unter
docs://smallest.aiBietet Nutzungsanweisungen und Beispiele
Voraussetzungen
Node.js 18+ oder Bun-Laufzeit
Smallest.ai API-Schlüssel
TypeScript-Kenntnisse
Installation
Klonen Sie das Repository:
git clone https://github.com/yourusername/MCP-smallest.ai.git
cd MCP-smallest.aiInstallieren Sie Abhängigkeiten:
bun installErstellen Sie eine
.envDatei im Stammverzeichnis:
SMALLEST_AI_API_KEY=your_api_key_hereKonfiguration
Erstellen Sie eine config.ts Datei mit Ihrer Smallest.ai-API-Konfiguration:
export const config = {
API_KEY: process.env.SMALLEST_AI_API_KEY,
BASE_URL: 'https://atoms-api.smallest.ai/api/v1'
};Verwendung
Starten des Servers
bun run index.tsTesten des Servers
bun run test-client.tsVerfügbare Tools
Wissensdatenbanken auflisten
await client.callTool({
name: "listKnowledgeBases",
arguments: {}
});Wissensdatenbank erstellen
await client.callTool({
name: "createKnowledgeBase",
arguments: {
name: "My Knowledge Base",
description: "Description of the knowledge base"
}
});Wissensdatenbank abrufen
await client.callTool({
name: "getKnowledgeBase",
arguments: {
id: "knowledge_base_id"
}
});Antwortformat
Alle Antworten folgen dieser Struktur:
{
content: [{
type: "text",
text: JSON.stringify(data, null, 2)
}]
}Fehlerbehandlung
Der Server implementiert eine umfassende Fehlerbehandlung:
HTTP-Fehler
API-Fehler
Parametervalidierungsfehler
Typsichere Fehlerantworten
Entwicklung
Projektstruktur
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 fileNeue Tools hinzufügen
Definieren Sie das Tool in
index.ts:
server.tool(
"toolName",
{
param1: z.string(),
param2: z.number()
},
async (args) => {
// Implementation
}
);Aktualisieren Sie die Dokumentation in der Ressource:
server.resource(
"documentation",
"docs://smallest.ai",
async (uri) => ({
contents: [{
uri: uri.href,
text: `Updated documentation...`
}]
})
);Sicherheit
API-Schlüssel werden in Umgebungsvariablen gespeichert
Alle Anfragen werden authentifiziert
Parametervalidierung ist implementiert
Fehlermeldungen werden bereinigt
Beitragen
Forken Sie das Repository
Erstellen Sie Ihren Feature-Zweig (
git checkout -b feature/amazing-feature)Übernehmen Sie Ihre Änderungen (
git commit -m 'Add some amazing feature')Pushen zum Zweig (
git push origin feature/amazing-feature)Öffnen einer Pull-Anfrage
Lizenz
Dieses Projekt ist unter der MIT-Lizenz lizenziert – Einzelheiten finden Sie in der Datei LICENSE .
Danksagung
Available Tools
3 toolscreateKnowledgeBaseD
| Name | Required | Description | Default |
|---|---|---|---|
| description | Yes | ||
| name | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Tool has no description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Tool has no description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has no description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Tool has no description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Tool has no description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Tool has no description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getKnowledgeBaseD
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Tool has no description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Tool has no description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has no description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Tool has no description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Tool has no description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Tool has no description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
listKnowledgeBasesD
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Tool has no description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Tool has no description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has no description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Tool has no description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Tool has no description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Tool has no description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
3 tool updates
v1.0.0- First observed
createKnowledgeBase - First observed
getKnowledgeBase - First observed
listKnowledgeBases
TDQS
Scored across 3 tools
Each tool has a clearly distinct purpose: create, get, and list operations on knowledge bases. There is no overlap in functionality, and the action verbs (create, get, list) are unambiguous and standard for CRUD operations.
All tool names follow a consistent camelCase pattern with a verb-noun structure (createKnowledgeBase, getKnowledgeBase, listKnowledgeBases). The naming is predictable and uniform across all three tools.
With only 3 tools, the set feels thin for a knowledge base management server, as it lacks update and delete operations. However, it covers basic create, retrieve, and list functions, which is minimal but functional for a small scope.
The tools provide create, get, and list operations, but there are notable gaps such as update and delete for knowledge bases. This limits full lifecycle management, though core retrieval and creation are covered.
Maintenance
Related MCP Connectors
A Model Context Protocol server for Wix AI tools
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Model Context Protocol server for the Apideck Unified API. Connect any MCP-compatible agent framework to 100+ accounting systems, HRIS platforms, file storage providers, and more through one integration. More information https://www.apideck.com/mcp-server
DocBase MCP server for AI agents
Related MCP Servers
- AlicenseBqualityDmaintenanceA Model Context Protocol server that enables AI models to interact with SourceSync.ai's knowledge management platform for managing documents, ingesting content from various sources, and performing semantic searches.2559 npm1ISC
- AlicenseNot gradedqualityBmaintenanceA Model Context Protocol server enabling LLMs to search, retrieve, and manage documents through Rememberizer's knowledge management API.36Apache 2.0
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server implementation that provides a standardized interface for applications to interact with OpenRouter's language models through a unified conversation management system.5 npm2MIT
- AlicenseAqualityDmaintenanceA comprehensive Model Context Protocol server that integrates Elasticsearch search with file operations, document validation, and version control to transform AI assistants into powerful knowledge management systems.2793 PyPI27MIT