Serveur MCP

MCP Operation Risk

io.github.dnsreicht/mcp-operation-risk
Infrastructure MCP et agents Sécurité Public et accessible MCP 2025-11-25

Ce que fait ce MCP

Evaluates planned MCP tool calls and classifies them as allowed, denied, or requiring approval based on operation type, schemas, and arguments.

describe_operation_risk_service
Describe MCP Operation Risk
Check whether an intended MCP tool call is safe before execution. Using the source server identity, tool metadata, input schema, and planned arguments, return an operation-level ALLOW, DENY, or REQUIRE_APPROVAL decision. For supported consolidated tools, distinguish read, additive, mutating, and destructive operations, including supported create, update, and delete commands. Unknown, unsupported, or schema-changed calls require approval. Use when whole-tool permissions are too coarse; the evaluator never executes the source call.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'title': 'describe_operation_risk_serviceArguments', 'properties': {}}
Schéma de sortie
{'type': 'object', 'title': 'describe_operation_risk_serviceDictOutput', 'additionalProperties': True}
evaluate_operation_risk
Evaluate Operation Risk
Check whether an intended MCP tool call is safe before execution. Using the source server identity, tool metadata, input schema, and planned arguments, return an operation-level ALLOW, DENY, or REQUIRE_APPROVAL decision. For supported consolidated tools, distinguish read, additive, mutating, and destructive operations, including supported create, update, and delete commands. Unknown, unsupported, or schema-changed calls require approval. Use when whole-tool permissions are too coarse; the evaluator never executes the source call.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'title': 'NativeMcpEvaluationRequest', 'required': ['source', 'tool', 'arguments'], 'properties': {'tool': {'type': 'object', 'title': 'NativeToolRecord', 'required': ['name', 'description', 'inputSchema'], 'properties': {'name': {'type': 'string', 'title': 'Name', 'description': "Exact tool name from the MCP server's tools/list response."}, '_meta': {'anyOf': [{'type': 'object', 'additionalProperties': True}, {'type': 'null'}], 'title': 'Meta', 'default': None, 'description': 'Relevant tool metadata from tools/list, when present.'}, 'icons': {'anyOf': [{'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}, {'type': 'null'}], 'title': 'Icons', 'default': None, 'description': 'Tool icons from tools/list, when present.'}, 'title': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Title', 'default': None, 'description': 'Tool title from tools/list, when provided by the server.'}, 'execution': {'anyOf': [{'type': 'object', 'additionalProperties': True}, {'type': 'null'}], 'title': 'Execution', 'default': None, 'description': 'Tool execution metadata from tools/list, when present.'}, 'annotations': {'type': 'object', 'title': 'Annotations', 'description': 'Tool annotations from tools/list, such as read-only or destructive hints; use an empty object when absent.', 'additionalProperties': True}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Description', 'description': 'Tool description from tools/list, or null if the server omitted it.'}, 'inputSchema': {'type': 'object', 'title': 'Inputschema', 'description': 'Complete inputSchema from tools/list; used to validate the intended arguments and match a supported tool manifest.', 'additionalProperties': True}, 'outputSchema': {'anyOf': [{'type': 'object', 'additionalProperties': True}, {'type': 'null'}], 'title': 'Outputschema', 'default': None, 'description': 'Tool output schema from tools/list, when present.'}}, 'description': "The complete relevant Tool record returned by the source server's tools/list.", 'additionalProperties': False}, 'source': {'type': 'object', 'title': 'NativeSource', 'required': ['server', 'protocol_version'], 'properties': {'server': {'type': 'object', 'title': 'NativeServerIdentity', 'required': ['name', 'version'], 'properties': {'name': {'type': 'string', 'title': 'Name', 'description': 'Name reported by the MCP server during initialize; used as a supported-manifest lookup hint.'}, 'version': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Version', 'description': 'Server version reported during initialize, or null when unavailable.'}}, 'description': "MCP server identity from the connection's initialize response.", 'additionalProperties': False}, 'protocol_version': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Protocol Version', 'description': 'Negotiated MCP protocol version, or null when unavailable.'}}, 'description': 'MCP server and negotiated protocol identity for the source tool.', 'additionalProperties': False}, 'arguments': {'type': 'object', 'title': 'Arguments', 'description': 'Arguments intended for the source MCP tools/call request being evaluated. The evaluator does not execute that call.', 'additionalProperties': True}}, 'additionalProperties': False}
Ajouté
evaluate_operation_risk
5 October 2026 02:40
Ajouté
describe_operation_risk_service
5 October 2026 02:40