Den MCP-Tool-Aufruf eines Agenten absichern
Fragen Sie das MCP-Gateway nach dem Intralock-Urteil zum Tool-Aufruf eines Agenten, lesen Sie die Begründung und listen Sie die Aufrufer auf, die es gesehen hat.
mcp.enforce
Fragen Sie das MCP-Gateway nach dem Intralock-Urteil zum Tool-Aufruf eines Agenten, lesen Sie die Begründung und listen Sie die Aufrufer auf, die es gesehen hat.
mcp.enforceLeiten Sie Agent-Aktionen, Inhalts-Hashes, API-Checks, DNS-Abfragen, Webhooks, LLM-Aufrufe und Git-Commits über Intramedial – für einen signierten Beleg, den jeder prüft, ohne uns zu vertrauen.
Ein Agent ruft Tools auf einem MCP-Server auf, und Sie wollen jeden Aufruf entschieden haben, bevor er das Tool erreicht. Das Gateway liefert das Urteil ohne Modell im Pfad.
Der Code liest den Schlüssel aus INTRAMEDIAL_KEY. Halten Sie ihn in Ihrer Shell oder Ihrem Secret Store, nie in einer Datei, die Sie committen. Aufrufe, die eine angemeldete Person brauchen, können keinen Schlüssel verwenden: Die Konsole führt sie aus.
Senden Sie die DID des Agenten und den Tool-Namen. Ein Name in Mutationsform wie fs.write wird als Write zugelassen, was sonst noch gesendet wird.
mcp.enforcemcp-enforce
curl -sS -X POST https://api.intramedial.com/api/v1/acp/mcp/enforce \
-H "Authorization: Bearer $INTRAMEDIAL_KEY" \
-H "Content-Type: application/json" \
-d '{
"actorDid": "did:web:acme.example:agent:support",
"tool": "fs.write"
}'const res = await fetch("https://api.intramedial.com/api/v1/acp/mcp/enforce", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.INTRAMEDIAL_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
actorDid: "did:web:acme.example:agent:support",
tool: "fs.write",
}),
});
console.log(res.status, await res.json());import os, requests
res = requests.post(
"https://api.intramedial.com/api/v1/acp/mcp/enforce",
headers={"Authorization": "Bearer " + os.environ["INTRAMEDIAL_KEY"]},
json={
"actorDid": "did:web:acme.example:agent:support",
"tool": "fs.write",
},
timeout=30,
)
print(res.status_code, res.json())allow und reason sind Intralocks Antwort. mode ist der gespeicherte Gateway-Modus.
{
"mode": "observe",
"shadow": false,
"event": { "actorDid": "did:web:acme.example:agent:support", "tool": "fs.write" },
"advise": null,
"allow": false,
"reason": "no_grant",
"action": "write",
"llm": false,
"protocolVersion": "2026-07-28"
}Jede Anfrage durch das Gateway hängt ein mcp.shadow-Ereignis an das Ledger an, das DID, Tool und Modus nennt. Diese Route liefert die neuesten 50. Sie sagt nicht, ob ein Aufrufer registriert ist; vergleichen Sie die Aufrufer daher mit Ihrer Identitätsliste, um die zu finden, die niemand eingetragen hat.
curl -sS https://api.intramedial.com/api/v1/acp/mcp/shadow \
-H "Authorization: Bearer $INTRAMEDIAL_KEY"const res = await fetch("https://api.intramedial.com/api/v1/acp/mcp/shadow", {
headers: { Authorization: `Bearer ${process.env.INTRAMEDIAL_KEY}`, },
});
console.log(res.status, await res.json());import os, requests
res = requests.get(
"https://api.intramedial.com/api/v1/acp/mcp/shadow",
headers={"Authorization": "Bearer " + os.environ["INTRAMEDIAL_KEY"]},
timeout=30,
)
print(res.status_code, res.json())Kopiert aus: /docs/mcp-enforce
instructionShaped ist eine Heuristik auf Text.Das Ledger ist Append-only und unter Merkle-Roots versiegelt. Die Zeit eines Eintrags ist Intramedials eigene Uhr, und ein signiertes Bundle lässt sich offline mit dem veröffentlichten Schlüssel prüfen.
Lesen Sie die Aufrufer, die das MCP-Gateway gesehen hat, und billigen Sie dann einen als Identität oder verfolgen Sie ihn weiter als Shadow.
mcp.shadowidentity.enrollFragen Sie die Ebene, ob ein Agent auf einer verbundenen SaaS-Quelle handeln darf, und lesen Sie das Urteil, bevor etwas gesendet wird.
saas.admitLassen Sie den Schreibzugriff eines Agenten auf ein Repository über Intralock zu und posten Sie das Urteil als Check-Run oder Status auf den Commit.
github.enforceEine kurze E-Mail, wenn wir neue Rezepte ergänzen. Sonst keine Mail, und Sie melden sich aus jeder Nachricht ab.
Kein Konto nötig: 35 Aufrufe in 7 Tagen auf den Attest-Routen, Belege als Testbelege markiert. Registrieren Sie sich, wenn Sie weitermachen wollen.