summaryrefslogtreecommitdiff
path: root/src/ollama_web/mcp.py
diff options
context:
space:
mode:
authortanaka takashi <isazaka@gmail.com>2026-06-27 02:47:14 +0900
committertanaka takashi <isazaka@gmail.com>2026-06-27 02:47:14 +0900
commit3f1bf8c0e8ba31d65c5a56041e4a9f89e87aa65e (patch)
tree867cb09f018512dcc8cc4afa75bdcf7c0dd9f3d4 /src/ollama_web/mcp.py
parent648fa0170e3ebec97d4e7430131ed1c47a46b9bb (diff)
MCP toolsの名称による実行制限処理の削除。
Diffstat (limited to 'src/ollama_web/mcp.py')
-rw-r--r--src/ollama_web/mcp.py20
1 files changed, 1 insertions, 19 deletions
diff --git a/src/ollama_web/mcp.py b/src/ollama_web/mcp.py
index 3437a62..e52860b 100644
--- a/src/ollama_web/mcp.py
+++ b/src/ollama_web/mcp.py
@@ -26,18 +26,8 @@ DEFAULT_TIMEOUT = 30.0
_MCP_TOOL_PREFIX = "mcp__"
_SAFE_NAME_RE = re.compile(r"^[A-Za-z0-9_-]{1,64}$")
_MAX_TOOL_DESCRIPTION_CHARS = 1000
+
_MAX_SCHEMA_DESCRIPTION_CHARS = 500
-_DANGEROUS_TOOL_WORDS = (
- "delete",
- "remove",
- "write",
- "exec",
- "shell",
- "command",
- "run",
- "token",
- "secret",
-)
_SECRET_KEY_RE = re.compile(r"(?i)(authorization|api[_-]?key|token|secret|cookie|session)")
_SECRET_VALUE_PATTERNS = (
re.compile(r"(?i)Bearer\s+[A-Za-z0-9._~+/=-]+"),
@@ -259,14 +249,6 @@ def wrap_untrusted_tool_output(text: str) -> str:
return f"{_UNTRUSTED_PREFIX}\n<tool-output>\n{body}\n</tool-output>"
-def is_dangerous_mcp_tool(name: str) -> bool:
- """Return whether an MCP tool name should require explicit approval."""
- parsed = _parse_tool_name(name)
- if parsed is None:
- return False
- lowered = parsed[1].lower()
- return any(word in lowered for word in _DANGEROUS_TOOL_WORDS)
-
def _to_ollama_tool(server_name: str, tool: Any) -> dict[str, Any]:
"""Convert an MCP ``Tool`` object into an ollama-compatible tool dict.