# Fix: tools/list returns a tools array with input schemas

> Web-audit fix skill for the `mcp-tools-list` check (MCP & API, MUST).

## Goal

Return tools/list entries with name, description, and a JSON inputSchema.

## Fix

Return `result.tools` as an array from the `tools/list` method. Each tool needs a `name`, a
`description`, and a JSON Schema `inputSchema` so an agent can validate arguments before
calling. A tool without an `inputSchema` forces the agent to guess argument shapes.

## Resources

- [MCP tools](https://modelcontextprotocol.io/specification/2025-06-18/server/tools)

## Copy-paste prompt

Paste this into your coding agent, replacing the Issue line with the Result line from [your audit](https://anc.dev/web-audit):

```text
Goal: Return tools/list entries with name, description, and a JSON inputSchema
Issue: <the audit's finding for this check>
Fix: Return `result.tools` as an array from the `tools/list` method. Each tool needs a `name`, a `description`, and a JSON Schema `inputSchema` so an agent can validate arguments before calling. A tool without an `inputSchema` forces the agent to guess argument shapes.
Skill: https://anc.dev/web-audit/skill/mcp-tools-list
Docs: https://modelcontextprotocol.io/specification/2025-06-18/server/tools
```

## Verify

Re-run the audit at [https://anc.dev/web-audit](https://anc.dev/web-audit) or call the `audit_website` MCP tool; the `mcp-tools-list` check should report `pass`.
