---
type: api
title: Agent Builder
description: Agent Builder is a set of AI-powered capabilities for developing and interacting with agents that work with your Elasticsearch data.
url: https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/group/endpoint-agent-builder
resource: https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/group/endpoint-agent-builder
products:
  - Kibana
---

# Agent Builder

`agent builder`

Agent Builder is a set of AI-powered capabilities for developing and interacting with agents that work with your Elasticsearch data.

Most users will probably want to integrate with Agent Builder using MCP or A2A, but you can also work programmatically with tools, agents, and conversations using these Kibana APIs. Follow the [Agent Builder API tutorial](https://www.elastic.co/docs/explore-analyze/ai-features/agent-builder/agent-builder-api-tutorial) for a guided example.

[Agent Builder docs](https://www.elastic.co/docs/solutions/search/agent-builder/programmatic-access)

- [Send A2A task](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-post-agent-builder-a2a-agentid): `POST` `/api/agent_builder/a2a/{agentId}`, `POST` `/s/{space_id}/api/agent_builder/a2a/{agentId}`
- [Get A2A agent card](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-get-agent-builder-a2a-agentid-json): `GET` `/api/agent_builder/a2a/{agentId}.json`, `GET` `/s/{space_id}/api/agent_builder/a2a/{agentId}.json`
- [List agents](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-get-agent-builder-agents): `GET` `/api/agent_builder/agents`, `GET` `/s/{space_id}/api/agent_builder/agents`
- [Create an agent](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-post-agent-builder-agents): `POST` `/api/agent_builder/agents`, `POST` `/s/{space_id}/api/agent_builder/agents`
- [Get agent consumption data](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-post-agent-builder-agents-agent-id-consumption): `POST` `/api/agent_builder/agents/{agent_id}/consumption`, `POST` `/s/{space_id}/api/agent_builder/agents/{agent_id}/consumption`
- [Delete an agent](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-delete-agent-builder-agents-id): `DELETE` `/api/agent_builder/agents/{id}`, `DELETE` `/s/{space_id}/api/agent_builder/agents/{id}`
- [Get an agent by ID](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-get-agent-builder-agents-id): `GET` `/api/agent_builder/agents/{id}`, `GET` `/s/{space_id}/api/agent_builder/agents/{id}`
- [Update an agent](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-put-agent-builder-agents-id): `PUT` `/api/agent_builder/agents/{id}`, `PUT` `/s/{space_id}/api/agent_builder/agents/{id}`
- [Get an agent's access control list](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-get-agent-builder-agents-id-access-control): `GET` `/api/agent_builder/agents/{id}/access_control`, `GET` `/s/{space_id}/api/agent_builder/agents/{id}/access_control`
- [Update an agent's access control list](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-put-agent-builder-agents-id-access-control): `PUT` `/api/agent_builder/agents/{id}/access_control`, `PUT` `/s/{space_id}/api/agent_builder/agents/{id}/access_control`
- [List conversations](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-get-agent-builder-conversations): `GET` `/api/agent_builder/conversations`, `GET` `/s/{space_id}/api/agent_builder/conversations`
- [Create conversation](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-post-agent-builder-conversations): `POST` `/api/agent_builder/conversations`, `POST` `/s/{space_id}/api/agent_builder/conversations`
- [Delete conversation by ID](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-delete-agent-builder-conversations-conversation-id): `DELETE` `/api/agent_builder/conversations/{conversation_id}`, `DELETE` `/s/{space_id}/api/agent_builder/conversations/{conversation_id}`
- [Get conversation by ID](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-get-agent-builder-conversations-conversation-id): `GET` `/api/agent_builder/conversations/{conversation_id}`, `GET` `/s/{space_id}/api/agent_builder/conversations/{conversation_id}`
- [Add events to a conversation](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-post-agent-builder-conversations-conversation-id-add-events): `POST` `/api/agent_builder/conversations/{conversation_id}/_add_events`, `POST` `/s/{space_id}/api/agent_builder/conversations/{conversation_id}/_add_events`
- [Update a conversation's access control](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-put-agent-builder-conversations-conversation-id-access-control): `PUT` `/api/agent_builder/conversations/{conversation_id}/access_control`, `PUT` `/s/{space_id}/api/agent_builder/conversations/{conversation_id}/access_control`
- [List conversation attachments](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-get-agent-builder-conversations-conversation-id-attachments): `GET` `/api/agent_builder/conversations/{conversation_id}/attachments`, `GET` `/s/{space_id}/api/agent_builder/conversations/{conversation_id}/attachments`
- [Create conversation attachment](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-post-agent-builder-conversations-conversation-id-attachments): `POST` `/api/agent_builder/conversations/{conversation_id}/attachments`, `POST` `/s/{space_id}/api/agent_builder/conversations/{conversation_id}/attachments`
- [Delete conversation attachment](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-delete-agent-builder-conversations-conversation-id-attachments-attachment-id): `DELETE` `/api/agent_builder/conversations/{conversation_id}/attachments/{attachment_id}`, `DELETE` `/s/{space_id}/api/agent_builder/conversations/{conversation_id}/attachments/{attachment_id}`
- [Get conversation attachment](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-get-agent-builder-conversations-conversation-id-attachments-attachment-id): `GET` `/api/agent_builder/conversations/{conversation_id}/attachments/{attachment_id}`, `GET` `/s/{space_id}/api/agent_builder/conversations/{conversation_id}/attachments/{attachment_id}`
- [Rename attachment](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-patch-agent-builder-conversations-conversation-id-attachments-attachment-id): `PATCH` `/api/agent_builder/conversations/{conversation_id}/attachments/{attachment_id}`, `PATCH` `/s/{space_id}/api/agent_builder/conversations/{conversation_id}/attachments/{attachment_id}`
- [Update conversation attachment](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-put-agent-builder-conversations-conversation-id-attachments-attachment-id): `PUT` `/api/agent_builder/conversations/{conversation_id}/attachments/{attachment_id}`, `PUT` `/s/{space_id}/api/agent_builder/conversations/{conversation_id}/attachments/{attachment_id}`
- [Restore deleted attachment](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-post-agent-builder-conversations-conversation-id-attachments-attachment-id-restore): `POST` `/api/agent_builder/conversations/{conversation_id}/attachments/{attachment_id}/_restore`, `POST` `/s/{space_id}/api/agent_builder/conversations/{conversation_id}/attachments/{attachment_id}/_restore`
- [Update attachment origin](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-put-agent-builder-conversations-conversation-id-attachments-attachment-id-origin): `PUT` `/api/agent_builder/conversations/{conversation_id}/attachments/{attachment_id}/origin`, `PUT` `/s/{space_id}/api/agent_builder/conversations/{conversation_id}/attachments/{attachment_id}/origin`
- [Check attachment staleness](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-get-agent-builder-conversations-conversation-id-attachments-stale): `GET` `/api/agent_builder/conversations/{conversation_id}/attachments/stale`, `GET` `/s/{space_id}/api/agent_builder/conversations/{conversation_id}/attachments/stale`
- [Send chat message](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-post-agent-builder-converse): `POST` `/api/agent_builder/converse`, `POST` `/s/{space_id}/api/agent_builder/converse`
- [Send chat message (streaming)](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-post-agent-builder-converse-async): `POST` `/api/agent_builder/converse/async`, `POST` `/s/{space_id}/api/agent_builder/converse/async`
- [MCP server](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-post-agent-builder-mcp): `POST` `/api/agent_builder/mcp`, `POST` `/s/{space_id}/api/agent_builder/mcp`
- [List plugins](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-get-agent-builder-plugins): `GET` `/api/agent_builder/plugins`, `GET` `/s/{space_id}/api/agent_builder/plugins`
- [Delete a plugin](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-delete-agent-builder-plugins-pluginid): `DELETE` `/api/agent_builder/plugins/{pluginId}`, `DELETE` `/s/{space_id}/api/agent_builder/plugins/{pluginId}`
- [Get a plugin by id](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-get-agent-builder-plugins-pluginid): `GET` `/api/agent_builder/plugins/{pluginId}`, `GET` `/s/{space_id}/api/agent_builder/plugins/{pluginId}`
- [Install a plugin](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-post-agent-builder-plugins-install): `POST` `/api/agent_builder/plugins/install`, `POST` `/s/{space_id}/api/agent_builder/plugins/install`
- [List skills](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-get-agent-builder-skills): `GET` `/api/agent_builder/skills`, `GET` `/s/{space_id}/api/agent_builder/skills`
- [Create a skill](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-post-agent-builder-skills): `POST` `/api/agent_builder/skills`, `POST` `/s/{space_id}/api/agent_builder/skills`
- [Delete a skill](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-delete-agent-builder-skills-skillid): `DELETE` `/api/agent_builder/skills/{skillId}`, `DELETE` `/s/{space_id}/api/agent_builder/skills/{skillId}`
- [Get a skill by id](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-get-agent-builder-skills-skillid): `GET` `/api/agent_builder/skills/{skillId}`, `GET` `/s/{space_id}/api/agent_builder/skills/{skillId}`
- [Update a skill](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-put-agent-builder-skills-skillid): `PUT` `/api/agent_builder/skills/{skillId}`, `PUT` `/s/{space_id}/api/agent_builder/skills/{skillId}`
- [List tools](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-get-agent-builder-tools): `GET` `/api/agent_builder/tools`, `GET` `/s/{space_id}/api/agent_builder/tools`
- [Create a tool](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-post-agent-builder-tools): `POST` `/api/agent_builder/tools`, `POST` `/s/{space_id}/api/agent_builder/tools`
- [Run a tool](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-post-agent-builder-tools-execute): `POST` `/api/agent_builder/tools/_execute`, `POST` `/s/{space_id}/api/agent_builder/tools/_execute`
- [Delete a tool](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-delete-agent-builder-tools-toolid): `DELETE` `/api/agent_builder/tools/{toolId}`, `DELETE` `/s/{space_id}/api/agent_builder/tools/{toolId}`
- [Get a tool by id](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-get-agent-builder-tools-toolid): `GET` `/api/agent_builder/tools/{toolId}`, `GET` `/s/{space_id}/api/agent_builder/tools/{toolId}`
- [Update a tool](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-put-agent-builder-tools-toolid): `PUT` `/api/agent_builder/tools/{toolId}`, `PUT` `/s/{space_id}/api/agent_builder/tools/{toolId}`
- [Send a message and get the answer](https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana-serverless/operation/operation-post-chat-message): `POST` `/api/chat/message`, `POST` `/s/{space_id}/api/chat/message`
