Honeycomb MCP Server
for AI Agents
Connect your AI agent to StackOne's Honeycomb MCP server and give it 79 MCP tools out of the box. Auth, tool execution, and security all managed.
Coverage
79 Agent Actions
Create, read, update, and delete across Honeycomb — and extend your agent's capabilities with custom actions.
Authentication
Agent Tool Authentication
Per-user OAuth in one call. Your Honeycomb MCP server gets session-scoped tokens with zero credentials stored on your infra.
Agent Auth →Security
Agent Protection
Every Honeycomb tool response scanned for prompt injection in milliseconds — 88.7% accuracy, all running on CPU.
Prompt Injection Defense →Performance
Max Agent Context. Min Cost.
Free up to 96% of your agent's context window to enhance reasoning and reduce cost, on every Honeycomb call.
Tools Discovery →What is the Honeycomb MCP Server?
A Honeycomb MCP server lets AI agents read and write Honeycomb data through the Model Context Protocol — Anthropic's open standard for connecting LLMs to external tools. StackOne's Honeycomb MCP server ships with 79 pre-built actions, fully extensible via the Connector Builder — plus managed authentication, prompt injection defense, observability, and agent execution runtime. Connect it from MCP clients like Claude Desktop, Claude Code, Cursor, Goose, and VS Code, or from agent frameworks like OpenAI Agents SDK, LangChain, and Vercel AI SDK.
All Honeycomb MCP Tools
Every action from Honeycomb's API, ready for your agent. Create, read, update, and delete — scoped to exactly what you need.
Boards
- Create Board
Create a new Board with query panels, SLO panels, or text panels. Call create_query to get a query_id for query panels, and list_slos to get an slo_id for SLO panels.
- List Boards
List all dashboards (boards) for monitoring and visualizing observability data.
- Get Board
Get a single Board by its unique identifier. Call list_boards first to retrieve the boardId.
- Update Board
Update a Board by specifying its ID and full details. Call list_boards first to retrieve the boardId.
- Delete Board
Delete a public Board by specifying its ID. Call list_boards first to retrieve the boardId.
Board Views
- Create Board View
Create a new view for a board with specified filters. Call list_boards first to retrieve the boardId.
- List Board Views
Retrieve a list of all views for a board. Call list_boards first to retrieve the boardId.
- Get Board View
Retrieve a single Board View by ID. Call list_boards first to retrieve the boardId, then list_board_views to retrieve the viewId.
- Update Board View
Update a Board View by specifying its ID and full details. Call list_boards first to retrieve the boardId, then list_board_views to retrieve the viewId.
- Delete Board View
Delete a Board View by specifying its ID. Call list_boards first to retrieve the boardId, then list_board_views to retrieve the viewId.
Calculated Fields
- Create Calculated Field
Create a new calculated field (derived column) in a dataset.
- List Calculated Fields
List all calculated fields (derived columns) in a dataset.
- Get Calculated Field
Get a single calculated field by ID. Call list_calculated_fields first to retrieve the derivedColumnId.
- Update Calculated Field
Update a calculated field's expression or metadata. Call list_calculated_fields first to retrieve the derivedColumnId.
- Delete Calculated Field
Delete a calculated field from a dataset. Call list_calculated_fields first to retrieve the derivedColumnId.
Columns
- Create Column
Create a new column in a dataset.
- List Columns
List all columns (fields/attributes/schema) in a dataset - shows available fields to query.
- Get Column
Get a single column by ID from a dataset. Call list_columns first to retrieve the columnId.
- Update Column
Update a column's metadata in a dataset. Call list_columns first to retrieve the columnId.
- Delete Column
Delete a column from a dataset. Call list_columns first to retrieve the columnId.
Datasets
- Create Dataset
Create a Dataset in the environment associated with your API key.
- List Datasets
List all observability datasets and environments - shows available data containers in Honeycomb.
- Get Dataset
Get detailed information about a specific dataset by its slug identifier. Call list_datasets first to retrieve the datasetSlug.
- Update Dataset
Update a Dataset's settings. Call list_datasets first to retrieve the datasetSlug.
- Delete Dataset
Deletes a Dataset. This is an irreversible operation. Call list_datasets first to retrieve the datasetSlug.
Dataset Definitions
- Get Dataset Definition
Get the dataset definition describing fields with special meaning. Call list_datasets first to retrieve the datasetSlug.
- Update Dataset Definition
Update the dataset definition with fields having special meaning. Call list_datasets first to retrieve the datasetSlug.
Markers
- Create Marker
Create a marker to indicate a point in time on graphs. Call list_marker_settings to find valid type values that match existing marker settings.
- List Markers
List deployment markers, release annotations, and event markers on observability graphs.
- Update Marker
Update an existing marker's message, type, URL, or time range. Call list_markers first to retrieve the markerId.
- Delete Marker
Permanently delete a marker from a dataset. Call list_markers first to retrieve the markerId.
Marker Settings
- Create Marker Setting
Create a marker setting to define a group of similar markers with a shared color.
- List Marker Settings
List all marker settings in a dataset.
- Update Marker Setting
Update an existing marker setting's color. Call list_marker_settings first to retrieve the markerSettingId.
- Delete Marker Setting
Permanently delete a marker setting from a dataset. Call list_marker_settings first to retrieve the markerSettingId.
Annotations
- Create Query Annotation
Create a query annotation to associate a name and description to a query. Call create_query first to retrieve the query_id.
- List Query Annotations
List all query annotations in a dataset.
- Get Query Annotation
Get a single query annotation by ID. Call list_query_annotations first to retrieve the queryAnnotationId.
- Update Query Annotation
Update an existing query annotation's name or description. Note that query_id is required but cannot be changed. Call list_query_annotations first to retrieve the queryAnnotationId.
- Delete Query Annotation
Permanently delete a query annotation. Call list_query_annotations first to retrieve the queryAnnotationId.
Results
- Create Query Result
Execute a query asynchronously and get a result ID to poll. Requires Honeycomb Enterprise plan. Call create_query first to retrieve the query_id.
- Get Query Result
Retrieve query execution results by result ID. Requires Honeycomb Enterprise plan. Call create_query_result first to execute a query and retrieve the queryResultId.
Recipients
- List Recipients
List all notification recipients for the team.
- Get Recipient
Get a single recipient by ID. Call list_recipients first to retrieve the recipientId.
- Delete Recipient
Permanently delete a notification recipient. Call list_recipients first to retrieve the recipientId, and get_triggers_for_recipient to verify it is not in use.
Recipient (type Email)s
- Create Recipient (type Email)
Create an email notification recipient.
- Update Recipient (type Email)
Update an existing email notification recipient. Call list_recipients first to retrieve the recipientId.
Recipient (type PagerDuty)s
- Create Recipient (type PagerDuty)
Create a PagerDuty notification recipient.
- Update Recipient (type PagerDuty)
Update an existing PagerDuty notification recipient. Call list_recipients first to retrieve the recipientId.
Recipient (type Slack)s
- Create Recipient (type Slack)
Create a Slack notification recipient. Requires Slack OAuth flow completed in Honeycomb Integration Center.
- Update Recipient (type Slack)
Update an existing Slack notification recipient. Requires Slack OAuth flow completed in Honeycomb Integration Center. Call list_recipients first to retrieve the recipientId.
Recipient (type Webhook)s
- Create Recipient (type Webhook)
Create a webhook notification recipient.
- Update Recipient (type Webhook)
Update an existing webhook notification recipient. Call list_recipients first to retrieve the recipientId.
Recipient (type MSTeams Workflow)s
- Create Recipient (type MSTeams Workflow)
Create a Microsoft Teams workflow notification recipient.
- Update Recipient (type MSTeams Workflow)
Update an existing Microsoft Teams workflow notification recipient. Call list_recipients first to retrieve the recipientId.
SLOs
- Create SLO
Create a new Service Level Objective on a dataset. Call list_calculated_fields first to find a valid alias for the sli field.
- List SLOs
List all Service Level Objectives for a dataset or environment.
- Get SLO
Get a single SLO by ID. Call list_slos first to retrieve the sloId.
- Update SLO
Update an existing SLO by specifying its full details. Call list_slos first to retrieve the sloId, and list_calculated_fields to find a valid alias for the sli field.
- Delete SLO
Permanently delete an SLO and all its associated burn alerts. Call list_slos first to retrieve the sloId.
Burn Alerts
- Create Burn Alert
Create a new burn alert for an SLO. Call list_slos to get a valid slo ID, and list_recipients to get recipient IDs.
- List Burn Alerts
List all burn alerts for a specific SLO. Call list_slos to find the SLO to scope burn alert retrieval.
- Get Burn Alert
Get a single burn alert by ID. Call list_burn_alerts first to retrieve the burnAlertId.
- Update Burn Alert
Update an existing burn alert by specifying its full details. Call list_burn_alerts to retrieve the burnAlertId, list_slos to get the SLO ID, and list_recipients for recipient IDs.
- Delete Burn Alert
Permanently delete a burn alert from an SLO. Call list_burn_alerts first to retrieve the burnAlertId.
Triggers
- Create Trigger
Create a new trigger on a dataset or environment. Call list_recipients first to get recipient IDs to include in the recipients field.
- List Triggers
List all triggers configured in a dataset or environment.
- Get Trigger
Get a single trigger by ID. Call list_triggers first to retrieve available trigger IDs.
- Update Trigger
Update an existing trigger by specifying its full details. Call list_triggers first to get the triggerId, and call list_recipients to get any recipient IDs needed.
- Delete Trigger
Permanently delete a trigger from a dataset. Call list_triggers first to get the triggerId.
Other (9)
- Create Event
Send a single event to a Honeycomb dataset. Requires Ingest API Key authentication. Discouraged for production use — prefer create_batch_events for efficiency.
- Create Batch Events (by JSON)
Send multiple events to a Honeycomb dataset in a single request. Requires Ingest API Key authentication. Preferred over create_event for production use.
- Create Query
Create a query specification to analyze observability data. Does not execute — use create_query_result to run it.
- Get Auth (Configuration Key)
Check Configuration API key permissions and authentication status.
- Get Auth (Ingest Key)
Check Ingest API key permissions and authentication status.
- Get Query
Retrieve a query specification by its ID. Call create_query first to create a query and retrieve the queryId.
- Get Triggers For Recipient
List all triggers associated with a specific recipient across the team. Call list_recipients first to retrieve the recipientId.
- Get SLO Realtime Counts
Get per-minute success and failure event counts for an SLO. Enterprise plan only. Call list_slos first to retrieve the sloId.
- Get SLO Hourly Counts History
Get hourly-bucketed historical event counts for an SLO. Enterprise plan only. Call list_slos first to retrieve the sloId.
Set Up Your Honeycomb MCP Server in Minutes
One endpoint. Any framework. Your agent is talking to Honeycomb in under 10 lines of code.
Agent Frameworks
{
"mcpServers": {
"stackone": {
"command": "npx",
"args": [
"-y",
"mcp-remote@latest",
"https://api.stackone.com/mcp?x-account-id=<account_id>",
"--header",
"Authorization: Basic <YOUR_BASE64_TOKEN>"
]
}
}
}Platform Resources
MCP Code Mode: Keeping Tool Responses Out of Agent Context
Anthropic's code_execution processes data already in context. Custom MCP code mode keeps raw tool responses in a sandbox. 14K tokens vs 500.
11 min
Comparing BM25, TF-IDF, and Hybrid Search for MCP Tool Discovery
Benchmarking BM25, TF-IDF, and hybrid search for MCP tool discovery across 916 tools. The 80/20 TF-IDF/BM25 hybrid hits 21% Top-1 accuracy in under 1ms.
10 min
Indirect Prompt Injection Defense for MCP Tools: A Technical Guide
MCP tools that read emails, CRM records, and tickets are indirect prompt injection vectors. Here's how we built a two-tier defense that scans tool results in ~11ms.
12 min
MCP vs A2A: Architecture, Security, and When to Use Each
MCP vs A2A: what each protocol standardizes, how they differ, their shared security risks including indirect prompt injection, and when to use one, both, or a hybrid architecture.
12 min
MCP vs API: What 200+ Connector Builds Taught Us
MCP wraps APIs, it doesn't replace them. After building 200+ connectors that serve both, here's when each approach wins.
14 min read
Honeycomb MCP Server FAQ
Does StackOne have a Honeycomb MCP server?
Honeycomb MCP server vs direct API integration — what's the difference?
How does Honeycomb authentication work for AI agents?
origin_owner_id.Are Honeycomb MCP tools vulnerable to prompt injection?
What is the context bloat of a Honeycomb agent and how do I avoid it?
Can I limit which actions my Honeycomb agent can access?
Can I create custom agent actions for my Honeycomb MCP server?
When should I NOT use a Honeycomb MCP server?
What AI frameworks and AI clients does the StackOne Honeycomb MCP server support?
Put your AI agents to work
All the tools you need to build and scale AI agent integrations, with best-in-class connectivity, execution, and security.