Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
MCP-Verwaltung für Q Developer
Pro-Tier-Kunden, die IAM Identity Center als Anmeldemethode verwenden, können den MCP-Zugriff für Benutzer innerhalb ihres Unternehmens kontrollieren. Standardmäßig können Ihre Benutzer jeden MCP-Server in ihrem Q-Client verwenden. Als Administrator haben Sie die Möglichkeit, entweder die Verwendung von MCP-Servern durch Ihre Benutzer vollständig zu deaktivieren oder eine überprüfte Liste von MCP-Servern anzugeben, die Ihre Benutzer verwenden dürfen.
Sie kontrollieren diese Einschränkungen mithilfe eines MCP-Schalters und einer on/off MCP-Registrierung. Die MCP-Umschalter- und Registrierungsattribute sind Teil des Q Developer-Profils, das auf Organisations- oder Kontoebene definiert werden kann, wobei das Profil auf Kontoebene das Profil auf Organisationsebene ersetzt. Sie können eine Standard-MCP-Richtlinie für Ihre Organisation angeben und diese für bestimmte Konten außer Kraft setzen. Sie können beispielsweise MCP für die Organisation deaktivieren, sie aber mit einer Zulassungsliste für bestimmte Teams (Konten) aktivieren.
Anmerkung
Sowohl das Umschalten als auch die Registrierungseinstellungen werden auf der Clientseite durchgesetzt. Seien Sie sich bewusst, dass Ihre Endbenutzer sie umgehen könnten.
Deaktivieren von MCP für Ihre Organisation
So deaktivieren Sie MCP für Ihr Konto oder Ihre Organisation:
-
Öffnen Sie die Kiro-Konsole.
-
Wählen Sie Einstellungen aus.
Wählen Sie die Registerkarte Q Developer.
-
Schalten Sie Model Context Protocol (MCP) auf Aus.
Geben Sie eine MCP-Zulassungsliste für Ihre Organisation an
Um zu kontrollieren, auf welche MCP-Server Ihre Benutzer zugreifen können, erstellen Sie eine JSON-Datei mit den zulässigen Servern, stellen Sie sie über HTTPS bereit und fügen Sie die URL zu Ihrem Q Developer-Profil hinzu. Q Developer-Clients, die dieses Profil verwenden, ermöglichen Benutzern nur den Zugriff auf die MCP-Server in Ihrer Zulassungsliste.
Angabe der MCP-Registrierungs-URL
Öffnen Sie die Kiro-Konsole.
Wählen Sie Einstellungen aus.
Wählen Sie die Registerkarte Q Developer.
Stellen Sie sicher, dass Model Context Protocol (MCP) aktiviert ist.
Wählen Sie im Feld MCP-Registrierungs-URL die Option Bearbeiten aus.
Geben Sie die URL einer MCP-Registrierungs-JSON-Datei ein, die die MCP-Server auf der Zulassungsliste enthält.
Wählen Sie Speichern.
MCP-Registrierungsdateiformat
Das Format der Registrierungs-JSON-Datei ist eine Teilmenge des Serverschemas JSON im MCP-Registrierungsstandard
Das folgende Beispiel zeigt eine MCP-Registrierungsdatei, die sowohl eine Remote-MCP-Serverdefinition (HTTP) als auch eine lokale (stdio) MCP-Serverdefinition enthält.
{ "servers": [ { "server": { "name": "my-remote-server", "title": "My server", "description": "My server description", "version": "1.0.0", "remotes": [ { "type": "streamable-http", "url": "https://acme.com/my-server", "headers": [ { "name": "X-My-Header", "value": "SomeValue" } ] } ] } }, { "server": { "name": "my-local-server", "title": "My server", "description": "My server description", "version": "1.0.0", "packages": [ { "registryType": "npm", "registryBaseUrl": "https://npm.acme.com", "identifier": "@acme/my-server", "transport": { "type": "stdio" }, "runtimeArguments": [ { "type": "positional", "value": "-q" } ], "packageArguments": [ { "type": "positional", "value": "start" } ], "environmentVariables": [ { "name": "ENV_VAR", "value": "ENV_VAR_VALUE" } ] } ] } } ] }
In der folgenden Tabelle sind die Eigenschaften der Registrierungs-JSON-Datei aufgeführt. Alle Eigenschaften sind verpflichtend, sofern nicht anders angegeben. Das vollständige JSON-Schema finden Sie im Abschnitt zum Registrierungsschema.
Verschachtelte Attribute werden von ihrem übergeordneten Element aus eingerückt angezeigt. Beispielsweise ist „headers“ ein untergeordnetes Attribut von „remotes“, und „name“ und „value“ sind untergeordnete Attribute von „headers“.
| Attribut | Description | Fakultativ? | Beispielwert |
|---|---|---|---|
|
Allgemeine Attribute |
|||
|
Name |
Servername. Muss innerhalb einer bestimmten Registrierungsdatei eindeutig sein. |
"aws-ccapi-mcp" |
|
|
Titel |
Für Menschen lesbarer Servername. |
Ja |
„AWS-CC-API“ |
|
description |
Beschreibung des Servers. |
„AWS-Infrastruktur mit natürlicher Sprache verwalten.“ |
|
|
version |
Version des Servers. Semantische Versionierung (x.y.z) wird dringend empfohlen. |
„1.0.2" |
|
|
Attribute des Remote-Servers (HTTP) |
|||
|
Fernbedienungen |
Array mit genau einem Eintrag, der den Remote-Endpunkt angibt. |
- |
|
|
type |
Muss entweder „streamable-http“ oder „sse“ sein. |
„streamable-http“ |
|
|
URL |
URL des MCP-Serverendpunkts. |
„https://mcp.figma.com/mcp“ |
|
|
Header |
Array von HTTP-Headern, die in jede Anfrage aufgenommen werden sollen. |
Ja |
- |
|
Name |
Name des HTTP-Headers. |
„Autorisierung“ |
|
|
value |
HTTP-Header-Wert. |
„Träger MF_9.b5f-4.1jqm“ |
|
|
Lokale (stdio) Serverattribute |
|||
|
Pakete |
Array mit genau einem Eintrag, der die MCP-Serverdefinition enthält. |
- |
|
|
Registrierungstyp |
Muss entweder „npm“, „pypi“ oder „oci“ sein. Die folgenden Package Runner werden verwendet, um das MCP-Serverpaket herunterzuladen und auszuführen:
Auf den Client-Computern müssen die entsprechenden Package Runner vorinstalliert sein. |
„npm“ |
|
|
registryBaseUrl |
URL der Paketregistrierung. |
Ja |
"https://npm.acme.com" |
|
Bezeichner |
Kennung des Serverpakets. |
"@acme /mein-Server“ |
|
|
Transport |
Objekt mit genau einer Eigenschaft, „Typ“. |
- |
|
|
type |
Muss „stdio“ sein. |
„stdio“ |
|
|
Laufzeitargumente |
Array von Argumenten, die für die Laufzeit bereitgestellt werden, d. h. für npx, uvx oder docker. |
Ja |
- |
|
type |
Muss „positionell“ sein. |
„positionell“ |
|
|
value |
Wert des Laufzeitarguments. |
„-q“ |
|
|
Paketargumente |
Array von Argumenten, die dem MCP-Server zur Verfügung gestellt werden. |
Ja |
- |
|
type |
Muss „positionell“ sein. |
„positionell“ |
|
|
value |
Wert Package Paket-Arguments. |
„starten“ |
|
|
Umgebungsvariablen |
Array von Umgebungsvariablen, die vor dem Start des Servers festgelegt werden sollen. |
Ja |
- |
|
Name |
Name der Umgebungsvariablen. |
„LOG_LEVEL“ |
|
|
value |
Wert der Umgebungsvariablen. |
„INFORMATION“ |
Bereitstellung der MCP-Registrierungsdatei
Stellen Sie die JSON-Datei der MCP-Registrierung über HTTPS mit einem beliebigen Webserver wie Amazon S3, Apache oder Nginx bereit. Die URL muss für Q Developer-Clients auf den Computern Ihrer Benutzer zugänglich sein, kann aber für Ihr Unternehmensnetzwerk privat sein.
Der HTTPS-Endpunkt muss über ein gültiges SSL-Zertifikat verfügen, das von einer vertrauenswürdigen Zertifizierungsstelle signiert wurde. Selbstsignierte Zertifikate werden nicht unterstützt.
Q Developer ruft die MCP-Registrierung beim Start und alle 24 Stunden ab. Wenn sich während der regelmäßigen Synchronisation ein lokal installierter MCP-Server nicht mehr in der Registrierung befindet, beendet Q Developer diesen Server und verhindert, dass Benutzer ihn wieder hinzufügen. Wenn der lokal installierte Server eine andere Version hat als der Server in der Registrierung, startet Q Developer den Server mit der in der Registrierung definierten Version neu.
Q Entwickler-Plugins
Wenn Benutzer Q Developer starten, wird geprüft, ob eine Registrierungs-URL im Profil definiert ist. Wenn ja, ruft es die Registrierungs-JSON unter dieser URL ab und erzwingt, dass Benutzer nur die in der Registrierung definierten MCP-Server verwenden können. Wenn Benutzer einen MCP-Server hinzufügen, zeigt Q Developer eine Liste der Server aus der Registrierung an.
Die MCP-Serverparameter der Registrierung (URL, Paket-ID, RuntimeArguments usw.) sind schreibgeschützt. Benutzer können jedoch:
Passen Sie die Berechtigungen für das MCP-Tool an („Zum Ausführen auffordern“, „Immer ausführen“ oder „Verweigern“).
Wählen Sie den MCP-Serverbereich (Global oder Workspace) aus.
Ändern Sie das Anforderungs-Timeout.
Geben Sie zusätzliche Umgebungsvariablen für lokale MCP-Server an.
Geben Sie zusätzliche HTTP-Header für Remote-MCP-Server an.
Anmerkung
Benutzerdefinierte Umgebungsvariablen oder HTTP-Header überschreiben die Registrierungsdefinitionen. Auf diese Weise können Benutzer Attribute angeben, die für ihr Setup spezifisch sind, wie Authentifizierungsschlüssel oder lokale Ordnerpfade.
JSON-Schema der MCP-Registrierung
Das folgende JSON-Schema definiert das von Q Developer unterstützte MCP-Registrierungsdateiformat. Sie können dieses Schema verwenden, um alle von Ihnen erstellten Registrierungsdateien zu überprüfen.
{ "$schema": "https://json-schema.org/draft-07/schema", "properties": { "servers": { "type": "array", "items": { "type": "object", "properties": { "server": { "$ref": "#/definitions/ServerDetail" } }, "required": [ "server" ] } } }, "definitions": { "ServerDetail": { "properties": { "name": { "description": "Server name. Must be unique within a given registry file.", "example": "weather-mcp", "maxLength": 200, "minLength": 3, "pattern": "^[a-zA-Z0-9._-]+$", "type": "string" }, "title": { "description": "Optional human-readable title or display name for the MCP server. MCP subregistries or clients MAY choose to use this for display purposes.", "example": "Weather API", "maxLength": 100, "minLength": 1, "type": "string" }, "description": { "description": "Clear human-readable explanation of server functionality. Should focus on capabilities, not implementation details.", "example": "MCP server providing weather data and forecasts via OpenWeatherMap API", "maxLength": 100, "minLength": 1, "type": "string" }, "version": { "description": "Version string for this server. SHOULD follow semantic versioning (e.g., '1.0.2', '2.1.0-alpha'). Equivalent of Implementation.version in MCP specification. Non-semantic versions are allowed but may not sort predictably. Version ranges are rejected (e.g., '^1.2.3', '~1.2.3', '\u003e=1.2.3', '1.x', '1.*').", "example": "1.0.2", "maxLength": 255, "type": "string" }, "packages": { "items": { "$ref": "#/definitions/Package" }, "type": "array" }, "remotes": { "items": { "anyOf": [ { "$ref": "#/definitions/StreamableHttpTransport" }, { "$ref": "#/definitions/SseTransport" } ] }, "type": "array" } }, "required": [ "name", "description", "version" ], "type": "object" }, "Package": { "properties": { "registryType": { "description": "Registry type indicating how to download packages (e.g., 'npm', 'pypi', 'oci')", "enum": [ "npm", "pypi", "oci" ], "type": "string" }, "registryBaseUrl": { "description": "Base URL of the package registry", "examples": [ "https://registry.npmjs.org", "https://pypi.org", "https://docker.io" ], "format": "uri", "type": "string" }, "identifier": { "description": "Package identifier - either a package name (for registries) or URL (for direct downloads)", "examples": [ "@modelcontextprotocol/server-brave-search", "https://github.com/example/releases/download/v1.0.0/package.mcpb" ], "type": "string" }, "transport": { "anyOf": [ { "$ref": "#/definitions/StdioTransport" }, { "$ref": "#/definitions/StreamableHttpTransport" }, { "$ref": "#/definitions/SseTransport" } ], "description": "Transport protocol configuration for the package" }, "runtimeArguments": { "description": "A list of arguments to be passed to the package's runtime command (such as docker or npx).", "items": { "$ref": "#/definitions/PositionalArgument" }, "type": "array" }, "packageArguments": { "description": "A list of arguments to be passed to the package's binary.", "items": { "$ref": "#/definitions/PositionalArgument" }, "type": "array" }, "environmentVariables": { "description": "A mapping of environment variables to be set when running the package.", "items": { "$ref": "#/definitions/KeyValueInput" }, "type": "array" } }, "required": [ "registryType", "identifier", "transport" ], "type": "object" }, "StdioTransport": { "properties": { "type": { "description": "Transport type", "enum": [ "stdio" ], "example": "stdio", "type": "string" } }, "required": [ "type" ], "type": "object" }, "StreamableHttpTransport": { "properties": { "type": { "description": "Transport type", "enum": [ "streamable-http" ], "example": "streamable-http", "type": "string" }, "url": { "description": "URL template for the streamable-http transport. Variables in {curly_braces} reference argument valueHints, argument names, or environment variable names. After variable substitution, this should produce a valid URI.", "example": "https://api.example.com/mcp", "type": "string" }, "headers": { "description": "HTTP headers to include", "items": { "$ref": "#/definitions/KeyValueInput" }, "type": "array" } }, "required": [ "type", "url" ], "type": "object" }, "SseTransport": { "properties": { "type": { "description": "Transport type", "enum": [ "sse" ], "example": "sse", "type": "string" }, "url": { "description": "Server-Sent Events endpoint URL", "example": "https://mcp-fs.example.com/sse", "format": "uri", "type": "string" }, "headers": { "description": "HTTP headers to include", "items": { "$ref": "#/definitions/KeyValueInput" }, "type": "array" } }, "required": [ "type", "url" ], "type": "object" }, "PositionalArgument": { "properties": { "type": { "enum": [ "positional" ], "example": "positional", "type": "string" }, "value": { "description": "The value for the input.", "type": "string" } }, "required": [ "type", "value" ], "type": "object" }, "KeyValueInput": { "properties": { "name": { "description": "Name of the header or environment variable.", "example": "SOME_VARIABLE", "type": "string" }, "value": { "description": "The value for the input.", "type": "string" } }, "required": [ "name" ], "type": "object" } }, "required": [ "servers" ], "type": "object" }