MCP servers can expose tools, prompts, and resource templates to Kiro. This page covers how to interact with each of these capabilities, along with how MCP elicitation lets servers request additional input from you during tool execution.
Once you've configured MCP servers, you can interact with their tools in several ways:
The simplest way to use MCP tools is to ask questions related to the server's domain:
Tell me about Amazon Bedrock
How do I configure S3 bucket policies?
Kiro automatically selects the appropriate MCP tool based on your question.
You can request specific MCP tools by describing what you want to do:
Search AWS documentation for information about ECS task definitions
Get recommendations for AWS CloudFormation best practices
For more control, provide explicit context to the tool picker:
#[aws-docs] search_documentation Tell me about AWS Lambda
This format specifies both the server (aws-docs) and the tool (search_documentation).
The Kiro panel includes an MCP servers tab that provides:
To access the MCP panel:
Each MCP server can expose multiple tools. You can enable or disable specific tools without affecting the entire server:
Via the Kiro Panel:
Via JSON Config:
Use the disabledTools array in your MCP configuration to permanently disable specific tools:
{ "mcpServers": { "github": { "command": "docker", "args": ["run", "-i", "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", "ghcr.io/github/github-mcp-server"], "disabledTools": ["delete_repository", "force_push", "merge_pull_request"] } } }
This is useful for:
Right-click on a server in the MCP panel to access additional options:
When Kiro wants to use an MCP tool, it requests your approval first:
To avoid repeated approval prompts for tools you trust:
autoApprove array:{ "mcpServers": { "aws-docs": { "autoApprove": [ "mcp_aws_docs_search_documentation", "mcp_aws_docs_read_documentation" ] } } }
Search AWS documentation for S3 bucket versioning
This uses the mcp_aws_docs_search_documentation tool to find relevant AWS documentation.
Read the AWS Lambda function URLs documentation
This uses the mcp_aws_docs_read_documentation tool to retrieve and display documentation content.
Find related content to AWS ECS task definitions
This uses the mcp_aws_docs_recommend tool to suggest related documentation.
Show me information about the tensorflow/tensorflow repository
This retrieves details about the specified GitHub repository.
Find examples of React hooks in facebook/react
This searches for code matching your query in the specified repository.
Create an issue in my repository about the login bug
This helps you create a new GitHub issue with appropriate details.
You can use multiple MCP tools in sequence for complex tasks:
First search AWS documentation for ECS task definitions, then find related content about service discovery
MCP tools work best when combined with your local context:
Based on my Terraform code, help me optimize my AWS Lambda configuration using best practices from AWS documentation
You can use MCP tools within Kiro Specs to enhance your development workflow:
In the implementation phase, use AWS documentation to ensure our S3 bucket configuration follows best practices
MCP servers can expose reusable prompt templates that provide pre-built instructions for common tasks. A prompt is a structured message template defined by the server, with an optional set of arguments you can fill in to customize it. Prompts appear alongside other context providers in the # mention list in chat.
# in the chat input to open the context provider menuIf a prompt has no arguments, the resolved content is inserted directly into your chat context.
Some prompts accept arguments to customize their behavior. When you select a prompt that requires input, an inline form appears where you fill in the parameters before the prompt is added to your message.
For example, a server might expose a code_review prompt with a required code argument and an optional language argument. After you complete the form, the server resolves the prompt and the resulting content is inserted into the chat context.
Prompts are always user-initiated — Kiro never sends a prompt to a server without you selecting it. The list of available prompts updates automatically when servers add or remove them.
For the full protocol details, see the MCP prompts specification.
MCP servers can also expose resource templates, which are parameterized URI templates that resolve to specific content. Like prompts, resource templates appear in the # mention list in chat.
# in the chat input to open the context provider menuWhen you select a resource template, an inline form appears for you to provide the template parameters. After you submit the form, Kiro resolves the URI and includes the resulting resource content as context in your conversation.
For example, a documentation server might expose a template like docs://{topic}/{version}. You would fill in the topic and version fields, and the resolved documentation content becomes available to Kiro.
During tool execution, an MCP server may need additional information from you to complete its task. This is called elicitation. Rather than failing or guessing, the server pauses and asks you directly. Kiro supports two types of elicitation requests: form-based and URL-based.
When a tool needs more input, it sends an elicitation request with a message explaining what it needs. Kiro renders an inline form in the execution timeline with fields based on the type of data requested:
| Field type | Rendered as |
|---|---|
| Text | Text input (may include format hints like email or date) |
| Number | Number input |
| Yes/No | Checkbox |
| Choice | Select dropdown |
Required fields are marked, and default values are pre-filled when provided by the server.
After reviewing the form, you can submit your responses, decline the request, or dismiss it. If you decline or dismiss, the server decides how to proceed — it might offer alternatives or skip the step entirely.
For the full schema details, see the MCP elicitation specification.
Some servers request that you visit an external URL, for example to complete an OAuth authorization flow. In this case, Kiro displays the URL with an Open button in the execution timeline. After you complete the external action, the tool continues execution.
Kiro always shows you which server is requesting information and what data it needs. You can decline any elicitation request at any time. Servers should not request sensitive information like passwords through elicitation — if you see such a request, consider whether you trust the server.
If you encounter issues when using MCP tools:
Ask Kiro feature to resolve errorsFor information on available MCP servers and their tools, see the MCP Servers page.
Tools