OT Flash Agent- en MCP-integratiehandleiding
Protocollen, autorisatie, toolcontracten en het volledige aanroepproces
Bouw traceerbare data- en kennisapplicaties met de publieke Remote MCP van OT Flash r56. Dit handboek behandelt OAuth, protocolberichten, de parameterreferentie van alle gedeclareerde tools, bewijsregels, voorwaardelijke mogelijkheden en herstelprocedures, en biedt uitvoerbare client- en synthetische data-voorbeelden.
Agent-ontwikkelaars, integratie-engineers en beheerders
Bijbehorende voorbeelden behouden Chinese weergavenamen van velden. De vertaling van de interface en de verklarende tekst wijzigt geen werkelijke tabelnamen, kolomnamen, opsommingswaarden, hulpmiddelnamen of protocolvelden.
Inhoudsopgave
- 1Reikwijdte en voltooiingscriteria van de Agent-integratie
- 2Snelle verbinding en mogelijkhedendetectie
- 3OAuth discovery, registratie en autorisatie
- 4Scope, resourcegrenzen en realtime rechten
- 5HTTP- en moderne MCP-berichten
- 6Compatibiliteit met clients van het oude protocol
- 7Kies de juiste tool en evidencekanaal
- 8Ontology-resources en id-typen
- 9Doris-tabelquery- en structuurcontract
- 10Multidimensionale Top3 en omgang met afkapping
- 11Kennisopslag: volledige brontekst en bewijsvereisten
- 12Nativa Search-model en -sessies
- 13Taal- en regioconventies
- 14Gefuseerde analyse en interactieve resultaten
- 15Duurzame visualisatierapporten en MCP Apps
- 16Artefactontwerp, voorbeeldweergave, plan en toepassing
- 17Ontologie-kandidaatcreatie en publicatiecontract
- 18Gepubliceerde modellen, kandidaatquery's en referentieafsluiting
- 19Ontologie-agenttaken delegeren
- 20Bedrijfswerkruimte MCP
- 21Invoer van businesskennis en te bevestigen vragen
- 22Responsen, fouten en veilig opnieuw proberen
- 23Integratiebeveiliging en capaciteitsgrenzen
- 24Beheerderbedrading en voorwaardelijke schakelaars
- 25Uitvoerbare client en aanroepvoorbeelden
- 26Ontologiechatinterface insluiten
- 27Acceptatiechecklist voor integratie
- 28Standaardbronnen en onderhoud
- 29Toolparameterreferentie Basis en native Search
- 30Toolparameterreferentie Tabellen, grafiek en kennis
- 31Toolparameterreferentie Analyse en rapportage
- 32Toolparameterreferentie Modellering en originele taken
- 33Zie voor de toolparameters Kennisinvoer en bereik
- 34Zie voor de toolparameters Business Workspace
Reikwijdte en voltooiingscriteria van de Agent-integratie
Kies de geautoriseerde toegangspunt en voltooi query's, bewijsverzameling of gecontroleerde schrijfacties op basis van serverontvangsten.
OT Flash r56 biedt externe Agents via Remote MCP data- en kennisfuncties binnen het bereik van de ontologie, en biedt een aparte toegang tot de Business Workspace. Een Agent moet het uitvoerbare werk bepalen op basis van de werkelijke tools/list, inputSchema, OAuth scope en de huidige resourcerechten, en mag niet op grond van een statische handleiding aannemen dat een implementatie alle optionele functies heeft ingeschakeld.
| Ingang | Doel | Grenzen |
|---|---|---|
| /mcp | Ontologie, datatabellen, documentkennis, native Search en voorwaardelijk geopende analyse en modellering | Het snijpunt van de rechten van de huidige gebruiker en de geautoriseerde resources van deze sessie |
| /mcp/business | Bedrijfssysteemdetectie, query's, actieplannen, status en uitvoering | Zelfstandige autorisatie van bedrijfssystemen en publicatiecontracten |
| Ingebedde ontologie-agentpagina | Gebruik van ontologiedialogen in de menselijke interface | Afhankelijk van een echte ingelogde sessie; geen MCP-token-uitwisselingspunt zonder login |
Categorieën van mogelijkheden
- Basislezen: ontologie en resources, grafpositionering, kenniszoekopdrachten met volledige brontekst, details van geautoriseerde tabellen en Doris SQL.
- Zelfstandige delegatie: dfc_search vereist search:operate en blijft de oorspronkelijke gebruikers- en modelrechten gebruiken.
- Voorwaardelijk geopend: analyse, blijvende rapporten, artefactontwerpen en applicaties, ontologiemodelquery's en gedelegeerde Agent-taken.
- Niet-beschikbare mogelijkheden: de dfc_etl van Flash rapporteert alleen capabilities en biedt geen Heavy ETL-uitvoering. AutoML en de interne FocusCode-werkruimte-toegang vallen niet onder de publieke Flash API van dit handboek.
Voltooiingscriteria
Voor het lezen van feiten moet een daadwerkelijk bruikbare query- of volledige brontekstontvangst worden verkregen; bij het genereren van kandidaten moet worden vermeld dat deze nog niet zijn toegepast; publicatie vereist een echte APPLIED-ontvangst; bij annulering moet onderscheid worden gemaakt tussen aanvraag en bevestiging. Antwoordtekst, HTTP 200, ontvangstbevestiging van een tool of de modelomschrijving “voltooid” zijn op zichzelf geen bewijs dat een bedrijfsoperatie is geslaagd.
De bijbehorende reference/mcp-tool-catalog.json is een offline declaratieve referentie voor r56 en bevat definities van voorwaardelijk ingeschakelde functies; het is geen realtime tools/list van een willekeurige gebruiker. De volledige catalogus omvat 28 ontologie-kern-tools, 4 controller-voorwaardelijke uitbreidingen en 8 zakelijke tools, wat niet betekent dat alles standaard is geopend.
Snelle verbinding en mogelijkhedendetectie
Begin met het officiële domein van de instantie en ontdek de daadwerkelijk beschikbare tools met minimale rechten.
- Vraag de beheerder om het officiële HTTPS-basisadres en de ontologie of het bedrijfssysteem waartoe toegang nodig is. Gebruik de voorbeelddomeinen uit de documentatie niet om echte bedrijfsactiviteiten aan te roepen.
- Configureer het MCP-serveradres als https://flash.example.com/mcp; de Business Workspace gebruikt /mcp/business op hetzelfde domein.
- Activeer volgens de ondersteuning van de client de OAuth-login en -autorisatie en controleer resources en scope; verstuur geen gebruikersnaam en wachtwoord naar MCP.
- Gebruik protocol discovery of initialisatie van het betreffende protocol-tijdperk en lees vervolgens tools/list en de resourcebeschrijvingen.
- Voer eerst een klein alleen-lezen verzoek uit, controleer de gestructureerde resultaten en fouten, en voer daarna het gebruikersdoel uit.
Configuratiefragment voor de client
{
"mcpServers": {
"ot-flash": {
"url": "https://flash.example.com/mcp"
}
}
}Dit fragment toont de configuratie-intentie van het serveradres; de specifieke structuur van het configuratiebestand en OAuth-ondersteuning zijn afhankelijk van de client. Vul geen echte access_token, refresh_token, cookies of beheerderswachtwoorden in openbare bestanden in.
Moderne protocoldiscovery
POST /mcp HTTP/1.1
Host: flash.example.com
Authorization: Bearer <ACCESS_TOKEN>
Content-Type: application/json
Accept: application/json, text/event-stream
MCP-Protocol-Version: 2026-07-28
Mcp-Method: server/discover
{
"jsonrpc": "2.0",
"id": 1,
"method": "server/discover",
"params": {
"_meta": {
"io.modelcontextprotocol/protocolVersion": "2026-07-28",
"io.modelcontextprotocol/clientInfo": {"name": "flash-client", "version": "1.0.0"},
"io.modelcontextprotocol/clientCapabilities": {}
}
}
}Controles vóór integratie
- Het resource-basisadres, de OAuth-issuer en het externe adres van de reverse proxy zijn consistent.
- De client ondersteunt het betreffende protocol-tijdperk en stuurt niet vast initialize naar een nieuw protocol-ingangspunt.
- De huidige autorisatie is gekoppeld aan de benodigde ontologie of het benodigde bedrijfssysteem.
- Het token is geldig en nieuwe optionele scopes zijn uitdrukkelijk geautoriseerd.
OAuth discovery, registratie en autorisatie
Gebruik de autorisatiecode en PKCE en stel de productinloggegevens niet bloot aan de Agent.
| Endpoint | Methode | Functie |
|---|---|---|
| /.well-known/oauth-protected-resource | GET | Ontologie MCP resourcediscovery |
| /.well-known/oauth-protected-resource/mcp | GET | Compatibele discovery van ontologie-resourcepaden |
| /.well-known/oauth-protected-resource/mcp/business | GET | Bedrijf MCP resourcediscovery |
| /.well-known/oauth-authorization-server | GET | Metadata van de autorisatieserver |
| /oauth/register | POST JSON | Dynamische registratie van public client |
| /oauth/authorize | GET of POST form | Inloggen, resource selecteren en autorisatie bevestigen |
| /oauth/token | POST form | Inwisselen van autorisatiecode en rotatie van refresh token |
| /oauth/revoke | POST form | Token-intrekking |
| /oauth/grants | GET | Geautoriseerde gebruiker bekijkt geautoriseerde verbindingen |
| /oauth/grants/revoke | POST form | Verbinding intrekken volgens het oorspronkelijke paginaproces |
Autorisatievolgorde
- Lees de metadata van de beveiligde resource en van de autorisatieserver. De 401 en WWW-Authenticate die worden geretourneerd bij een verzoek zonder token verwijzen naar het resourcediscovery-adres.
- Registreer of gebruik een clientidentiteit. De dynamische registratie van public client bij r56 gebruikt token_endpoint_auth_method=none; een clientgeheim kan PKCE niet vervangen.
- Genereer een willekeurige state en code_verifier en bereken de S256 code_challenge.
- Open het authorize-adres uit de metadata en geef response_type=code, client_id, exacte redirect_uri, scope, resource, state, code_challenge en code_challenge_method=S256 mee.
- De gebruiker logt in bij DataFocus en selecteert een ontologie of bedrijfssysteem. De client mag geen resources vooraf selecteren waarop de gebruiker geen toegangsrecht heeft.
- Ontvang de callback, verifieer state en issuer; wissel de autorisatiecode in met de oorspronkelijke code_verifier.
- Gebruik het access_token uitsluitend voor MCP Bearer-authenticatie. Vernieuwing volgt het oorspronkelijke OAuth-proces; sla het geroteerde refresh_token veilig op.
Registratievoorbeeld
{
"client_name": "OT Flash Knowledge Client",
"redirect_uris": ["http://127.0.0.1:8765/callback"],
"application_type": "native",
"token_endpoint_auth_method": "none",
"grant_types": ["authorization_code", "refresh_token"],
"response_types": ["code"]
}De callback van een webclient gebruikt HTTPS; native clients kunnen een ondersteund loopback-adres gebruiken. Autorisatie en token-uitwisseling moeten exact overeenkomen met de geregistreerde callback. Eén Grant is gericht op één protected resource; ontologie-scope en Business Workspace-scope worden niet gemengd in dezelfde verbinding.
Tokenlevensduur
Bij de r56-server is het standaard access token 3600 seconden, het refresh token 2592000 seconden en de autorisatiecode 300 seconden; een implementatie kan deze waarden overschrijven. De client moet beoordelen op basis van expires_in uit het token-antwoord en de werkelijke fouten en mag de standaardwaarden niet hardcoderen. Werk het token bij na vernieuwing; het intrekken van rollen, resourcerechten of een Grant zorgt ervoor dat volgende aanroepen worden geweigerd.
Scope, resourcegrenzen en realtime rechten
Het autorisatiebereik delegeert bestaande rechten, verleent geen rolverhoging en deelt geen bedrijfsstatus over Grants heen.
| Scope | Typische mogelijkheden | Belangrijke beperkingen |
|---|---|---|
| ontology.metadata:read | Ontologie, resources, tabelstructuur | Ontologie en tabellen moeten binnen het geautoriseerde en huidige leesbare bereik vallen |
| ontology.graph:read | Grafzoekopdrachten en buren | Retourneert positioneringsinformatie, geen feitelijk bewijs |
| ontology.knowledge:read | Kennispositionering en volledige brontekst | Behoudt de oorspronkelijke rechten van kennisbank en document |
| ontology.table:query | Ontologietabel SQL en query's op gepubliceerde modellen | Tabelquery's vereisen bovendien de metadata-scope; werkelijke bron- en kolomrechten blijven gelden |
| search:operate | Native trefwoordmodellen en chats | Zelfstandige uitdrukkelijke delegatie, uitgevoerd volgens de oorspronkelijke model- en gebruikerstabelkolomrechten |
| etl:operate | Flash ETL capabilities | Opent geen Heavy ETL |
| authoring.contract:read | Voorwaardelijk geopende modelleercontracten | Vereisen bovendien functieschakelaars en de betreffende resources |
| authoring.artifact:read | Huidige geautoriseerde leesbewerkingen zoals kandidaten en plannen | Gekoppeld aan de oorspronkelijke Grant en resources |
| authoring.artifact:draft | Kandidaat-indiening, voorbeeldweergave e.d. | Autoriseert geen uitvoering of publicatie |
| authoring.artifact:apply | Gecontroleerde plannen en toepassing | Vereisen nog steeds de oorspronkelijke bedrijfsrollen, beleid en goedkeuring |
| execution.script:draft | Specifieke scriptontwerpen | Autoriseert geen daadwerkelijke scriptuitvoering |
| datasource.http:read / draft / test / import | Voorwaardelijk geopende HTTP databron-artefactmogelijkheden | Elk item heeft een eigen schakelaar en de oorspronkelijke rechten |
Leescombinatievereisten
dfc_table detail vereist ontology.metadata:read; query vereist bovendien ontology.table:query. dfc_ontology_query vereist de twee lees-scopes graph en knowledge. dfc_knowledge_search/detail vereist knowledge. published_model/published_query gaat via table:query; candidate_query vereist bovendien authoring.artifact:read. Analysetools controleren bovendien de toegestane bewijs-scopes; blijvende rapporten vereisen metadata en table query.
Standaardautorisatie niet hardcoderen
De standaard ontologie-scopeverzameling van r56 bevat table query; Search en ETL zijn uitdrukkelijke delegaties. Bepaal uiteindelijk op basis van discovery-metadata, de autorisatiepagina, de werkelijke token-scope en tools/list. Uitspraken in oudere documentatie zoals “de ontologie heeft standaard nooit SQL” of “slechts zes tools” kunnen niet als uitgangspunt voor de huidige implementatie dienen.
Statusisolatie
Chats, rapporten, kandidaten en actieplannen hebben elk hun eigen eigenaar en bereik. Het vernieuwen van het access token draagt het werk van de oorspronkelijke Grant niet over aan een andere Grant. Voeg geen sessionId, reportId, planId, goedkeuringstokens of brontokens die door een andere verbinding zijn geretourneerd samen met de huidige verbinding.
HTTP- en moderne MCP-berichten
Stuur per verzoek de juiste metadata en bijpassende routingheaders en behandel HTTP en toolresultaten afzonderlijk.
| Projecten | r56-gedrag |
|---|---|
| Transport | Stateless Streamable HTTP, POST JSON-RPC |
| Ondersteunde id's | 2026-07-28 en 2025-11-25 2025-06-18 2025-03-26 |
| Moderne methodes | server/discover tools/list tools/call resources/list resources/read, aangeboden volgens de werkelijke mogelijkheden |
| Sessiekop | Er wordt geen Mcp-Session-Id toegekend |
| GET en DELETE | /mcp en /mcp/business geven 405 terug |
| Servermelding SSE | Deze twee openbare MCP-ingangen worden niet aangeboden |
| Directorycache | Moderne discover- en list-aanroepen geven ttlMs=60000 en cacheScope=private terug |
| Normaal resultaat | Moderne resultaten bevatten resultType=complete en metadata met de identiteit van de service |
Inhoud die overeen moet komen
- MCP-Protocol-Version moet overeenkomen met io.modelcontextprotocol/protocolVersion in params._meta.
- Mcp-Method moet overeenkomen met de methode JSON-RPC.
- De Mcp-Name van tools/call moet overeenkomen met params.name; de naamkop van resources/read moet overeenkomen met URI.
- Elke moderne aanvraag bevat het io.modelcontextprotocol/clientCapabilities-object; daarnaast wordt een standaard clientInfo meegeleverd zodat clients deze kunnen herkennen.
Voorbeeld van een aanroep
{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "dfc_ontologies",
"arguments": {"page": 1, "pageSize": 20},
"_meta": {
"io.modelcontextprotocol/protocolVersion": "2026-07-28",
"io.modelcontextprotocol/clientInfo": {"name": "flash-client", "version": "1.0.0"},
"io.modelcontextprotocol/clientCapabilities": {}
}
}
}De bijbehorende HTTP-koppen zijn Mcp-Method: tools/call en Mcp-Name: dfc_ontologies. In alle voorbeelden is ACCESS_TOKEN een placeholder. Plaats de Bearer-token niet in URL, JSON-parameters of cachesleutels.
Resultaten lezen
Behandel eerst de HTTP-status en controleer vervolgens op een JSON-RPC-fout; is er een result, controleer dan isError. Een succesvol toolresultaat levert doorgaans structuredContent én een text-inhoud met dezelfde zakelijke JSON. Geef de voorkeur aan het gestructureerde kanaal en vat text en structuredContent niet op als twee onafhankelijke feiten. HTTP 200 kan een mislukte tool-aanroep bevatten.
Openbare resources en UI
De ingebouwde instructieresources zijn niet afhankelijk van MCP Apps. De ingang van de Business Workspace geeft hierdoor geen ontology-instructieresources. Clients die visualisatie ondersteunen, dienen de bijbehorende UI te ontdekken via de werkelijke mogelijkheden en tool-_meta, en te raden niet naar resources die niet zijn teruggegeven URI.
Compatibiliteit met clients van het oude protocol
Houd binnen clients die nog gebruikmaken van de initiatie-handshake een consistente protocoltijdperk aan.
{
"jsonrpc": "2.0", "id": 1, "method": "initialize",
"params": {
"protocolVersion": "2025-11-25",
"capabilities": {},
"clientInfo": {"name": "flash-legacy-client", "version": "1.0.0"}
}
}- Stuur initialize en lees de door de server onderhandelde protocolversie en capabilities.
- Stuur de vereiste afrondingsmeldingen van de initialisatie volgens het clientprotocol; meldingen leveren geen normale toolresultaten op.
- Lees met tools/list de momenteel geautoriseerde tools en verstuur daarna tools/call.
- Houd de koppen en berichten consistent met het huidige protocoltijdperk en stuur geen oude initialize- of ping-procedures naar 2026-07-28-berichten.
Het oude protocol gebruikt dezelfde Bearer/OAuth, dezelfde rechten en dezelfde tool-contracten. Het betekent niet dat de server noodzakelijk een verouderde SSE-langlopende verbinding of Mcp-Session-Id aanbiedt; de openbare service met r56 blijft stateless.
Protocolfouten
| Situatie | Typisch resultaat | Oplossing |
|---|---|---|
| Moderne koppen en berichten zijn inconsistent | HTTP 400 JSON-RPC -32020 | Corrigeer de koppen, metadata en toolnamen |
| Niet-ondersteunde versie | -32022 met een lijst van ondersteunde versies | Kies een daadwerkelijk ondersteund protocol |
| Onbekende methode | JSON-RPC -32601, moderne aanvragen mogelijk HTTP 404 | Controleer het protocoltijdperk en de methode |
| Ontbrekende of ongeldige parameters | JSON-RPC parameterfout of tool-isError | Corrigeer volgens de werkelijke inputSchema |
Kies de juiste tool en evidencekanaal
Router op basis van de nog onbeantwoorde zakelijke vraag en herhaal niet mechanisch dezelfde oproepketen om bewijs te verzamelen.
| Taak | Gekozen tool | Benodigd bewijs voor afronding |
|---|---|---|
| Geautoriseerde onderwerpen en resources ontdekken | dfc_ontologies dfc_ontology_resources | Werkelijke resource-id's, typen en de momenteel zichtbare reikwijdte |
| Tabelstatistieken en TopN | dfc_table query | Succesvol uitgevoerde ontvangstbevestiging en volledige evidenceRows |
| Beleid, contracten of rapporten opzoeken | dfc_ontology_query of knowledge search/detail | Volledige, geautoriseerde brontekst die als feit kan dienen |
| Grafobjecten lokaliseren | dfc_ontology_graph search/neighbors | Lokaliseer eerst de werkelijke bron en verkrijg daarna de bijbehorende feiten |
| Oorspronkelijke trefwoordinteractie | dfc_manual en daarna dfc_search | De werkelijke resultaten in het oorspronkelijke model en de zakelijke frames |
| Gecombineerde analyse en rapportage | dfc_analysis_* of dfc_report_* | De werkelijke status van elke gestructureerde vertakking en documentbewijs |
| Weergave of ontologymodel wijzigen | dfc_authoring_* en artifact-tools | Controleer kandidaten, plannen, goedkeuringen en toepassing afzonderlijk |
| Zakelijke commando's uitvoeren | /mcp/business met dfb_* | Gepubliceerde contracten en de oorspronkelijke ActionPlan-ontvangstbevestiging |
Onnodige aanroepen vermijden
Wanneer de actuele, volledige en geautoriseerde tabelstructuur al beschikbaar is, is het niet nodig om bij elke query opnieuw detail op te vragen; wanneer er al betrouwbare lokalisering en bewijs voorhanden is, herhaal dan niet dezelfde zoekopdracht. Voer bij een ontbrekende dimensie een begrensde aanvullende query uit. Als een fout ondubbelzinnig niet opnieuw kan worden uitgevoerd, los dan eerst het gat op en vervang oordeel niet door 'nog een keer proberen'.
Uitsluitingen van Flash
dfc_etl capabilities kan available=false en ETL_NOT_INCLUDED_IN_OT_FLASH teruggeven. De statische documentatie van ingebouwde ETL-functies dient als referentie over verschillende producten; het bewijst niet dat Flash ETL heeft geïnstalleerd en staat de Agent niet toe automatisch over te schakelen naar Heavy of een andere tenant voor uitvoering.
Ontology-resources en id-typen
Verkrijg eerst de werkelijke resourcecoördinaten om opslagnamen, document-id's en knowledgebase-id's niet door elkaar te halen.
- Roep dfc_ontologies aan en blader met page en pageSize door de ontologies die bij deze sessie geautoriseerd zijn en momenteel leesbaar.
- Roep dfc_ontology_resources aan met een werkelijke ontologyId; kies naar behoefte tables, answers, pinboards, documents en knowledgeBindings.
- Behandel paginering per resourcetype. pageSize is maximaal 100; leid de volledige omvang van de resource niet af uit de eerste pagina.
- Sla het door de resource gedeclareerde type en de oorspronkelijke id op en gebruik deze bij volgende aanroepen ongewijzigd.
{"name":"dfc_ontology_resources","arguments":{
"ontologyId":"<ONTOLOGY_ID>",
"resourceTypes":["tables","documents","knowledgeBindings"],
"page":1,"pageSize":100
}}| Coördinaten | Bron | Vervangt niet |
|---|---|---|
| ontologyId | Lijst van geautoriseerde ontologies of de momenteel geldige context | Id van een andere ontology |
| id van een tabelresource | tables-lijst of betrouwbare context | physicalName of weergegeven tabelnaam |
| tblDisplayName colDisplayName | Metadata van de huidige tabel en kolommen | Geraden fysieke SQL-identificatoren |
| knowledgeId | knowledgeBindings of werkelijke kennisopvraagontvangstbevestiging | id van een documentresource |
| assetId documentId chunkId evidenceId | Dezelfde werkelijke lokalisatieontvangstbevestiging | Samengestelde velden uit verschillende lokalisatieresultaten |
| rid revisionId releaseId | Gepubliceerd model of serverkandidaatcontext | Zelfgegenereerde id of latest |
Nauwkeurigheidsconventies
Geef bij alle 64-bits resource-id's de voorkeur aan decimale tekenreeksen en converteer ze niet via Number in JavaScript. Sommige zakelijke schema's accepteren string of integer, maar dat betekent niet dat integer-nauwkeurigheid mag worden opgegeven. Opaque locators, UUID, hashes en eenmalige tokens worden eveneens ongewijzigd bewaard.
Doris-tabelquery- en structuurcontract
Voer alleen-lezen SQL uit op geautoriseerde tabellen en behoud de outputsamentrekking, exacte waarden en volledigheid.
Structuur lezen
{"name":"dfc_table","arguments":{
"action":"detail","ontologyId":"<ONTOLOGY_ID>","id":"<TABLE_RESOURCE_ID>"
}}Gebruik detail met een werkelijke tabelresource-id. Controleer schemaComplete, tblDisplayName, colDisplayName in columns en de gezaghebbende sqlDataType, evenals de geretourneerde queryContract. dataType is slechts een compatibiliteitsmapping; de fysieke opslagnaam is niet de tabelnaam waarmee SQL wordt ingediend.
Query uitvoeren
{
"name": "dfc_table",
"arguments": {
"action": "query",
"ontologyId": "<ONTOLOGY_ID>",
"sql": "SELECT \"区域\", SUM(\"销售金额\") AS \"销售金额合计\" FROM \"电商销售数据\" WHERE \"订单状态\" = '已完成' GROUP BY \"区域\" ORDER BY \"销售金额合计\" DESC",
"maxRows": 100
}
}SQL-beperkingen
- Gebruik weergegeven tabelnamen en kolomnamen en citeer identificatoren met dubbele aanhalingstekens. De aanvraag is één alleen-lezen Doris-query binnen ontology-scope.
- Som de outputs expliciet op; SELECT * en table.* zijn verboden; via fysieke kolommen kan de machtiging van geregistreerde kolommen niet worden omzeild.
- Gebruik bij joins expliciete JOIN ... ON; NATURAL JOIN en JOIN USING worden geweigerd.
- Wettelijke meerdimensionale aggregaties, CTE, vensters, CASE, COUNT(DISTINCT ...) en andere alleen-lezen expressies zijn toegestaan; dat de semantische validatie een expressie niet dekt betekent niet dat uitvoering uniform verboden is.
- Voltooi aggregatie, sortering en rangschikking eerst in SQL en pas daarna de resultaatlimiet toe. maxRows is standaard 100, maximaal 200.
Datum en tijdzone
| Type of doel | Vorm | Let op |
|---|---|---|
| DATE | CAST('2026-09-01' AS DATE) versus CURRENT_DATE | Neem niet automatisch aan dat een tekstliteral een datumtype is |
| DATETIME | CAST('2026-09-01 00:00:00' AS DATETIME) versus CURRENT_TIMESTAMP | Controleer de brontijdzone en de sessietijdzone |
| Relatieve tijd | DATE_SUB(CURRENT_DATE, INTERVAL 1 YEAR) | Gebruik voor datums en tijdstempels de overeenkomstige huidige functies |
| Tijdgroepering | YEAR(column) of DATE_TRUNC(column, 'month') | Gebruik voor elke uitvoer een unieke alias; queryContract is leidend |
De DATE('now', ...)-functie van SQLite is niet het Doris-datumcontract van deze ingang. Neem de SQLite-offlineverificatiemethode uit documentatievoorbeelden niet over in de online SQL.
Het v8-queryontvangstbewijs lezen
evidenceRows is het enige kanaal waarmee de Agent rijgegevens benadert; raw data is niet toegankelijk voor de Agent. SQL-getallen worden gecodeerd als exacte decimale JSON-tekstreeksen; bepaal de numerieke waarde en het bedrijfstype aan de hand van resultColumnContracts en interpreteer JSON niet als VARCHAR alleen omdat het een tekenreeks is. Lees de informatie over executionReceipt, volledigheid en afkapping en bewaar broninformatie zoals evidenceRowsSha256.
Query-uitvoer met een citeerbaar ontvangstbewijs mag letterlijk worden geciteerd; alleen semantiek die aan de serverkant is geverifieerd, mag worden geautoriseerd voor daaropvolgende deterministische herberekeningen. Leid niet op veldnamen 'cumulatief saldo', 'eindwaarde', '币种' af en vul geen eenheden zelf aan. Nulrij-resultaten, fouten of afkapping mogen niet als volledige statistiek worden beschreven.
Multidimensionale Top3 en omgang met afkapping
Beantwoord ranglijsten met serverzijde-aggregatie en vensterfuncties; herbereken niet op basis van onvolledige resultaten.
Gebruik bij het bijbehorende examples/top3.sql de voorbeeldtabellen: aggregeer eerst op 区域, 类别 en 产品, voer daarna binnen elke 区域 en 类别 een ROW_NUMBER uit en gebruik de 产品-naam als stabiele volgorde bij gelijke bedragen. Een aanvraag met maxRows=100 is ruim voldoende voor de 36 rijen van het voorbeeld; bij andere bedrijfsgegevens moet u het aantal werkelijke groepen inschatten.
- Verkrijg de werkelijke structuur en de huidige definitie en verduidelijk de 币种, de periode, de 订单状态 en de regel voor gelijke scores.
- Dien de SQL voor serverzijde-aggregatie en rangschikking in. Ga niet eerst alleen het 区域-totaal opvragen en gebruik dat daarna als 类别产品-ranglijst.
- Controleer het uitvoerkolomcontract en de werkelijke evidenceRows en bevestig dat de geretourneerde resultaten alle benodigde groepen dekken.
- Bij afkapping voert u begrensde partitiequery's uit binnen de door de server ondersteunde grenzen, bijvoorbeeld per 区域 telkens de volledige Top3 ophalen; houd elke keer dezelfde bedrijfswerkwijze aan.
- Als de bronperiode verandert, queryt u opnieuw en vermeldt u expliciet de nieuwe versie; meng geen verschillende dataversies of verlopen cursors.
Foutherstel
TABLE_SCHEMA_INCOMPLETE moet worden gecorrigeerd of de volledige structuur moet worden opgevraagd; fouten zoals ONTOLOGY_SQL_FAILURE_CONTRACT_INVALID worden afgehandeld volgens de geretourneerde errorCode, retryable en remediation. Beweer niet dat 'alle multidimensionale GROUP BY- of vensterfuncties verboden zijn' en verzinn geen ranglijsten zonder queryresultaten.
Kennisopslag: volledige brontekst en bewijsvereisten
Scheid lokaliseren, lezen en feitelijke referentie en behoud herkomst en volledigheid.
Twee gebruikelijke paden
| Pad | Doel | Kernpunten |
|---|---|---|
| dfc_ontology_query | Zoeken binnen de aan de ontologie gebonden kennis, eventueel gecombineerd met graph-routing | Controleer de volledige canonical answerContextItems en de bewijsvereisten |
| dfc_knowledge_search → dfc_knowledge_detail chunk | Expliciet zoeken om te lokaliseren, daarna het geselecteerde fragment lezen | Een zoekvoorbeeld geldt niet als feit; lees de volledige brontekst van dezelfde locatie |
{"name":"dfc_knowledge_search","arguments":{
"ontologyId":"<ONTOLOGY_ID>","query":"销售金额是否排除退货", "topK":5
}}
{"name":"dfc_knowledge_detail","arguments":{
"action":"chunk","ontologyId":"<ONTOLOGY_ID>",
"evidenceId":"<EVIDENCE_ID_FROM_THE_SAME_SEARCH_RESULT>"
}}Voorwaarden voor feitelijk gebruik
- Controleer de huidige ACL, de volledigheid van de inhoud en de canonicalFactEligible, citationEligible of het overeenkomstige uitvoeringscontract van de serverzijde.
- Volledige inhoud is gebonden aan contentSha256. Bij afkapping, weggelaten content wegens budget of lage kwaliteit handelt u conform de werkelijke velden.
- Documentmetagegevens, page_context, graph-locatie, retrievalsamenvattingen en voorbeelden vervangen de canonical brontekst niet.
- Kopieer bij voorkeur de evidenceId; wanneer u chunkId en documentId nodig heeft, moeten deze afkomstig zijn uit hetzelfde lokaliseringsresultaat, zonder samenvoegen of verzinnen.
Graph-routing
Het search/neighbors-resultaat is lokatie-informatie. Geef uitsluitend het door de server volledig geretourneerde routeLocator-object door aan de ontology-query, inclusief binding-, versie- en prooffvelden. Wikkel een assetId of knowledgeId niet zelf in als door de server uitgegeven locator en geef geen door het model geclaimde bronbewijzen terug.
Gestructureerd documentherstel
De structuredPlan van dfc_ontology_query is bedoeld voor beperkt herstel en deterministische verificatie van onregelmatige documenttabellen. Gebruik deze alleen nadat de huidige executionContractSha256, tableIndex, kolommen en volledige tabel zijn geretourneerd en volg het door de server aangegeven plan. Gewone reeds geïmporteerde bedrijfstabellen verlopen via dfc_table SQL; behandel het herstel van Markdown-tabellen niet als een route om autorisatie voor tabelquery's te omzeilen.
Zoekstrategie
knowledgeIds wordt meestal weggelaten zodat alle momenteel actieve bindingen worden gedekt; gebruik bij opgave uitsluitend echte knowledge base-ID's van knowledgeBindings. Gebruik een documentresource-ID niet als knowledge base-ID. Voer bij onopgeloste vragen een nieuwe begrensde zoekactie uit en vermijd zoeken die exact duplicaat is en geen nieuwe evidence oplevert.
Nativa Search-model en -sessies
Gebruik via dfc_search het trefwoordprotocol van Rust Search en wacht op de eindtoestand van het originele business-frame.
Lees eerst de instructies voordat u mogelijkheden ontdekt
{"name":"dfc_manual","arguments":{
"action":"read","uri":"datafocus://manuals/search-keyword-queries/v1"
}}
{"name":"dfc_search","arguments":{"action":"capabilities"}}dfc_search vereist een expliciete search:operate. Het wrapt de originele trefwoord-WebSocket en herschrijft trefwoorden niet naar SQL- of LLM-aanvragen. De sessie is gebonden aan de huidige tenant, gebruiker, Grant, client en het model; bij acties worden de machtigingen voor de oorspronkelijke tabelkolommen opnieuw gecontroleerd.
Minimale sessiestroom
{"name":"dfc_search","arguments":{
"action":"model_create","data":{"tableIds":["<ACTUAL_TABLE_ID>"]}
}}
{"name":"dfc_search","arguments":{
"action":"open","data":{"sourceToken":"<MODEL_SOURCE_TOKEN>","language":"en-US"}
}}
{"name":"dfc_search","arguments":{
"action":"poll","data":{"sessionId":"<SEARCH_SESSION_ID>","waitMillis":10000}
}}
{"name":"dfc_search","arguments":{
"action":"request","data":{"sessionId":"<SEARCH_SESSION_ID>",
"message":{"type":"assist","datas":{}}}
}}
{"name":"dfc_search","arguments":{
"action":"request","data":{"sessionId":"<SEARCH_SESSION_ID>",
"message":{"type":"search","datas":{"search":"<QUERY_USING_ACTUAL_COLUMNS>","ambiguities":[]}}}
}}- Gebruik model_create met 1 tot 100 echte tabel-ID's waarop u rechten heeft, of model_read om een bestaande sourceToken van uzelf te lezen.
- open geeft alleen initializationSent terug; poll eerst, lees de oorspronkelijke init-businessrespons en bevestig het slagen.
- Lees assist en suggesties en verstuur vervolgens een ondersteund origineel message. In query datas wordt isNl door de wrapper vastgezet op false.
- Lees voortdurend frames en onderscheid suggesties, parsing, ontvangst en uiteindelijk businessresultaat.
- Beëindig met close; gebruik bij annulering cancel en controleer aan de hand van de werkelijke taakstatus of de taak is beëindigd.
| action | data | Betekenis |
|---|---|---|
| capabilities | Weglaten of leeg object | De actie, het commando TTL en de transportinstructies lezen |
| model_create | tableIds-array | Maak een geautoriseerd model voor de huidige gebruiker |
| model_read | sourceToken | Model lezen; kolommen zonder rechten en gevoelige bronconfiguraties worden gefilterd |
| open | sourceToken met optionele language | Stel een natieve sessie in en verstuur init |
| request | sessionId en message | Origineel type/datas-protocolbericht versturen |
| poll | sessionId met waitMillis van 0 tot 30000 | Haal de huidige bufferframes op en wacht eventueel begrensd |
| cancel close | sessionId | Sluit deze natieve sessie; u kunt geen BI-eindtoestand claimen |
Ondersteunde oorspronkelijke commando's
search associateSearch guide assist exportContext reInit
putFormula modifyFormula deleteFormula fnamecheck
disambiguite reDisambiguite clearDisambiguiteHoofdlettergebruik van commando's en de datas-structuur volgen de huidige capabilities en het oorspronkelijke sessieprotocol. Voeg niet-bestaande acties niet toe aan request; bijvoorbeeld de spelling van disambiguite moet conform het feitelijke protocol behouden blijven. Een bericht is maximaal 256 Ki tekens.
Sessie en volledigheid
De sessie TTL bedraagt 10 minuten en blijft alleen bestaan tijdens de levensduur van het huidige proces; het is geen duurzaam herstelbare taak. De buffer bevat maximaal 256 frames en is gebonden aan een geheugenlimiet; als bufferOverflow=true, mag u opgehaalde frames niet als volledig resultaat beschouwen. Poll na een transportfout eerst de oorspronkelijke sessie en stuur een mogelijk al uitgevoerde query niet blindelings opnieuw.
De huidige wrapper biedt geen antwoord- of pinboard-opslag, geen lees-/schrijftoegang tot geschiedenis en geen herstel van willekeurige context. Het bestaan van exportContext betekent niet dat u willekeurige context zelf kunt herstellen. Gebruik voor het opslaan van resultaten de daadwerkelijk beschikbare oorspronkelijke resourcecapaciteiten van de instantie en verzin geen action.
Taal- en regioconventies
Behoud de grenzen tussen UI-locale, querywoordenboek, antwoordtaal en oorspronkelijke veldnamen.
De prioriteit is: expliciet aangevraagde taal, taal van het applicatiesysteem, de locale van het daadwerkelijk uitvoerende knooppunt. Standaardwaarden, null, lege tekenreeksen en witruimte vallen niet automatisch terug op het Chinees. De 区域-waarden in languageRegistry moeten exact blijven; vouw en-GB, fr-CA, pt-BR, es-US of ar-AE niet zomaar samen tot een andere regio.
| Taal of regio | Query-locale | Toelichting |
|---|---|---|
| Vereenvoudigd Chinees, Traditioneel Chinees | zh-CN zh-Hant | Oorspronkelijke Chinese regels en traditionele catalogus verschillen |
| Amerikaans, Brits, Australisch en Canadees Engels | en-US en-GB en-AU en-CA | UI-/trefwoordpakket kan gedeeld worden, regiometagegevens blijven behouden |
| Duits, Italiaans, Russisch | de-DE it-IT ru-RU | Gebruik conform de huidige sessiesuggesties |
| Spaans en Latijns-Amerikaans Spaans | es-ES es-US | Het productregio-ID is es-US |
| Frans en Canadees Frans | fr-FR fr-CA | Regio-ID's worden niet samengevoegd |
| Portugees en Braziliaans Portugees | pt-PT pt-BR | Catalogus- en regioconventies worden apart bewaard |
| Nederlands, Deens, Noors, Fins en Zweeds | nl-NL da-DK nb-NO fi-FI sv-SE | Noors is Bokmål |
| Japans, Koreaans | ja-JP ko-KR | Pas geen eigen woordsplitsing met Engelse spatiëringsregels toe |
| Saoedi-Arabisch en Emiraats Arabisch | ar-SA ar-AE | Interfacebeschrijvingen ondersteunen RTL; protocol-identificatoren worden niet gespiegeld |
De trefwoordcatalogus gebruiken
{"name":"dfc_manual","arguments":{
"action":"keywords","locale":"de-DE","names":["<ACTUAL_KEYWORD_ID>"]
}}De statische trefwoordcatalogus van dfc_manual bevat alleen expliciet vermelde locales; bij weglating geldt de Engelse referentie. Dit is een referentiestandaard, geen regel voor het parseren van querytalen. Wanneer voor een regiovariant geen statische catalogus beschikbaar is, haalt u de werkelijke suggesties op via de assist van de huidige sessie; verzin geen aliassen of terugvalresultaten. names bevat per aanroep maximaal 32 items.
Wat niet wordt vertaald
- Tabellen, kolommen, enumeratiewaarden, klantnamen, formule-namen en andere echte modeltekenreeksen.
- Gereedschapsnamen, action, scope, Schema-velden, foutcodes en statuswaarden.
- Resource-ID's, hashes, opaque locators en door de server uitgegeven referenties.
Een Duitse vraag kan bijvoorbeeld query's uitvoeren op de in het Chinees weergegeven kolom '销售金额'. Dit omzetten naar een Duitse kolomnaam levert een andere identificator op, geen UI-vertaling. Initialiseer de sessie na een taalwijziging opnieuw of werk deze bij conform het oorspronkelijke protocol en haal suggesties en disambiguatiekandidaten opnieuw op.
Gefuseerde analyse en interactieve resultaten
Behoud in analysegereedschappen met open voorwaarden de autorisatie-, versie-, branch- en evidencestatus.
dfc_analysis_* wordt aangestuurd door datafocus.mcp.analysis.tools.enabled. Het gestructureerde deel loopt verder via de autoritatieve Search-query's en de huidige rijstrategie; voor het documentdeel wordt opnieuw de volledige brontekst onder de huidige ACL opgehaald. Ze zijn geen open SQL- of injectie-ingang voor willekeurige instructies of filters.
| Gereedschap | Doel | Noodzakelijke coördinaten |
|---|---|---|
| dfc_analysis_ask | Stel een analysevraag in natuurlijke taal | ontologyId question, optioneel language sessionId |
| dfc_analysis_result_get | Eerder geretourneerd resultaat lezen | ontologyId sessionId resultId |
| dfc_analysis_refine | Opvolgen of wijzigen op basis van het meest recente volledige resultaat | Oorspronkelijk resultaat expectedRevision en stabiele idempotentie-sleutel |
| dfc_analysis_page | Eén pagina van de serververtakking ophalen | Oorspronkelijke vertakking en resultatensversie pageNo pageSize |
| dfc_analysis_cancel | Resultaten annuleren die nog werken | Oorspronkelijke sessie en resultaat |
| dfc_analysis_close | Sessies in niet-werkende status vrijgeven | Oorspronkelijke sessie |
Analyse starten
{"name":"dfc_analysis_ask","arguments":{
"ontologyId":"<ONTOLOGY_ID>",
"question":"按区域分析已完成订单销售金额,并引用退货统计口径",
"language":"zh-CN"
}}- De geretourneerde sessionId, resultId, status en revision lezen; lees indien nodig het oorspronkelijke resultaat verder.
- Controleer de status, volledigheid, rijstrategie en bronnen van elke gestructureerde vertakking afzonderlijk; de voltooiing van één vertakking staat niet gelijk aan de volledigheid van de gehele analyse.
- Controleer documentbewijs, het feitenregister, citatiegeschiktheid en beperkingen. Door het model gegenereerde verhalen kunnen de bewijsgeschiktheid niet zelfstandig verhogen.
- Stel bij vervolgvragen een vervolgvraag op basis van het meest recente volledige resultaat en geef expectedRevision mee; hergebruik bij het opnieuw proberen van dezelfde wijziging dezelfde idempotentie-sleutel.
- Bevestig vóór het sluiten dat de sessie niet meer werkt; annuleren en sluiten zijn verschillende acties.
Gecontroleerde filtering en paginering
filter_patch gebruikt de door de server gegeven branchId, fieldRef, valueRef en toegestane operatoren; huidige getypeerde filters ondersteunen alleen EQ. Het is verboden om ondoorzichtige verwijzingen te vervangen door de ruwe SQL, tableId, columnId of een zelfgemaakte filterboom aan de clientzijde. Paginering pageNo begint bij 1, maximaal 10000; pageSize maximaal 100.
Mogelijkhedeshints en gedrag
Tool-annotations zijn hints voor de client, geen beveiligingsautorisaties. Sommige algemene sjablonen gebruiken readOnlyHint, wat geen vervanging is voor de beoordeling van de daadwerkelijke actie; annuleren, sluiten en het maken van een rapport wijzigen de betreffende werkstatus. Handel altijd volgens de toolssemantiek, gebruikersdoelen en serverrechten.
Duurzame visualisatierapporten en MCP Apps
Maak herstelbare rapporten en lees de resultaten en interactieve interface ervan volgens de huidige rechten.
dfc_report_* wordt beheerd door datafocus.mcp.analysis.report-tools.enabled en vereist metadata- en table query-scope. Het verschilt van een in-process Search-sessie; rapporten gebruiken persistente reportId; persistentie betekent niet dat rechten niet meer worden gecontroleerd.
{"name":"dfc_report_create","arguments":{
"ontologyId":"<ONTOLOGY_ID>","goal":"比较区域与类别销售表现并核对口径",
"title":"零售经营分析","language":"zh-CN",
"idempotencyKey":"retail-report-20261019-01"
}}
{"name":"dfc_report_status","arguments":{
"ontologyId":"<ONTOLOGY_ID>","reportId":"<REPORT_ID>"
}}Workflow
- Gebruik bij het maken een stabiele idempotencyKey van 8 tot 128 ondersteunde tekens.
- Sla reportId op, poll de status en controleer de werkelijke status zoals voltooid, mislukt, gedeeltelijk voltooid of geannuleerd.
- Controleer bij het lezen van resultaten de gestructureerde vertakkingen, visualisaties, feitenbronnen, documentcitaten en volledigheid.
- Gebruik de oorspronkelijke reportId om een onvoltooid rapport te annuleren; maak geen ander rapport aan als vervanging voor het annuleren.
- Lees na een netwerk-timeout eerst de status van het oorspronkelijke rapport; een herhaling met de oorspronkelijke idempotentie-sleutel moet dezelfde bedrijfsintentie behouden.
MCP Apps
Clients met UI-uitbreidingen lezen rapportpagina's via tool _meta en daadwerkelijke resourcedetectie. De persistente rapportpagina behorend bij r56 is ui://datafocus/analysis-report/v16/index.html; voor interactieve analyse worden de bijbehorende serverresourceverwijzingen gebruikt; clients mogen geen hardcode gebruiken ter vervanging van de toolretourwaarden. Zonder UI-uitbreiding kunnen gestructureerde resultaten nog steeds worden gelezen.
Bronbinding
Bij het lezen van rapporten worden Grant, ontologie, de binding van de aanvraag-Origin en de huidige tabelrechten opnieuw gecontroleerd. Voor browser-integratie tussen verschillende origins moet de goedgekeurde werkelijke origin worden gebruikt; clients omzeilen de binding niet via een vervalste Origin. De oude reportId is geen permanent openbare link en geen cross-user toegangsreferentie.
Artefactontwerp, voorbeeldweergave, plan en toepassing
Dien gegenereerde inhoud in bij de oorspronkelijke server voor normalisatie, validatie en goedkeuring; laat het model niet rechtstreeks productieresources wijzigen.
Artefacttools vereisen een ingeschakelde authoring-functie, een daadwerkelijk artifact type, de betreffende scope en schrijfrechten van de oorspronkelijke beheerder. Standaard zijn de typen geconfigureerd als CONTROL_PANEL_SPEC en VIEW_SPEC; andere formulieren, HTTP-bronnen of scripttypen vallen onder afzonderlijke configuratie. Flash heeft geen AutoML, dus de betreffende typen worden niet als beschikbare artefacten in deze versie vermeld.
- dfc_authoring_capabilities leest de contracten en acties die beschikbaar zijn onder de huidige Grant.
- dfc_artifact_context haalt begrensde context, contractVersion, contextHash, baseArtifactHash en baseArtifactVersion op.
- Genereer kandidaten aan de clientzijde op basis van de echte contracten; voer er geen code in uit.
- dfc_artifact_submit dient de oorspronkelijke context en kandidaat in, houdt de instruction identiek en gebruikt een stabiele clientRequestId.
- Lees proposalId, candidateHash, de checksum en de voorbeeldweergave; reviseer de kandidaat bij werkelijke fouten en vervals geen goedgekeurde status van de server.
- Gebruik bij een nieuwe voorbeeldweergave dfc_artifact_preview en dezelfde kandidaat-hash.
- dfc_artifact_plan maakt een onveranderlijk plan met de echte kandidaat, doelversie en idempotentie-sleutel.
- Verwerk goedkeuringen volgens de oorspronkelijke interactieve goedkeuring of een reeds geautoriseerd beleid, en voer daarna dfc_artifact_apply uit; alleen een APPLIED-ontvangstbevestiging vertegenwoordigt een werkelijke toepassing.
Minimale contextaanvraag
{"name":"dfc_artifact_context","arguments":{
"artifactType":"CONTROL_PANEL_SPEC",
"ontologyId":"<ONTOLOGY_ID>",
"instruction":"为当前授权销售指标建立区域比较面板"
}}VIEW_SPEC gebruikt de huidige geautoriseerde projectId; gebruik bij het bewerken van een bestaand artefact de werkelijke artifactId. Geef velden zoals variables, previewInput en viewport aan volgens het geretourneerde contract en verzin geen interne kandidaatstructuur.
Gelijktijdigheid en herhaling
Het plan bindt doelversie, kandidaat-hash en idempotentie-sleutel. Na een wijziging van het doel kan het oude plan niet meer worden toegepast; lees de context opnieuw en behandel de werkelijke conflicten. Een transport-timeout bewijst geen mislukking; zoek eerst met dfc_artifact_status de oorspronkelijke proposalId of planId op. READY is niet APPLIED.
Goedkeuring en automatisch beleid
Algemene artefactplannen vereisen de oorspronkelijke menselijke goedkeuring. Plannen die voldoen aan het automatische publicatiebeleid van de ontologie worden volgens approvalMode verwerkt, zonder dat de gebruiker nog een door de agent verzonnen goedkeuring hoeft te ondertekenen. approvalToken is door de server ondertekend materiaal en kan niet door de Agent worden vervangen door een willekeurige tekenreeks; de werkelijke inputSchema en het planontvangstbevestiging bepalen de verplichte velden.
Ontologie-kandidaatcreatie en publicatiecontract
Gebruik versie-onafhankelijke ontologiedeclaraties en publicatieconfiguratie; pas het contract voor gewone weergave-artefacten niet toe op modelpublicatie.
Kandidaat maken
De ontologiecontainer moet al bestaan en binnen de Grant vallen. Gebruik dfc_ontology_table_schema om de huidige gestructureerde bronvelden en de v4 Binding-vingerafdruk te controleren; velden mogen alleen sourceField bevatten voor automatische typedetectie. Een expliciete DECIMAL-declaratie vereist de huidige precisie en decimalen; andere typen bevatten deze twee velden niet.
{"name":"dfc_ontology_table_schema","arguments":{
"ontologyId":"<ONTOLOGY_ID>","sourceAssetRef":"table:<ACTUAL_TABLE_ID>",
"fields":[{"sourceField":"区域"},{"sourceField":"销售金额"}]
}}Kandidaat- en publicatieconfiguratie
| Contract | Doel | Belangrijke grenzen |
|---|---|---|
| ontology-workspace-create-mcp-submit-v1 | Kandidaat maken met lokale declaratie | Echte geautoriseerde bronnen, servercompilatie; voltooiingsbewijzen worden niet geaccepteerd |
| ontology-workspace-create-mcp-submit-v2 | Mix van lokaal en exact gepubliceerde verwijzingen | Geef de exacte releaseSelections en afhankelijkheden van de afsluiting op |
| ontology-publication-mcp-submit-v1 naar v3 | Bestaande kandidaat binden aan een publicatieplanaanvraag | Expliciete coördinaten; doel, bron, goedkeuring en validatie worden door de server hersteld |
| ontology-publication-mcp-submit-v4 naar v6 | Afzonderlijk ingeschakelde configuratie met betrekking tot automatische publicatie | Alleen gebruiken wanneer capabilities en het werkelijke schema zijn gedeclareerd |
| ontology-initial-activation-retirement-submit-v1 | Gecontroleerde initiële activering en buitendienststelling | Afzonderlijk plan, nieuwe menselijke goedkeuring en exacte scope |
Publicatievolgorde
- Haal de huidige kandidaat workspaceId, workspaceRevision, candidateHash en de werkelijke bronnen op.
- Kies de contractversie op basis van de servermogelijkheden; dien coördinaten zoals releases en selection in, zonder velden die zichzelf 'goedgekeurd' of 'geslaagd' noemen.
- Bewaar de door submit geretourneerde proposalId en de oorspronkelijke idempotencyKey. submit en MODEL_PLAN zijn verschillende fasen van dezelfde aanvraag.
- Roep dfc_artifact_plan aan met de oorspronkelijke kandidaat, doelversie en dezelfde idempotentie-sleutel.
- PLANNING_INCOMPLETE betekent alleen dat er nog geen geldig plan is gevormd; VALIDATION_UNSATISFIED betekent dat er nog lacunes in de huidige validatie zijn; handel volgens nextAction.
- Ga na een geslaagd plan verder op basis van HUMAN_REQUIRED of POLICY_AUTO, met de oorspronkelijke goedkeuring en publicatiemogelijkheden.
- Bevestig het resultaat met de APPLIED-ontvangstbevestiging en het daaropvolgende echte gepubliceerde model dat kan worden gelezen en geautoriseerd bevraagd.
Time-outs en herstel
Lees na een PLAN-time-out de oorspronkelijke proposalId. MODEL_PLAN_SUBMITTED is een onvoltooide aanvraag; MODEL_PLAN_COMPLETED betekent dat de oorspronkelijke ontvangstbevestiging moet worden hersteld met de oorspronkelijke coördinaten en sleutel, niet dat de client een nieuwe aanvraag moet maken. Terminale validatielacunes kunnen niet worden omgezet in een geslaagde publicatie door van sleutel te wisselen of opnieuw in te dienen.
Menselijke bedrijfsrechten
De door de Agent verstrekte instruction en declaraties zijn Agent-invoer, geen ondertekening van menselijk beleid. MODEL_AUTHOR, MODEL_PUBLISH, delegatie van automatische publicatie, zakelijke bevestiging, vertrouwen in publieke sleutels, budget en bron-ACL blijven door de oorspronkelijke mechanismen bepaald. Deze feiten mogen niet worden vervangen door clientvelden.
Gepubliceerde modellen, kandidaatquery's en referentieafsluiting
Gebruik gepubliceerde bedrijfskennis op exacte versie en behoud de tijdelijkheid van niet-gepubliceerde kandidaten.
published_model, published_query en candidate_query van dfc_ontology_graph zijn voorwaardelijk open gestructureerde configuraties, geen synoniemen van een gewone search/neighbors. Ze worden geautoriseerd volgens table query en de nodige leesrechten voor modellering; zichtbaarheid in de grafiek kan tabelrechten niet vervangen.
Gepubliceerd model lezen
- Wanneer de action-enum van de tool daadwerkelijk published_model bevat, dient u een echte committed releaseId in.
- v1 retourneert geautoriseerde querysjablonen; v2 voegt exacte PERSISTED-verwijzingen en releaseSelections toe; v3 voegt afhankelijkheidsverwijzingen, exacte domainRef en compacte bindingssjablonen toe.
- Kies objecten, attributen, Binding, scope en versie uit de werkelijke retourwaarden; genereer geen RIDs en gebruik geen latest.
- Dien vaste getypeerde query's in voor published_query; resultaten moeten nog steeds door de huidige bron- en veldautorisatie gaan.
Kandidaatquery
candidate_query gebruikt de werkelijke workspaceId, revision, candidateHash en kandidaatdeclaraties. Bij het mixen van gepubliceerde verwijzingen gebruikt u de bijbehorende v2 getypeerde LOCAL/PERSISTED-coördinaten en exacte selecties. Kandidaatresultaten zijn altijd ongepubliceerd en tijdelijk en mogen niet worden beschouwd als door de onderneming bevestigde kennis.
Gedeeltelijk onderhoud en afsluiting
Selecteer alleen de transitieve afhankelijkheden die nodig zijn voor de kandidaatwortel en zorg ervoor dat elke gepubliceerde verwijzing een exacte releaseSelections heeft. Het kopiëren van de publicatietekst, het indienen van slechts een reeks ID's of het uitbreiden naar alle historische resources kunnen de huidige afhankelijkheids- en broncontroles niet vervangen.
De query van deze acties is een geversioneerd getypeerd object; SQL, fysieke tabel-ID's of brontabelnamen worden niet geaccepteerd als vervanging van de bedrijfsverwijzingen. Metadata-sjablonen en grafiekresultaten hebben op zichzelf geen feitencitatiegeschiktheid.
Ontologie-agenttaken delegeren
Werk hervatten met persistente taken en de oorspronkelijke Grant; behandel Agent-instructies niet als menselijke goedkeuring.
dfc_ontology_agent wordt alleen weergegeven wanneer de werkelijke Pi Runtime en de bijbehorende rechten beschikbaar zijn. QUERY gebruikt leesmogelijkheden; AUTHORING vereist bovendien een modelling-rol en de bijbehorende authoring-scope. Het opent geen andere onbeperkte uitvoeringsengine.
{"name":"dfc_ontology_agent","arguments":{
"contractVersion":"ontology-agent-task-v1","action":"start",
"ontologyId":"<ONTOLOGY_ID>","mode":"QUERY",
"instruction":"列出当前可查询的表,并说明各表用途",
"idempotencyKey":"retail-discovery-01"
}}
{"name":"dfc_ontology_agent","arguments":{
"contractVersion":"ontology-agent-task-v1","action":"status",
"ontologyId":"<ONTOLOGY_ID>","runId":"<RUN_ID>"
}}Strikte parametersets
start gebruikt contractVersion, action, ontologyId, mode, instruction, idempotencyKey; status/cancel gebruikt contractVersion, action, ontologyId, runId. De server controleert de exacte veldenset per action. instruction is maximaal 16000 tekens; sleutels bestaan uit 1 tot 128 ondersteunde tekens en beginnen met een letter of cijfer.
Hervatten en annuleren
- Bewaar de oorspronkelijke runId, Grant, mode en idempotentie-sleutel.
- Dezelfde sleutel met dezelfde instruction hervat dezelfde run en dient geen andere taak opnieuw in; dezelfde sleutel met een andere instructie wordt geweigerd.
- status bevraagt de status van de oorspronkelijke taak. Ook na voltooiing moeten de tabelquery's, bewijzen of publicatiebevestigingen worden gecontroleerd.
- Annuleren gebruikt de oorspronkelijke runId; bevestig het resultaat met de werkelijke taakstatus.
Een voltooide run is geen bevestiging van modelpublicatie. Publicatietaken worden nog steeds bevestigd via de oorspronkelijke artefactstatus en broncontroles; QUERY omvat geen impliciete schrijf- of publicatierechten.
Bedrijfswerkruimte MCP
Bevraag records op basis van gepubliceerde bedrijfscontracten en voer commando's uit via de oorspronkelijke ActionPlan.
/mcp/business gebruikt een aparte protected resource en bedrijfssysteemselectie; de ontologie-Grant kan niet opnieuw worden gebruikt als vervanging van bedrijfsautorisatie. Bedrijfssystemen moeten gepubliceerd zijn, door de Agent oproepbaar, voldoen aan het oorspronkelijke beveiligingsbeleid en de huidige gebruiker moet een werkelijke runtime-rol en -mogelijkheden hebben.
| Scope | Gereedschap | Grenzen |
|---|---|---|
| business-system:discover | dfb_systems dfb_system_describe | Ontdek alleen de systemen die voor deze keer zijn geautoriseerd en momenteel kunnen worden aangeroepen |
| business-system:read | dfb_query dfb_record dfb_work_items dfb_action_status | Leesbare records van de huidige gebruiker en diens eigen plannen |
| business-system:plan | dfb_action_plan | Alleen onveranderlijke plannen maken, niet uitvoeren |
| business-system:execute | dfb_action_execute | Afzonderlijke expliciete autorisatie, uitvoeren volgens risico en goedkeuring |
- dfb_systems ontdekt geautoriseerde systemen.
- dfb_system_describe leest de huidige gepubliceerde contracten, releaseId en alle hashes, query's en commando's.
- dfb_query gebruikt het gepubliceerde queryKey en specificeert indien nodig objectKey, state, page en pageSize. Het is geen willekeurige SQL.
- dfb_record en dfb_work_items lezen de momenteel toegestane records en takenlijsten.
- Geef vóór de uitvoering met dfb_action_plan de werkelijke releaseId, releaseHash, canonicalIrHash, agentManifestHash, commandType, planIdempotencyKey en de contract-payload op.
- Controleer riskClass, requiresApproval en status; bewaar expectedRecordVersion als doelrecords betrokken zijn.
- dfb_action_execute voert alleen plannen uit die eigendom zijn van de huidige verbinding en gereed zijn; de door mensen vereiste goedkeuringstokens worden uitgegeven door DataFocus.
- Na mislukking of time-out herstelt dfb_action_status het oorspronkelijke plan; herhalingen behouden de oorspronkelijke idempotentiesemantiek.
Verbinding en versiebinding
Stabiele isolatie-ID van het plan gekoppeld aan de huidige Grant. Na vernieuwing van de Access Token kunnen plannen voor dezelfde verbinding nog steeds worden verwerkt; een andere OAuth-verbinding kan deze niet overnemen. Bij uitvoering worden opnieuw gecontroleerd: gepubliceerde versie, IR/manifest-hash, doelrecordversie, planvervaltijd, idempotentie en goedkeuring. Een OAuth allowlist omzeilt business governance niet.
Invoer van businesskennis en te bevestigen vragen
Registreer businessinvoer zodra de bijbehorende productieprocessor is geopend, en behoud de menselijke bevestigingsgrens.
De volgende vier tools worden door de openbare MCP-controller toegevoegd op basis van geïnstalleerde processors en de huidige scope-voorwaarden. Ze verschijnen niet permanent in de basis_catalogus. Het bestaan van een gedeclareerd Schema betekent niet dat exemplaren zijn voorzien van processors, budget of rechten; controleer eerst tools/list.
| Gereedschap | Doel | Niet-gegenereerde autorisaties of effecten |
|---|---|---|
| dfc_ontology_knowledge_input_propose | Originele businessinvoer registreren voor een bestaande workspace | Genereert geen bevestigingsvragen, keurt niets goed, publiceert niet |
| dfc_ontology_knowledge_input_preview | Tijdelijke preview van kwestieontwerpen vanuit de oorspronkelijke invoer | Wordt niet gepersisteerd, niet bevestigd, vormt geen productieontvangstbewijs |
| dfc_ontology_knowledge_question_submit | Authored maar nog niet bevestigde kwesties opslaan | Voegt antwoorden niet automatisch samen, verkrijgt geen verantwoordelijkheids- of publicatierechten |
| dfc_ontology_business_scope_initialize | Initialiseert expliciet een businesssysteem-consumentenscope | Publiceert niet, activeert niet, verleent geen brontoegang |
Invoer en preview
- Haal workspaceId, workspaceRevision, localRef en preparationDigest uit de daadwerkelijke voorbereidende werkzaamheden.
- propose registreert businessinvoer met het originele input-contract en een stabiele idempotencyKey; dezelfde sleutel kan alleen aan dezelfde invoer zijn gekoppeld.
- preview gebruikt de idempotentiesleutel en ontologyId van de oorspronkelijke invoer; het retourneert telkens de serverrevision en een venster van 60 seconden, het is geen idempotent productie-afrondingsontvangstbewijs.
- Wanneer kwesties moeten worden opgeslagen, gebruikt question_submit een nieuwe commandosleutel, de oorspronkelijke originalInputKey, expliciete questionRevision, validFrom, validUntil en expectedRevision; bij creatie is expectedRevision null.
Toegangspunt voor menselijke bevestiging
De knowledgeConfirmationPage die question_submit retourneert is slechts een relatieve verwijzing naar de oorspronkelijke inlogpagina met een vooraf ingevulde kwestie. Het bevat geen Bearer, opent niet automatisch de pagina en bevestigt geen kennis. QUESTION_STORED_UNCONFIRMED geeft expliciet aan dat er nog geen bevestiging heeft plaatsgevonden; schrijf in antwoorden niet 'kennis is gepubliceerd'.
Initialisatie van de consumentenscope
business scope initialize vereist zowel publicatierechten op de ontologie als maker- of SourceManager-beheerrechten op exact dat businesssysteem. Het gebruikt de echte coördinaten van domainRid, domainRevisionId en businessSystemId; de client kan niet willekeurige consumerScope- of voltooiingsbewijzen invullen. De geretourneerde INITIALIZED en COMPLETED blijven expliciet published=false en activationAuthorized=false.
Deze verzoeken ondergaan ook strikte JSON-, veldenset-, bytes- en dieptevalidatie. De invoerlimiet voor verzoeken is 1 MiB; sommige specifieke bewerkingen hebben kleinere limieten. Volledige invoer- en uitvoer-schema's worden geleverd bij de toolreferentie; de lakse parameterlogica van de algemene MCP-wrapper kan niet worden toegepast op deze strikte contracten.
Responsen, fouten en veilig opnieuw proberen
Leg fouten gelaagd uit en behoud taakcoördinaten en idempotentiesemantiek.
| Laag | Te controleren inhoud | Verwerkingsprincipe |
|---|---|---|
| Netwerk en HTTP | Verbindings-TLS 401 403 400 404 405 enz. | Behandel mislukte responsen niet als gewone zoekresultaten |
| JSON-RPC | error.code message data | Onderscheid protocol-, methode-, parameter- en autorisatieproblemen |
| MCP-tool | result.isError en structuredContent | HTTP 200 kan nog steeds mislukken |
| Businessresultaat | Echte status, volledigheid, faalreden nextAction | Ontvangen of gereed is niet gelijk aan voltooid |
| Feitelijke kwalificatie | executionReceipt citationEligible contentComplete | Inhoud zonder kwalificatie dient alleen voor lokalisatie of uitleg van hiaten |
Veelvoorkomende HTTP-situaties
- 401: ontbrekende of verlopen Bearer; vernieuw of autoriseer opnieuw volgens de huidige OAuth-flow.
- 403: Grant, rol, geselecteerde resources, bronrechten, Origin of configuratie voldoen niet; omzeil dit niet door herhaling.
- 400: bericht of versiecontract ongeldig, inclusief inconsistentie tussen moderne headers en metadata.
- 404: controleer het exacte servicepad, de protocolmethode en runtime-mogelijkheden; wissel niet willekeurig van ontologie-ID.
- 405: de GET en DELETE van de openbare /mcp zijn niet bedoeld als open; gebruik de juiste POST in plaats van een SSE-langverbinding op te zetten.
Schrijfbewerkingen met onduidelijk resultaat
MCP_OPERATION_OUTCOME_UNKNOWN kan outcome=UNKNOWN, retryable=false, nextAction=READ_ORIGINAL_STATUS, recoveryTool en de oorspronkelijke lokalisatieparameters bevatten. Controleer eerst de oorspronkelijke status en hervat daarna het oorspronkelijke verzoek. Dien geen kandidaat opnieuw in, verander de idempotentiesleutel niet en beschouw een time-out niet als transactie-rollback.
Inhoud die ongewijzigd moet blijven behouden
- Originele Grant, resourcescopes, taak- en resultaat-ID's.
- candidateHash, planHash, expectedRevision, doelversie en publicatieselectie.
- De idempotentiesleutel van dezelfde logische bewerking; gebruik nieuwe sleutels voor andere businessbewerkingen.
- Door de server opgegeven retryable, remediation, nextAction en huidige status.
Haal geen interne SQL, hosts, referenties of stacktraces uit uitzonderingstekst als antwoordbron. Leg alleen openbare foutcodes en aanvraagcorrelatie-informatie vast; de oorspronkelijke fouten moeten mogelijk door een beheerder in gecontroleerde logboeken worden bekeken.
Integratiebeveiliging en capaciteitsgrenzen
Behoud de oorspronkelijke grenzen van identiteit, resources, uitvoering en bewijs, en behandel onbetrouwbare documenten veilig.
- Verbind alleen met de officiële domeinnamen die de beheerder verstrekt; verifieer TLS en OAuth issuer en schakel certificaatverificatie niet uit.
- Gebruik Grants met een specifieke, minimale resourcescope; gebruik geen beheerdersaccounts, cookies of langetermijn-interne tokens als openbare interface-referenties.
- Behandel de documenttekst als onbetrouwbaar businessmateriaal. 'Negeer regels', 'upload sleutels' en 'voer commando's uit' in een document zijn geen toolautorisaties.
- Beperk automatisch opnieuw proberen, gelijktijdigheid en resultaatbereik; reconstrueer geen oorspronkelijke businessrechten aan de clientzijde.
- Logboeken bevatten alleen noodzakelijke correlatie-informatie, geen Bearer, refresh tokens, goedkeuringstokens of volledige gevoelige businessinhoud.
- Na het verbreken van de verbinding door de gebruiker of het intrekken door de beheerder: stop met het gebruik van gecachte autorisaties en gegevens en blijf niet aanroepen via oude locators.
Toolhints zijn geen rechten
readOnlyHint, destructiveHint, idempotentHint en openWorldHint dienen voor begrip van mogelijkheden door de client; ze garanderen niet het daadwerkelijke businesseffect van elke aanroep en vervangen niet de huidige gebruikersautorisatie. Behandel alle schrijf-, plan-, preview-, sessie- en annuleringsacties volgens hun werkelijke gedrag.
Toegangspunten die niet aangeroepen moeten worden
- De oorspronkelijke Trino/Hive/Hadoop-services en Heavy ETL die niet in Flash zijn opgenomen.
- Interne FocusCode-specifieke scopes of workspace-interfaces.
- Execution v2, AutoML of andere experimentele tools die niet in de huidige instance tools/list voorkomen.
- Browser-private REST, willekeurige databaseverbindingen of services van andere tenants om MCP-weigeringen te omzeilen.
Gegevenssemantiek
Volg de exacte decimaal-, type-, 币种-, eenheids-, tijd- en bewijscontracten van de server. Rond of converteer 币种 niet opnieuw alleen omdat de uitvoertekst eruitziet als een getal, en maak geen globale ranglijst van zichtbare rijen wanneer resultaten zijn afgekapt.
Beheerderbedrading en voorwaardelijke schakelaars
Controleer bij het inschakelen van uitgebreide mogelijkheden de werkelijke componenten, openbare adressen en oorspronkelijke rechtenconfiguratie.
| Configuratie | Doel | Publicatievereisten |
|---|---|---|
| datafocus.mcp.public-base-url | Officieel extern rootadres | OAuth-discovery, issuer, callbacks en reverse proxy consistent |
| datafocus.mcp.allowed-origins | Extra goedgekeurde browser-originen | Exact geconfigureerd, niet uitgebreid naar willekeurige originen |
| datafocus.mcp.oauth.route-proof-secret | Grafroutering bewijst serverspecifiek geheim | Apart opgeslagen, geen Bearer als sleutel |
| datafocus.mcp.analysis.tools.enabled | Interactieve analyse-tool | Bijbehorende data-, kennis- en rechtendiensten daadwerkelijk beschikbaar |
| datafocus.mcp.analysis.report-tools.enabled | Persistente rapportagetool | Bijbehorende opslag, worker en herstelketen beschikbaar |
| datafocus.mcp.analysis.apps.enabled | MCP Apps-weergave | Client declareert ondersteuning en controleert geretourneerde _meta |
| datafocus.mcp.authoring.enabled | Ontwerp- en modelleercontracten | Behoud oorspronkelijke beheerders- en resourcerechten |
| datafocus.mcp.authoring.apply-enabled | Artefact-toepassingsmogelijkheid | Onveranderlijk plan, oorspronkelijke goedkeuring en herevaluatie van huidige status |
| datafocus.mcp.ontology-published-query-enabled | Gepubliceerde modellen en query's | Daadwerkelijk ingediende versies en bronautorisatie |
| datafocus.mcp.ontology-candidate-query-enabled | Kandidaat-gestructureerde query's | Kandidaateigendom, exacte versie en leesrechten |
| datafocus.mcp.authoring.ontology-auto-publication-enabled | Gedelegeerde autorisaties voor automatische publicatie | Geldig oorspronkelijk beleid, vertrouwen in openbare sleutels, budget en publicatierechten |
Deze namen komen uit r56-configuratie en -implementatie; of ze kunnen worden ingeschakeld hangt af van de bijbehorende diensten en de oorspronkelijke go-live-gates. Alleen booleans wijzigen vult ontbrekende processors, databases, validatiebudgetten of beleid niet aan. De zichtbaarheid van kennisinvoer-uitbreidingen en Pi-taken wordt bepaald door de daadwerkelijk geïnstalleerde componenten.
Randproxy
Behoud Authorization, Content-Type, MCP-Protocol-Version, Mcp-Method, Mcp-Name en goedgekeurde Origin. Stel request body, time-outs en TLS in volgens de werkelijke servicevereisten; stuur de openbare /mcp niet door naar een beheerpoort of een andere 产品.
Go-live-controle
- De status van anonieme discovery en beveiligde aanroepen komt overeen met de verwachtingen.
- Gewone gebruikers ontdekken alleen hun geautoriseerde bereik; na intrekking worden vervolgvragen geweigerd.
- Search-native sessies, SQL, brontekst en optionele rapporten leveren elk echte resultaten op.
- Goedkeuring en idempotent herstel van schrijf- en publicatieacties behouden het oorspronkelijke gedrag.
- Logboeken en openbare documentatie bevatten geen privésleutels, tokens, cookies, wachtwoorden of interne klantgegevens.
Uitvoerbare client en aanroepvoorbeelden
Valideer berichten met de meegeleverde minimale client, zonder OAuth of de huidige autorisatie te omzeilen.
examples/flash_mcp.py is een minimale protocolclient die alleen afhankelijk is van de Python-standaardbibliotheek. Het logt niet in, verricht geen goedkeuringen namens iemand, roept niet automatisch onzichtbare tools aan, ondersteunt moderne en oude protocollen en beëindigt gelaagd volgens HTTP, JSON-RPC en toolfouten. Tokens worden via de procesomgeving ingevoerd en niet in scripts of documentatie geschreven.
export FLASH_BASE_URL='https://flash.example.com'
read -r -s -p 'Access token: ' FLASH_ACCESS_TOKEN
export FLASH_ACCESS_TOKEN
python3 examples/flash_mcp.py discover
python3 examples/flash_mcp.py tools
python3 examples/flash_mcp.py call dfc_ontologies --arguments '{"page":1,"pageSize":20}'
unset FLASH_ACCESS_TOKENLezen en query's
python3 examples/flash_mcp.py call dfc_ontology_resources \
--arguments-file examples/requests/ontology-resources.json
python3 examples/flash_mcp.py call dfc_table \
--arguments-file examples/requests/table-detail.json
python3 examples/flash_mcp.py call dfc_table \
--arguments-file examples/requests/top3-query.jsonVervang eerst de ONTOLOGY_ID-, TABLE_RESOURCE_ID- en andere placeholders in het verzoekbestand door de echte waarden die door de huidige autorisatie worden geretourneerd. De client weigert uitvoering wanneer placeholders worden aangetroffen. Het SQL-voorbeeld vereist dat de bijbehorende CSV is geïmporteerd met de oorspronkelijke kolomnamen; zonder het bijbehorende schema kan het niet rechtstreeks worden ingediend.
Andere scenario's
- Businessingang: gebruik --endpoint business om opnieuw een Grant te verkrijgen gericht op /mcp/business.
- Oude client: kies --protocol 2025-11-25, doe eerst initialize en roep daarna aan binnen hetzelfde protocol.
- Ingebouwde documentatie: gebruik resources of read-resource om de werkelijke URI te lezen.
- Offline zelftest: --self-test verifieert de constructie van moderne headers en metadata, vereist geen Token en vraagt geen productserver aan.
Grenzen van het voorbeeld
De client is het startpunt van de protocoltoegang en genereert automatisch geen modelleringskandidaten, slaat geen vraag-en-antwoord op en voert geen publicatie uit. Het toont de originele JSON zodat de bovenliggende Agent de bedrijfsstatus kan verifiëren; beloof de gebruiker geen query-, rapport- of publicatievoltooiing alleen op basis van de exitcode van het proces.
Ontologiechatinterface insluiten
De menselijke chatpagina in de front-end van het bedrijfssysteem insluiten, waarbij de login- en browserveiligheidsgrenzen behouden blijven.
<iframe
title="OT Flash ontology agent"
src="https://flash.example.com/10001/#/embed/ontology-agent/1001"
style="width:100%;height:760px;border:0"
referrerpolicy="strict-origin-when-cross-origin">
</iframe>10001 is een voorbeeld van een tenant-ID en 1001 een voorbeeld van een ontologie-ID; vervang deze bij gebruik door echte coördinaten waarop u rechten hebt. Eén ontologie kan worden opgegeven via path of een ondersteunde query; de all-modus biedt @ om de ontologieën te kiezen die toegankelijk zijn voor de huidige gebruiker. skillId geeft alleen door en beweert op basis daarvan niet dat skill-orkestratie uitvoerbaar is.
Authenticatie en domeinnaam
De ingesloten pagina is afhankelijk van een echte DataFocus-loginstatus en controleert /uc/status. Cross-site cookies, SSO, CSP frame-ancestors en gatewayconfiguratie beïnvloeden de insluiting. Het accepteert niet dat een MCP Bearer in URL wordt gestopt als loginvrije toegang; niet-geïmplementeerde outside-externe links mogen volgens het ontwerp niet zelf worden samengesteld.
Verschil tussen MCP en iframe
| Methode | Gebruiker | Identiteit en resultaat |
|---|---|---|
| Remote MCP | Integratie door externe Agent of service | OAuth Grant en gestructureerde toolontvangstbevestiging |
| Ontologiechat-iframe | Eindgebruiker (mens) | Bestaande loginstatus en chatinterface |
| MCP Apps | MCP-client met ondersteuning voor uitbreidingen | Beheerste bronnen en huidige toolresultaten, geen vervanging van openbare iframe-login |
Acceptatiechecklist voor integratie
Bewijs de volledige bedrijfsketen op een echte instantie, in plaats van alleen te bevestigen dat de interface 200 retourneert.
- Discovery: verkrijg de daadwerkelijk ondersteunde versies, de huidige toolcatalogus en ingebouwde bronnen.
- Autorisatie: gewone gebruikers zien alleen de goedgekeurde ontologieën en bedrijfssystemen; bewerkingen zonder scope worden geweigerd.
- Tabelstructuur: echte weergavenamen, kolommen, typen en rechten volledig.
- SQL: controle van eendimensionaal, multidimensionaal, JOIN, datum, TopN en afkapping in overeenstemming met de werkelijke bedrijfsdefinities.
- Kennis: locatie, volledige originele tekst en geschiktheid voor feitelijke verwijzing consistent; gemengde vragen hebben zowel gegevens- als documentonderbouwing.
- Search: model-, init-, advies-, resultaat-, afsluit- en bufferintegriteitscontroles geslaagd.
- Optionele analyse en rapportage: ware status van meerdere takken, paginering, machtigingswijzigingen en annulering behouden het oorspronkelijke gedrag.
- Optionele modellering: kandidaten, plannen, oorspronkelijke goedkeuring, daadwerkelijke toepassing en versiequery fase voor fase geverifieerd.
- Bedrijfsacties: publicatiehash, doelversie, goedkeuring, idempotentie en isolatie tussen Grants geverifieerd.
- Herstel: na een netwerk-timeout wordt de oorspronkelijke status hersteld; na een bronupdate vervalt de oude locatie en wordt een nieuwe query gebruikt.
Resultatenregistratie
Registreer de instantieversie, gebruikersrol, Grant-bereik, configuratieversie, echte bewerkingen en resultaten. De offline zelftest van de protocolclient, de offline verwachte waarden van het voorbeeld-CSV, de statische JSON Schema-validatie en de echte online functionele acceptatie worden afzonderlijk gemarkeerd. Extrapolleer het slagen van één fase niet naar het slagen van het hele product.
Standaardbronnen en onderhoud
Gebruik de volledige tool-Schema's die bij de handleiding zijn meegeleverd en houd ze gesynchroniseerd met de werkelijke discovery-resultaten van de instantie.
| Bronnen | Inhoud |
|---|---|
| reference/mcp-tool-catalog.json | 32 declaratieve input-Schema's aan ontologiezijde en 8 aan bedrijfszijde; sommige tools bevatten originele output-Schema's |
| reference/locales.json | 21 optionele items en 24 compatibele locales en UI-termen |
| reference/search-keywords.json | Statische trefwoordencatalogus voor 17 expliciete locales |
| reference/analysis-contract-manifest.json | Analyse-, tak-, feit- en ontvangstbevestigingsversiebeperkingen met betrekking tot rapporten |
| examples/ | Synthetische CSV definitiebeschrijving Top3 SQL verwachte resultaten en minimale protocolclient |
Ingebouwde uitlegbronnen
datafocus://manuals/etl-formulas/v1
datafocus://manuals/search-keyword-queries/v1
datafocus://manuals/etl-functions/v1
datafocus://manuals/search-keywords/v1resources/list en resources/read vereisen dat de huidige gebruiker ten minste één bijbehorende leesbevoegdheid heeft uit metadata, search operate of etl operate. ETL-documentatie is een statische, productoverschrijdende referentie; de uitvoerbare mogelijkheden van Flash blijven beperkt tot het door het expliciet gerapporteerde bereik.
Referentie voor externe protocollen
Voor de MCP-protocol- en autorisatieachtergrond raadpleegt u de officiële specificaties: https://modelcontextprotocol.io/specification/2026-07-28/basic en https://modelcontextprotocol.io/specification/2025-11-25/basic/authorization. De eindpunten, tools en voorwaardelijke gedragingen van dit product zijn gebaseerd op de r56-implementatie en de huidige discovery-resultaten van de instantie; algemene protocolondersteuning mag niet worden gelijkgesteld met het leveren van alle optionele functies door de server.
Upgrade en onderhoud
Ontdek tools en versies opnieuw bij een upgrade en vergelijk input-Schema's, outputcontracten en configuraties; oude Grants verkrijgen niet automatisch nieuwe scopes. Houd referenties, caches en ontvangstbevestigingen gebonden aan de bronversie, verkryg opnieuw de context na bevestigde incompatibele wijzigingen en gebruik oude locaties niet geforceerd voor nieuwe bedrijfsstatussen.
Toolparameterreferentie Basis en native Search
Volledige namen en invoervelden, gegroepeerd per tool naslaanbaar.
De volgende tabellen zijn een naslagwerk voor de invoervelden van de huidige r56-tools. Zie reference/mcp-tool-catalog.json voor volledige geneste typen, oneOf, voorwaardelijke verplichte velden, patroonbeperkingen en sommige output-Schema's; lees vóór het definitieve indienen altijd de tools/list van de huidige Grant. 'Optioneel' in de tabellen heft de interne validatie-eisen van acties niet op.
dfc_manual
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| names | array | Optioneel of voorwaardelijk verplicht | De expliciete namen die moeten worden opgezocht, maximaal 32 per keer. maxItems: 32 |
| action | string | Optioneel of voorwaardelijk verplicht | Naam van de bewerking. Gebruik volgens de huidige enumeratie en de bijbehorende parameters per actie. enum: list, read, keywords, functions, etl_requests |
| locale | string | Optioneel of voorwaardelijk verplicht | Expliciete statische naslagcatalogus-locale, niet de standaardtaal van de query. |
| uri | string | Optioneel of voorwaardelijk verplicht | URI van de door de huidige tool vermelde ingebouwde bronnen. enum: datafocus://manuals/etl-formulas/v1, datafocus://manuals/search-keyword-queries/v1, datafocus://manuals/etl-functions/v1, datafocus://manuals/search-keywords/v1 |
dfc_search
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| data | object | Optioneel of voorwaardelijk verplicht | Originele actiepayload; raadpleeg de tabellen voor capability discovery en actievelden. |
| action | string | Verplicht | Naam van de bewerking. Gebruik volgens de huidige enumeratie en de bijbehorende parameters per actie. enum: capabilities, model_create, model_read, open, request, poll, cancel, close |
dfc_etl
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| data | object | Optioneel of voorwaardelijk verplicht | Originele actiepayload; raadpleeg de tabellen voor capability discovery en actievelden. |
| action | string | Verplicht | Naam van de bewerking. Gebruik volgens de huidige enumeratie en de bijbehorende parameters per actie. enum: capabilities |
dfc_ontologies
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| pageSize | integer | Optioneel of voorwaardelijk verplicht | Aantal items per pagina; volgens het Schema-plafond. minimum: 1; maximum: 100 |
| page | integer | Optioneel of voorwaardelijk verplicht | Paginanummer, beginnend bij 1. minimum: 1 |
dfc_ontology_resources
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| resourceTypes | array | Optioneel of voorwaardelijk verplicht | Verzameling brontypen die moet worden geretourneerd. |
| ontologyId | string | Verplicht | Echte ontologie-ID binnen de huidige autorisatie, als tekenreeks behouden. |
| pageSize | integer | Optioneel of voorwaardelijk verplicht | Aantal items per pagina; volgens het Schema-plafond. minimum: 1; maximum: 100 |
| page | integer | Optioneel of voorwaardelijk verplicht | Paginanummer, beginnend bij 1. minimum: 1 |
Toolparameterreferentie Tabellen, grafiek en kennis
Volledige namen en invoervelden, gegroepeerd per tool naslaanbaar.
De volgende tabellen zijn een naslagwerk voor de invoervelden van de huidige r56-tools. Zie reference/mcp-tool-catalog.json voor volledige geneste typen, oneOf, voorwaardelijke verplichte velden, patroonbeperkingen en sommige output-Schema's; lees vóór het definitieve indienen altijd de tools/list van de huidige Grant. 'Optioneel' in de tabellen heft de interne validatie-eisen van acties niet op.
dfc_ontology_graph
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| relationTypes | array | Optioneel of voorwaardelijk verplicht | Filter op relatietype. |
| depth | integer | Optioneel of voorwaardelijk verplicht | Diepte van de burentraversatie. minimum: 1; maximum: 3 |
| sourceTypes | array | Optioneel of voorwaardelijk verplicht | Filter op brontype. |
| query | object | Optioneel of voorwaardelijk verplicht | Querytekst, of het exacte geversioneerde queryobject dat bij action hoort. |
| limit | integer | Optioneel of voorwaardelijk verplicht | Bovengrens van het aantal geretourneerde items. minimum: 1; maximum: 100 |
| action | string | Verplicht | Naam van de bewerking. Gebruik volgens de huidige enumeratie en de bijbehorende parameters per actie. enum: search, neighbors, published_model, published_query, candidate_query |
| ontologyId | string | Verplicht | Echte ontologie-ID binnen de huidige autorisatie, als tekenreeks behouden. |
| nodeKey | string | Optioneel of voorwaardelijk verplicht | Node-sleutel gekopieerd uit de werkelijke grafiekresultaten. |
| keyword | string | Optioneel of voorwaardelijk verplicht | Grafieklocatietrefwoord, geen trefwoord-vragen-syntaxis. |
| nodeTypes | array | Optioneel of voorwaardelijk verplicht | Filter op nodetype. |
dfc_ontology_query
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| routeLocators | array | Optioneel of voorwaardelijk verplicht | De getypeerde routeringslocatie die door de server is uitgegeven, volledig gekopieerd. maxItems: 20 |
| topK | integer | Optioneel of voorwaardelijk verplicht | Bovengrens van opgehaalde kandidaten; bewijst geen volledige dekking. minimum: 1; maximum: 20 |
| queryMode | string | Optioneel of voorwaardelijk verplicht | Kies de bewijszoekmodus volgens de tool-enumeratie. enum: vector, hybrid, graph |
| fanoutPlan | object | Optioneel of voorwaardelijk verplicht | Beperkt zoekplan voor takken, volgens het geneste Schema. |
| structuredPlan | object | Optioneel of voorwaardelijk verplicht | Servercontract-gebonden plan voor de volledige documenttabel, geen SQL. |
| knowledgeIds | array | Optioneel of voorwaardelijk verplicht | Kennisbank-ID uit de werkelijke knowledgeBindings. |
| query | string | Verplicht | Querytekst, of het exacte geversioneerde queryobject dat bij action hoort. |
| ontologyId | string | Verplicht | Echte ontologie-ID binnen de huidige autorisatie, als tekenreeks behouden. |
dfc_knowledge_search
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| topK | integer | Optioneel of voorwaardelijk verplicht | Bovengrens van opgehaalde kandidaten; bewijst geen volledige dekking. minimum: 1; maximum: 20 |
| minScore | number | Optioneel of voorwaardelijk verplicht | Minimale matchscore. minimum: 0; maximum: 1 |
| knowledgeIds | array | Optioneel of voorwaardelijk verplicht | Kennisbank-ID uit de werkelijke knowledgeBindings. |
| query | string | Verplicht | Querytekst, of het exacte geversioneerde queryobject dat bij action hoort. |
| ontologyId | string | Verplicht | Echte ontologie-ID binnen de huidige autorisatie, als tekenreeks behouden. |
| assetIds | array | Optioneel of voorwaardelijk verplicht | Momenteel toegestane documentasset-ID's. |
| retrievalStrategy | string | Optioneel of voorwaardelijk verplicht | Daadwerkelijk ondersteunde zoekstrategie. enum: auto, hybrid_stage2 |
dfc_knowledge_detail
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| qdrantId | string / integer | Optioneel of voorwaardelijk verplicht | Indexidentificatie geretourneerd door de werkelijke locatie. |
| pageNo | integer | Optioneel of voorwaardelijk verplicht | Werkelijke pagina of paginanummer. |
| evidenceId | string | Optioneel of voorwaardelijk verplicht | Bewijs-ID geretourneerd bij dezelfde kennislocatie. |
| action | string | Verplicht | Naam van de bewerking. Gebruik volgens de huidige enumeratie en de bijbehorende parameters per actie. enum: chunk, document, page_context |
| ontologyId | string | Verplicht | Echte ontologie-ID binnen de huidige autorisatie, als tekenreeks behouden. |
| documentId | string / integer | Optioneel of voorwaardelijk verplicht | Document-ID van dezelfde locatie. |
| radius | integer | Optioneel of voorwaardelijk verplicht | Bereik van aangrenzende pagina's. minimum: 0; maximum: 3 |
| chunkId | string | Optioneel of voorwaardelijk verplicht | Werkelijke chunk-ID van dezelfde locatie. |
dfc_table
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| maxRows | integer | Optioneel of voorwaardelijk verplicht | Bovengrens van het aantal geretourneerde rijen; geen client-side rangschikkingsbereik. minimum: 1; maximum: 200 |
| action | string | Verplicht | Naam van de bewerking. Gebruik volgens de huidige enumeratie en de bijbehorende parameters per actie. enum: detail, query |
| ontologyId | string | Verplicht | Echte ontologie-ID binnen de huidige autorisatie, als tekenreeks behouden. |
| id | string | Optioneel of voorwaardelijk verplicht | Echte tabelbron-ID, geen fysieke naam of weergavenaam. |
| sql | string | Optioneel of voorwaardelijk verplicht | Alleen-lezen Doris SQL binnen één ontologiebereik, met expliciete uitvoerkolommen. |
Toolparameterreferentie Analyse en rapportage
Volledige namen en invoervelden, gegroepeerd per tool naslaanbaar.
De volgende tabellen zijn een naslagwerk voor de invoervelden van de huidige r56-tools. Zie reference/mcp-tool-catalog.json voor volledige geneste typen, oneOf, voorwaardelijke verplichte velden, patroonbeperkingen en sommige output-Schema's; lees vóór het definitieve indienen altijd de tools/list van de huidige Grant. 'Optioneel' in de tabellen heft de interne validatie-eisen van acties niet op.
dfc_analysis_ask
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| question | string | Verplicht | Vraag in natuurlijke taal of compatibele vervolgvraag. |
| ontologyId | string | Verplicht | Echte ontologie-ID binnen de huidige autorisatie, als tekenreeks behouden. |
| language | string | Optioneel of voorwaardelijk verplicht | Expliciete antwoord- of query-locale; bij weglating volgens de regels van de betreffende tool. |
| sessionId | string | Optioneel of voorwaardelijk verplicht | Echte sessielocatie onder dezelfde Grant. |
dfc_analysis_refine
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| branchId | string | Optioneel of voorwaardelijk verplicht | Gestructureerde taklocatie uitgegeven door de server. |
| resultId | string | Verplicht | Locatie van de oorspronkelijk geretourneerde analyse-resultaten. |
| question | string | Optioneel of voorwaardelijk verplicht | Vraag in natuurlijke taal of compatibele vervolgvraag. |
| idempotencyKey | string | Verplicht | Idempotentiesleutel die stabiel wordt hergebruikt voor dezelfde logische bewerking. |
| change | object | Optioneel of voorwaardelijk verplicht | Wijziging in natuurlijke taal of getypeerde filter_patch. |
| ontologyId | string | Verplicht | Echte ontologie-ID binnen de huidige autorisatie, als tekenreeks behouden. |
| language | string | Optioneel of voorwaardelijk verplicht | Expliciete antwoord- of query-locale; bij weglating volgens de regels van de betreffende tool. |
| sessionId | string | Verplicht | Echte sessielocatie onder dezelfde Grant. |
| expectedRevision | integer | Verplicht | Versiepremise van de oorspronkelijke resultaten of bedrijfsheader; mag null zijn bij het maken van een vraag. minimum: 1 |
| visualId | string | Optioneel of voorwaardelijk verplicht | Aan de tak gebonden visualisatielocatie. |
dfc_analysis_page
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| branchId | string | Verplicht | Gestructureerde taklocatie uitgegeven door de server. |
| resultId | string | Verplicht | Locatie van de oorspronkelijk geretourneerde analyse-resultaten. |
| pageNo | integer | Verplicht | Werkelijke pagina of paginanummer. minimum: 1; maximum: 10000 |
| ontologyId | string | Verplicht | Echte ontologie-ID binnen de huidige autorisatie, als tekenreeks behouden. |
| pageSize | integer | Verplicht | Aantal items per pagina; volgens het Schema-plafond. minimum: 1; maximum: 100 |
| sessionId | string | Verplicht | Echte sessielocatie onder dezelfde Grant. |
| expectedRevision | integer | Verplicht | Versiepremise van de oorspronkelijke resultaten of bedrijfsheader; mag null zijn bij het maken van een vraag. minimum: 1 |
dfc_analysis_result_get
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| resultId | string | Verplicht | Locatie van de oorspronkelijk geretourneerde analyse-resultaten. |
| ontologyId | string | Verplicht | Echte ontologie-ID binnen de huidige autorisatie, als tekenreeks behouden. |
| sessionId | string | Verplicht | Echte sessielocatie onder dezelfde Grant. |
dfc_analysis_cancel
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| resultId | string | Verplicht | Locatie van de oorspronkelijk geretourneerde analyse-resultaten. |
| ontologyId | string | Verplicht | Echte ontologie-ID binnen de huidige autorisatie, als tekenreeks behouden. |
| sessionId | string | Verplicht | Echte sessielocatie onder dezelfde Grant. |
dfc_analysis_close
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| ontologyId | string | Verplicht | Echte ontologie-ID binnen de huidige autorisatie, als tekenreeks behouden. |
| sessionId | string | Verplicht | Echte sessielocatie onder dezelfde Grant. |
dfc_report_create
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| goal | string | Verplicht | Rapportanalyse-doel. |
| idempotencyKey | string | Verplicht | Idempotentiesleutel die stabiel wordt hergebruikt voor dezelfde logische bewerking. |
| ontologyId | string | Verplicht | Echte ontologie-ID binnen de huidige autorisatie, als tekenreeks behouden. |
| language | string | Optioneel of voorwaardelijk verplicht | Expliciete antwoord- of query-locale; bij weglating volgens de regels van de betreffende tool. |
| title | string | Optioneel of voorwaardelijk verplicht | Optionele rapporttitel. |
dfc_report_status
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| reportId | string | Verplicht | Persistente rapportlocatie van de huidige Grant. |
| ontologyId | string | Verplicht | Echte ontologie-ID binnen de huidige autorisatie, als tekenreeks behouden. |
dfc_report_cancel
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| reportId | string | Verplicht | Persistente rapportlocatie van de huidige Grant. |
| ontologyId | string | Verplicht | Echte ontologie-ID binnen de huidige autorisatie, als tekenreeks behouden. |
Toolparameterreferentie Modellering en originele taken
Volledige namen en invoervelden, gegroepeerd per tool naslaanbaar.
De volgende tabellen zijn een naslagwerk voor de invoervelden van de huidige r56-tools. Zie reference/mcp-tool-catalog.json voor volledige geneste typen, oneOf, voorwaardelijke verplichte velden, patroonbeperkingen en sommige output-Schema's; lees vóór het definitieve indienen altijd de tools/list van de huidige Grant. 'Optioneel' in de tabellen heft de interne validatie-eisen van acties niet op.
dfc_ontology_agent
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| mode | string | Optioneel of voorwaardelijk verplicht | QUERY of AUTHORING, mogelijkheden afzonderlijk geautoriseerd. enum: QUERY, AUTHORING |
| instruction | string | Optioneel of voorwaardelijk verplicht | Gebruikersvereistetekst; context en indiening blijven consistent. maxLength: 16000 |
| idempotencyKey | string | Optioneel of voorwaardelijk verplicht | Idempotentiesleutel die stabiel wordt hergebruikt voor dezelfde logische bewerking. maxLength: 128 |
| action | string | Verplicht | Naam van de bewerking. Gebruik volgens de huidige enumeratie en de bijbehorende parameters per actie. enum: start, status, cancel |
| ontologyId | string | Verplicht | Echte ontologie-ID binnen de huidige autorisatie, als tekenreeks behouden. |
| runId | string | Optioneel of voorwaardelijk verplicht | Originele taak-ID van dezelfde ontologie en Grant. |
| contractVersion | string | Verplicht | Gebruik de exacte contractversie die daadwerkelijk wordt ondersteund. enum: ontology-agent-task-v1 |
dfc_authoring_capabilities
Het input-rootobject van deze tool heeft geen velden; gebruik een leeg arguments-object.
dfc_artifact_context
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| artifactType | string | Verplicht | Werkelijk geopend artefact of ontologie-publicatietype. enum: CONTROL_PANEL_SPEC, VIEW_SPEC |
| scopeType | string | Optioneel of voorwaardelijk verplicht | Het bereiktype voor resources in het daadwerkelijke artefactcontract. |
| ontologyId | string | Optioneel of voorwaardelijk verplicht | Echte ontologie-ID binnen de huidige autorisatie, als tekenreeks behouden. |
| projectId | string | Optioneel of voorwaardelijk verplicht | De momenteel geautoriseerde project-ID. |
| artifactId | string | Optioneel of voorwaardelijk verplicht | De echte ID van het artefact dat wordt bewerkt. |
| instruction | string | Verplicht | De tekst van de gebruikersvraag; context en inzending blijven consistent. |
| variables | object | Optioneel of voorwaardelijk verplicht | Het variabelenobject zoals aangeleverd door het geretourneerde contract. |
| previewInput | object | Optioneel of voorwaardelijk verplicht | De begrensde preview-invoer conform het contract. |
| viewport | object | Optioneel of voorwaardelijk verplicht | De weergaveviewport zoals vereist door het oorspronkelijke contract. |
dfc_ontology_table_schema
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| ontologyId | string | Verplicht | Echte ontologie-ID binnen de huidige autorisatie, als tekenreeks behouden. |
| sourceAssetRef | string | Verplicht | De geregistreerde gestructureerde assetreferentie, bijvoorbeeld table:123. |
| fields | array | Verplicht | De velden van de huidige bron en optionele expliciete typeaanduidingen. minItems: 1; maxItems: 64 |
dfc_artifact_preview
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| proposalId | string | Verplicht | De oorspronkelijke kandidaat-ID waarmee de huidige Grant is aangemaakt. |
| candidateHash | string | Verplicht | De exacte hash van de oorspronkelijke kandidaat op de server. |
| previewInput | object | Verplicht | De begrensde preview-invoer conform het contract. |
dfc_artifact_status
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| proposalId | string | Optioneel of voorwaardelijk verplicht | De oorspronkelijke kandidaat-ID waarmee de huidige Grant is aangemaakt. |
| planId | string | Optioneel of voorwaardelijk verplicht | De onveranderlijke apply-plan-ID. |
dfc_artifact_plan
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| proposalId | string | Verplicht | De oorspronkelijke kandidaat-ID waarmee de huidige Grant is aangemaakt. |
| candidateHash | string | Verplicht | De exacte hash van de oorspronkelijke kandidaat op de server. |
| expectedTargetVersion | integer | Verplicht | De actuele vereiste van de echte doelversie. minimum: 0 |
| idempotencyKey | string | Verplicht | Idempotentiesleutel die stabiel wordt hergebruikt voor dezelfde logische bewerking. |
dfc_artifact_apply
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| planId | string | Verplicht | De onveranderlijke apply-plan-ID. |
| planHash | string | Verplicht | De hash die door het oorspronkelijke plan is geretourneerd. |
| approvalToken | string | Verplicht | De goedkeuringsmaterialen die door de oorspronkelijke server zijn uitgegeven; genereer deze niet zelf. |
| idempotencyKey | string | Verplicht | Idempotentiesleutel die stabiel wordt hergebruikt voor dezelfde logische bewerking. |
dfc_artifact_submit
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| Configuratie1 / artifactType | string | Verplicht | Werkelijk geopend artefact of ontologie-publicatietype. enum: CONTROL_PANEL_SPEC, VIEW_SPEC |
| Configuratie1 / scopeType | string | Optioneel of voorwaardelijk verplicht | Het bereiktype voor resources in het daadwerkelijke artefactcontract. |
| Configuratie1 / ontologyId | string | Optioneel of voorwaardelijk verplicht | Echte ontologie-ID binnen de huidige autorisatie, als tekenreeks behouden. |
| Configuratie1 / projectId | string | Optioneel of voorwaardelijk verplicht | De momenteel geautoriseerde project-ID. |
| Configuratie1 / artifactId | string | Optioneel of voorwaardelijk verplicht | De echte ID van het artefact dat wordt bewerkt. |
| Configuratie1 / instruction | string | Verplicht | De tekst van de gebruikersvraag; context en inzending blijven consistent. |
| Configuratie1 / variables | object | Optioneel of voorwaardelijk verplicht | Het variabelenobject zoals aangeleverd door het geretourneerde contract. |
| Configuratie1 / previewInput | object | Optioneel of voorwaardelijk verplicht | De begrensde preview-invoer conform het contract. |
| Configuratie1 / viewport | object | Optioneel of voorwaardelijk verplicht | De weergaveviewport zoals vereist door het oorspronkelijke contract. |
| Configuratie1 / contractVersion | string | Verplicht | Gebruik de exacte contractversie die daadwerkelijk wordt ondersteund. |
| Configuratie1 / contextHash | string | Verplicht | De volledige context-hash geretourneerd door context. |
| Configuratie1 / baseArtifactHash | string | Verplicht | De basis-artefacthash geretourneerd door context. |
| Configuratie1 / baseArtifactVersion | integer | Verplicht | De basisversie geretourneerd door context. minimum: 0 |
| Configuratie1 / candidate | object | Verplicht | Het kandidaatobject conform het huidige geretourneerde contract. |
| Configuratie1 / clientRequestId | string | Verplicht | De stabiele idempotentiesleutel van de client voor het huidige kandidaatverzoek. |
| Configuratie2 / artifactType | string | Verplicht | Het daadwerkelijk ingeschakelde artefact- of ontologie-publicatietype. enum: ONTOLOGY_RELEASE |
| Configuratie2 / contractVersion | string | Verplicht | Gebruik de exacte contractversie die daadwerkelijk wordt ondersteund. enum: ontology-publication-mcp-submit-v1, ontology-publication-mcp-submit-v2, ontology-publication-mcp-submit-v3, ontology-publication-mcp-submit-v4, ontology-publication-mcp-submit-v5, ontology-publication-mcp-submit-v6 |
| Configuratie2 / ontologyId | string | Verplicht | Echte ontologie-ID binnen de huidige autorisatie, als tekenreeks behouden. |
| Configuratie2 / candidateHash | string | Verplicht | De exacte hash van de oorspronkelijke kandidaat op de server. |
| Configuratie2 / workspaceId | string | Verplicht | De werkelijke kandidaat-werkruimtecoördinaten. |
| Configuratie2 / workspaceRevision | string | Verplicht | De exacte kandidaatversie; gebruik niet latest. |
| Configuratie2 / releases | object | Verplicht | De exacte versiekeuze conform het ontologie-publicatiecontract. |
| Configuratie2 / selection | object | Verplicht | Lever alleen expliciete zakelijke selectiecoördinaten aan; geen permissies of voltooiingsbewijzen. |
| Configuratie2 / idempotencyKey | string | Verplicht | Idempotentiesleutel die stabiel wordt hergebruikt voor dezelfde logische bewerking. |
| Configuratie3 / Configuratie1 / artifactType | string | Verplicht | Het daadwerkelijk ingeschakelde artefact- of ontologie-publicatietype. enum: ONTOLOGY_RELEASE |
| Configuratie3 / Configuratie1 / contractVersion | string | Verplicht | Gebruik de exacte contractversie die daadwerkelijk wordt ondersteund. enum: ontology-workspace-create-mcp-submit-v1 |
| Configuratie3 / Configuratie1 / ontologyId | string | Verplicht | Echte ontologie-ID binnen de huidige autorisatie, als tekenreeks behouden. |
| Configuratie3 / Configuratie1 / workspaceId | string | Verplicht | De werkelijke kandidaat-werkruimtecoördinaten. |
| Configuratie3 / Configuratie1 / resources | array | Verplicht | De door de server gecompileerde oorspronkelijke modeldeclaratie. minItems: 1 |
| Configuratie3 / Configuratie1 / idempotencyKey | string | Verplicht | Idempotentiesleutel die stabiel wordt hergebruikt voor dezelfde logische bewerking. |
| Configuratie3 / Configuratie2 / artifactType | string | Verplicht | Het daadwerkelijk ingeschakelde artefact- of ontologie-publicatietype. enum: ONTOLOGY_RELEASE |
| Configuratie3 / Configuratie2 / contractVersion | string | Verplicht | Gebruik de exacte contractversie die daadwerkelijk wordt ondersteund. enum: ontology-workspace-create-mcp-submit-v2 |
| Configuratie3 / Configuratie2 / ontologyId | string | Verplicht | Echte ontologie-ID binnen de huidige autorisatie, als tekenreeks behouden. |
| Configuratie3 / Configuratie2 / workspaceId | string | Verplicht | De werkelijke kandidaat-werkruimtecoördinaten. |
| Configuratie3 / Configuratie2 / resources | array | Verplicht | De door de server gecompileerde oorspronkelijke modeldeclaratie. minItems: 1 |
| Configuratie3 / Configuratie2 / idempotencyKey | string | Verplicht | Idempotentiesleutel die stabiel wordt hergebruikt voor dezelfde logische bewerking. |
| Configuratie3 / Configuratie2 / releaseSelections | object | Verplicht | De exacte releaseId van elke gepubliceerde referentie en de afhankelijkheidsafsluiting. |
| Configuratie4 / artifactType | string | Verplicht | Het daadwerkelijk ingeschakelde artefact- of ontologie-publicatietype. enum: ONTOLOGY_RELEASE |
| Configuratie4 / contractVersion | string | Verplicht | Gebruik de exacte contractversie die daadwerkelijk wordt ondersteund. enum: ontology-initial-activation-retirement-submit-v1 |
| Configuratie4 / ontologyId | string | Verplicht | Echte ontologie-ID binnen de huidige autorisatie, als tekenreeks behouden. |
| Configuratie4 / domainRid | string | Verplicht | Het echte zakelijke domein RID. |
| Configuratie4 / consumerScopes | array | Verplicht | Het exacte consumentenbereik dat door de server is toegestaan. minItems: 1; maxItems: 256 |
| Configuratie4 / idempotencyKey | string | Verplicht | Idempotentiesleutel die stabiel wordt hergebruikt voor dezelfde logische bewerking. |
Zie voor de toolparameters Kennisinvoer en bereik
Volledige namen en invoervelden, gegroepeerd per tool naslaanbaar.
De volgende tabellen zijn een naslagwerk voor de invoervelden van de huidige r56-tools. Zie reference/mcp-tool-catalog.json voor volledige geneste typen, oneOf, voorwaardelijke verplichte velden, patroonbeperkingen en sommige output-Schema's; lees vóór het definitieve indienen altijd de tools/list van de huidige Grant. 'Optioneel' in de tabellen heft de interne validatie-eisen van acties niet op.
dfc_ontology_knowledge_input_propose
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| request | object | Verplicht | De oorspronkelijke zakelijke invoeraanvraag; volgens het volledige geneste Schema. |
| idempotencyKey | string | Verplicht | De idempotentiesleutel die stabiel wordt hergebruikt voor dezelfde logische bewerking. minLength: 1; maxLength: 128 |
Deze tool heeft daarnaast een native outputSchema. Controleer de integriteit, status en expliciet op false ingestelde autorisatievelden van de output en verhoog de betekenis van voltooiing niet zelf.
dfc_ontology_knowledge_input_preview
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| idempotencyKey | string | Verplicht | De idempotentiesleutel die stabiel wordt hergebruikt voor dezelfde logische bewerking. minLength: 1; maxLength: 128 |
| ontologyId | string | Verplicht | Echte ontologie-ID binnen de huidige autorisatie, als tekenreeks behouden. |
Deze tool heeft daarnaast een native outputSchema. Controleer de integriteit, status en expliciet op false ingestelde autorisatievelden van de output en verhoog de betekenis van voltooiing niet zelf.
dfc_ontology_knowledge_question_submit
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| questionRevision | $ref | Verplicht | De exacte versie van het te bevestigen probleem. |
| idempotencyKey | $ref | Verplicht | Idempotentiesleutel die stabiel wordt hergebruikt voor dezelfde logische bewerking. |
| originalInputKey | $ref | Verplicht | De idempotentiesleutel die overeenkomt met de oorspronkelijke kennisinvoer. |
| ontologyId | string | Verplicht | Echte ontologie-ID binnen de huidige autorisatie, als tekenreeks behouden. |
| validUntil | $ref | Verplicht | Het einde van het geldigheidsvenster van het probleem, in UTC-tijd. |
| expectedRevision | oneOf | Verplicht | De versievereiste van het oorspronkelijke resultaat of de zakelijke header; mag null zijn bij het aanmaken van het probleem. |
| validFrom | $ref | Verplicht | Het begin van het geldigheidsvenster van het probleem, in UTC-tijd. |
Deze tool heeft daarnaast een native outputSchema. Controleer de integriteit, status en expliciet op false ingestelde autorisatievelden van de output en verhoog de betekenis van voltooiing niet zelf.
dfc_ontology_business_scope_initialize
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| domainRevisionId | string | Verplicht | De exacte zakelijke domeinversie. minLength: 1; maxLength: 128 |
| idempotencyKey | string | Verplicht | De idempotentiesleutel die stabiel wordt hergebruikt voor dezelfde logische bewerking. minLength: 1; maxLength: 128 |
| businessSystemId | string | Verplicht | De echte ID van het zakelijke systeem. minLength: 1 |
| ontologyId | string | Verplicht | De echte ontologie-ID binnen de huidige autorisatie, als tekenreeks behouden. minLength: 1 |
| domainRid | string | Verplicht | Het echte zakelijke domein RID. minLength: 1; maxLength: 128 |
Deze tool heeft daarnaast een native outputSchema. Controleer de integriteit, status en expliciet op false ingestelde autorisatievelden van de output en verhoog de betekenis van voltooiing niet zelf.
Zie voor de toolparameters Business Workspace
Volledige namen en invoervelden, gegroepeerd per tool naslaanbaar.
De volgende tabellen zijn een naslagwerk voor de invoervelden van de huidige r56-tools. Zie reference/mcp-tool-catalog.json voor volledige geneste typen, oneOf, voorwaardelijke verplichte velden, patroonbeperkingen en sommige output-Schema's; lees vóór het definitieve indienen altijd de tools/list van de huidige Grant. 'Optioneel' in de tabellen heft de interne validatie-eisen van acties niet op.
dfb_systems
Het input-rootobject van deze tool heeft geen velden; gebruik een leeg arguments-object.
dfb_system_describe
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| systemId | string / integer | Verplicht | De systeem-ID die door de huidige zakelijke Grant is toegestaan. |
dfb_query
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| systemId | string / integer | Verplicht | De systeem-ID die door de huidige zakelijke Grant is toegestaan. |
| queryKey | string | Verplicht | De gepubliceerde querysleutel geretourneerd door describe. |
| objectKey | string | Optioneel of voorwaardelijk verplicht | De gepubliceerde objectsleutel. |
| pageSize | integer | Optioneel of voorwaardelijk verplicht | Aantal items per pagina; volgens het Schema-plafond. minimum: 1; maximum: 100 |
| page | integer | Optioneel of voorwaardelijk verplicht | Paginanummer, beginnend bij 1. minimum: 1 |
| state | string | Optioneel of voorwaardelijk verplicht | De filter voor zakelijke status of serverstatus. |
dfb_record
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| recordId | string / integer | Verplicht | De ID van de momenteel leesbare zakelijke record. |
| systemId | string / integer | Verplicht | De systeem-ID die door de huidige zakelijke Grant is toegestaan. |
dfb_work_items
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| systemId | string / integer | Verplicht | De systeem-ID die door de huidige zakelijke Grant is toegestaan. |
dfb_action_plan
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| expectedRecordVersion | integer | Optioneel of voorwaardelijk verplicht | De huidige optimistische vergrendelingsversie van de doelrecord. minimum: 1 |
| systemId | string / integer | Verplicht | De systeem-ID die door de huidige zakelijke Grant is toegestaan. |
| commandType | string | Verplicht | Het opdrachttype uit het gepubliceerde contract. |
| canonicalIrHash | string | Verplicht | De hash van de momenteel gepubliceerde canonieke IR. |
| releaseId | string / integer | Verplicht | De daadwerkelijke versie-ID van het publicatiecontract. |
| payload | object | Verplicht | De payload conform het huidige opdrachtcontract in describe. |
| releaseHash | string | Verplicht | De daadwerkelijke hash van het publicatiecontract. |
| targetRecordId | string / integer | Optioneel of voorwaardelijk verplicht | De echte doelrecord waarop moet worden geopereerd. |
| agentManifestHash | string | Verplicht | De daadwerkelijke manifest-hash van de Agent-mogelijkheden. |
| planIdempotencyKey | string | Verplicht | De stabiele idempotentiesleutel van het zakelijke plan. |
dfb_action_status
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| actionPlanId | string / integer | Verplicht | De actieplan-ID die eigendom is van de huidige zakelijke Grant. |
dfb_action_execute
| Parameter | Type | Vereiste | Betekenis en bereik |
|---|---|---|---|
| approvalToken | string | Optioneel of voorwaardelijk verplicht | De goedkeuringsmaterialen die door de oorspronkelijke server zijn uitgegeven; genereer deze niet zelf. |
| actionPlanId | string / integer | Verplicht | De actieplan-ID die eigendom is van de huidige zakelijke Grant. |