agent-mcp / server.py
subhamb04's picture
Upload folder using huggingface_hub
2bc91c3 verified
raw
history blame contribute delete
911 Bytes
import re
from fastmcp import FastMCP
mcp = FastMCP("PII Privacy Server")
patterns = {
"email": r"[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}",
"phone": r"\b\d{10}\b",
"credit_card": r"\b(?:\d[ -]*?){13,16}\b",
"ssn": r"\b\d{3}-\d{2}-\d{4}\b"
}
@mcp.tool
def scan_document(text: str) -> dict:
"""Scan text and return sensitive info findings."""
findings = []
for label, pattern in patterns.items():
for match in re.finditer(pattern, text):
findings.append({"type": label, "value": match.group()})
return {"findings": findings}
@mcp.tool
def redact_document(text: str) -> str:
"""Redact sensitive info from text."""
redacted = text
for label, pattern in patterns.items():
redacted = re.sub(pattern, f"[REDACTED-{label.upper()}]", redacted)
return redacted
if __name__ == "__main__":
mcp.run()