embrace-raw-readonly
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@embrace-raw-readonlyfetch detailed crash logs with full structured response"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Embrace read-only full-data MCP
This local stdio MCP preserves the official Embrace MCP response, including
structuredContent, instead of returning only the gateway summary.
It does not use Dashboard cookies and does not access undocumented Dashboard endpoints. The official Embrace MCP currently exposes aggregate session tools, plus detailed log/crash/network/span results; it does not expose arbitrary User Timeline retrieval.
Run
The parent MCP process must inherit the service-account token:
export EMBRACE_API_TOKEN='...'
uv run server.pyDo not pass the token as a tool argument or commit it to a file.
Related MCP server: opencode-codex-mcp
Tools
embrace_list_readonly_toolsreturns the remote tool schemas.embrace_call_readonly(tool_name, arguments)forwards one allowlisted tool and returns the complete JSON-RPC response.
The server has an explicit allowlist of the 22 published Embrace tools and rejects anything else.
Skill
The workflow skill is at
skills/embrace-readonly-full-data/SKILL.md.
Install or copy that directory into the skill directory used by your agent.
The skill instructs agents to discover schemas, preserve structured responses,
chain detail tools, and avoid undocumented Dashboard endpoints.
MCP client configuration
For a client that supports stdio MCP servers:
{
"mcpServers": {
"embrace-raw-readonly": {
"command": "uv",
"args": ["run", "--project", "/path/to/embrace-readonly-mcp", "server.py"]
}
}
}The client process must inherit EMBRACE_API_TOKEN. See
docs/SECURITY.md for credential handling.
Available Tools
2 toolsembrace_call_readonlyA
Call one published Embrace tool and return its complete JSON-RPC result.
This intentionally accepts arbitrary JSON arguments because the remote tool schemas evolve independently. Use embrace_list_readonly_tools first when the required arguments are unknown.
| Name | Required | Description | Default |
|---|---|---|---|
| arguments | No | ||
| tool_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears the full burden. It discloses that it accepts arbitrary JSON arguments and returns the complete JSON-RPC result, which is useful. However, it doesn't mention any side effects, error behaviors, or confirm that it only calls read-only tools (implied by the name). This is a moderate transparency gap given the lack of annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the core purpose, and both sentences earn their place. The structure is clean and efficient, with no fluff or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the output schema likely covers return values, the description omits the apparently important fact that this tool is restricted to read-only operations (suggested by the name and sibling). It also doesn't mention error handling or prerequisites beyond discovering arguments. For a generic dispatcher, this is adequate but not comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must explain parameters. It explains the 'arguments' parameter well (arbitrary JSON) but does not elaborate on 'tool_name' beyond what the schema already shows. The description partially compensates but not fully, especially since tool_name is required and its purpose is only implied.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool calls one published Embrace tool and returns the JSON-RPC result. It distinguishes itself from the sibling by emphasizing it's a dispatcher, not a listing tool. A slightly higher score is withheld because it doesn't explicitly contrast with embrace_list_readonly_tools in terms of purpose, but the intent is unmistakable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit guidance: use embrace_list_readonly_tools first when arguments are unknown. It also explains why arbitrary arguments are accepted (schemas evolve independently), which informs when this tool is the right choice. This is clear and actionable usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
embrace_list_readonly_toolsA
Return the official Embrace read-only tool schemas as full JSON.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description is the sole source of behavioral information. It correctly implies a read operation and states the return format (full JSON), but it does not disclose any other behaviors such as potential size limits, whether all read-only tools are included, or if there are any side effects. For a simple listing tool, this is adequate but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that is front-loaded and carries no fluff. Every word contributes to the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has an output schema and zero parameters, so the description covers the essential purpose. It might mention that it is the authoritative source for schemas, but given the low complexity and presence of the output schema, the description is nearly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the description needs no per-parameter explanation. Baseline for zero parameters is 4, and the description adds no irrelevant information about parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb ('Return') and specific resource ('official Embrace read-only tool schemas as full JSON'), making it obvious what the tool does. It is distinct from the sibling embrace_call_readonly, which presumably calls a specific tool rather than listing schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance on when to use this tool versus embrace_call_readonly or any other alternative. It does not explain typical use cases or prerequisites, leaving the agent to infer when listing schemas is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
2 tool updates
v0.1.0- First observed
embrace_call_readonly - First observed
embrace_list_readonly_tools
TDQS
Scored across 2 tools
The two tools have clearly distinct purposes: one lists available tools, the other invokes a specific tool. There is no overlap or ambiguity in selecting between them.
Both tools start with 'embrace_' and include 'readonly', but one is 'list_readonly_tools' (verb_noun) while the other is 'call_readonly' (verb_adjective). The pattern is mostly consistent but not perfectly parallel.
With only two tools, the surface is thin. However, this is a deliberate thin proxy layer for a remote readonly API, so the minimalism is justified, but it still falls below the typical well-scoped range.
The two tools form a complete interface for interacting with the remote readonly toolset: listing available schemas and calling them. There are no missing operations within the stated scope of acting as a proxy.
Maintenance
Related MCP Connectors
Enable secure connectivity between Sentry issues and debugging data, and LLM clients, using a Model Context Protocol (MCP) server.
- AgentCatOAuthcom.agentcat
Analytics and debugging for your MCP server — explore usage and sessions, then root-cause errors.
MCP server for Statsig API - interact with Statsig's feature flags, experiments, and analytics
Host your MCP tool over streamable HTTP in one command.
Related MCP Servers
- AlicenseBqualityBmaintenanceEnables diagnosing, testing, benchmarking, and deliberately controlling LM Studio through a local-only MCP stdio server, with mutations disabled by default and evidence-based capability verification.18MIT
- FlicenseNot gradedqualityCmaintenanceEnables MCP-compatible hosts such as OpenCode to drive the Codex CLI through codex app-server over stdio, exposing tools to run prompts, inspect status, list threads, and interrupt running turns.-
- AlicenseAqualityBmaintenanceEnables MCP clients to connect to Agenzax's REST API over stdio, providing tools for messaging, session management, and review-mode oversight.18414 npmMIT
- FlicenseNot gradedqualityBmaintenanceEnables MCP clients to discover and execute operational tools such as database mutations and system diagnostics over stdio, with deterministic structured outputs and Langfuse observability.-