MCP server audit
scan_mcpMCP server audit: connects to a remote MCP server (or takes its tools, resources and prompts), grades it A-F for tool poisoning, hidden Unicode, raw command/path inputs, destructive tools without annotations, name shadowing, resources pointing at credentials, poisoned prompts and insecure transport. Use before connecting an agent to an MCP server you did not write, or when a user asks whether an MCP server is safe. Pass url (Streamable HTTP; initialize, tools/list and, when advertised, resources/list and prompts/list are called, nothing is invoked or read) or tools[] (plus optional resources[] and prompts[]) from your own list calls for stdio servers. Returns grade A-F, score 0-100, verdict, server {name, version, protocolVersion, https, auth, capabilities}, toolCount, resourceCount, promptCount, findings[] {rule, severity, message, tool|resource|prompt, evidence}, tools[], resources[] and prompts[] each with risk and finding count. Any poisoning finding caps the grade at D. Not charged when the server is down or needs auth. Price: $0.005 per call from Exepal credit; not charged if the call fails. Includes free daily calls.
Tool call template
This tool declares no required parameters. Add optional parameters from the input schema as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {},
"name": "scan_mcp"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| url | No | Remote MCP server URL (Streamable HTTP), e.g. https://example.com/mcp | |
| tools | No | Instead of url: the server's tools as returned by tools/list (for stdio servers or servers behind auth) | |
| headers | No | With url: headers to send, e.g. {"Authorization": "Bearer ..."}. Used for the audit only, never stored | |
| prompts | No | With tools[]: the server's prompts from prompts/list | |
| resources | No | With tools[]: the server's resources from resources/list and resources/templates/list | |
| instructions | No | With tools[]: the server's instructions string from initialize |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| grade | No | A, B, C, D or F | |
| score | No | 0-100, higher is safer | |
| tools | No | ||
| server | No | ||
| prompts | No | Up to 200 | |
| verdict | No | ||
| findings | No | Most severe first, up to 100 | |
| fetchedAt | No | ||
| resources | No | Up to 200 | |
| toolCount | No | ||
| promptCount | No | ||
| resourceCount | No |