Atisbo
Server Details
MCP tools over one Atisbo workspace: Signals, Opportunities, Backlog, Decisions, Living Documents.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Available Tools
8 toolsatisbo_analyzeARead-onlyInspect
Broad analytical query over claims, solutions, or activity: time filters, grouping, metrics, ready-to-render chart artifact. Use FIRST for analytical questions spanning entities or time windows; for single-entity drill-downs atisbo_lookup mode=claim or atisbo_lookup mode=node is enough.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | Alias for subject. | |
| limit | No | Max grouped rows (1–50, default 20); over-asks clamp. | |
| cursor | No | From stream.next_cursor — pages grouped rows beyond `limit`. | |
| domain | No | Free-text product area, resolved to map nodes. | |
| filters | No | Filters: AND across fields, OR within a field. | |
| metrics | No | Aggregate metrics per group (1-4). | |
| subject | No | Dataset: claims (opportunities), solutions, or activity (decisions + events). | |
| analysis | No | summary (prose), table, or chart kind (bar/line/scatter); trend aliases line. | |
| group_by | No | Row grouping dimensions (1-2). | |
| time_range | No | Preset (7d/30d/90d) or explicit from/to ISO dates. Defaults to 30d. |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| meta | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so safety is covered. The description adds useful behavioral context: it is a 'broad analytical query' that returns a 'ready-to-render chart artifact,' implying aggregation and visual output. It does not discuss pagination or clamping, but those are disclosed in parameter descriptions, and the annotation bar is lower.
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 carry the full purpose, features, and sibling routing. The core purpose is front-loaded, and the alternative is given without unnecessary elaboration. Zero filler.
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?
Despite 10 parameters and nested objects, the full schema plus output schema covers the necessary details; the description supplies the high-level mental model and routing. It could have given a concrete example query or noted the read-only nature, but annotations and rich schema make the environment complete enough to call correctly.
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 100%, and each parameter already has rich documentation (aliases, clamps, pagination source, provenance warnings, enum semantics). The main description adds no parameter-level detail, so the baseline of 3 is appropriate.
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 specific verb ('query') over concrete resources ('claims, solutions, or activity') and lists key capabilities (time filters, grouping, metrics, chart artifact). It explicitly distinguishes itself from atisbo_lookup by naming it and the drill-down use case, so an agent can separate them without inspecting 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 an explicit when-to-use ('analytical questions spanning entities or time windows') and names the alternative (atisbo_lookup mode=claim/node) for single-entity drill-downs. This is direct routing guidance, not just an implied context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
atisbo_captureCDestructiveInspect
Capture Signals or knowledge; update, patch or add evidence to artefacts.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | Yes | Capture mode. Mode-specific notes return in meta.guidance after the call. | |
| note | No | Why it matters or ingestion context. | |
| text | No | Signal text. | |
| items | No | signal_batch, max 100. | |
| title | No | Knowledge or evidence title. | |
| source | No | Signal source. Defaults to manual. | |
| content | No | Knowledge or artefact content. | |
| evidence | No | Evidence fields; document_id is top-level. | |
| modality | No | Q=Quote, O=Observation, M=Metric. Pipeline infers if omitted. | |
| scope_id | No | Target scope UUID. | |
| file_name | No | ||
| mime_type | No | ||
| patch_ops | No | ||
| agent_name | No | Signs the change. | |
| scope_type | No | Scope kind; company is treated as active workspace. | |
| attachments | No | 1-5 files; 3 MB combined. | |
| document_id | No | Living document UUID for artefact modes. | |
| capture_mode | No | Knowledge routing; default signals_only. | |
| captured_from | No | ||
| change_summary | No | Artefact change summary. | |
| classification | No | Signal classification hint. | |
| dirty_event_id | No | Dirty event resolved on success | |
| knowledge_kind | No | ||
| coverage_updates | No | Snippet/idea/claim coverage updates. | |
| expected_content_hash | No | content_hash from doc_patch_context | |
| corrects_prior_evidence | No | signal: CORRECTS prior evidence, not repeats it. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already indicate a destructive write operation (readOnlyHint=false, destructiveHint=true), and the description's 'update, patch or add' is consistent with that. However, the description adds no behavioral detail beyond the annotations—no mention of artefact mutation effects, idempotency keys, dirty_event_id side effects, or mode-specific consequences, which is significant for a destructive tool.
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?
The description is a single compact sentence with no filler, and the primary action is front-loaded. However, it is so terse that it fails to convey mode routing, so conciseness comes at the cost of practical guidance.
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?
This is a high-complexity tool with 26 parameters, six modes, nested objects, and no output schema, yet the description provides only a one-sentence overview. It gives no indication of which parameters apply to which mode, no mode-specific contracts, and no behavioral caveats, leaving the agent severely under-informed for correct invocation.
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 81%, so the schema already documents most parameters in detail, including mode, evidence, and patch_ops. The description itself only restates broad resource categories and provides no extra parameter-level meaning, so it neither helps nor hurts beyond the high-coverage schema.
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 ('Capture') and resource ('Signals or knowledge') and also names additional artefact operations ('update, patch or add evidence to artefacts'). It broadly distinguishes this tool from analysis or support siblings, but it does not explain the mode-driven dispatch, so the scope remains somewhat broad.
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?
There is no guidance on when to use this tool versus siblings or how to choose between the six modes in the schema. The description does not mention alternatives, prerequisites, or mode selection criteria, leaving the agent to infer usage entirely from the parameter schema.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
atisbo_connectADestructiveInspect
Compact facade for WHERE Atisbo gets its signals — it CONNECTS sources, not just describes them. Modes: list (connections + live status), catalog (ingestible sources; query filters), create (returns the endpoint), configure, pause, resume, sync_now (pull sources only). Call list before any mutation. THE CATALOG IS NOT THE BOUNDARY: almost anything connects — push app (composio_catalog), daily-pull app (composio_actions, ~1,000 apps), raw webhook/email. Never answer "Atisbo cannot ingest that" from an empty search; call catalog and read fallback. Atisbo only READS a connected system, never writes. create returns an endpoint + signing secret shown EXACTLY ONCE — relay both to the human immediately.
| Name | Required | Description | Default |
|---|---|---|---|
| kind | No | mode=create: "email" provisions the ingest address; default webhook. | |
| mode | No | list/catalog need no ids; others need connection_id or create fields. | |
| label | No | create/configure: human name for the source, e.g. "Freshdesk". | |
| query | No | mode=catalog only: filter by name, category or description. | |
| config | No | mode=create with provider: catalog required_fields. Stored encrypted, never readable again. | |
| toolkit | No | composio_actions / composio_create: Composio app slug (e.g. "freshdesk", "jira"). | |
| provider | No | mode=create: NATIVE provider from catalog native_providers. Pair with config. | |
| pull_tool | No | composio_create, DAILY apps: read-only action from composio_actions. | |
| recipe_id | No | mode=create: catalog recipe id — applies its curated mapping. | |
| json_paths | No | create/configure: dotted paths into the POSTed payload's JSON body. | |
| rate_limit | No | create/configure: max requests per minute accepted. Default 100. | |
| sync_every | No | PULL sources only: cadence. Default daily. | |
| trigger_slug | No | composio_create, INSTANT apps: trigger from composio_catalog. | |
| connection_id | No | Connection id from mode=list; required for configure/pause/resume/sync_now. | |
| pull_arguments | No | composio_create with pull_tool: arguments the action needs. | |
| collection_path | No | composio_create with pull_tool: dotted path to the record array, when not inferable. | |
| source_category | No | mode=create with your own mapping: what kind of signal the payload carries. | |
| skip_attribution | No | mode=create: true for anonymous public-forum sources with no attributable customer. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With annotations indicating destructiveHint=true, the description goes beyond by disclosing critical behavioral traits: Atisbo only READS a connected system, never writes; create returns an endpoint + signing secret shown EXACTLY ONCE and must be relayed immediately; config is stored encrypted and never readable again. These are exactly the kind of non-obvious behaviors an agent needs to know.
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?
The description is dense and front-loaded with the primary purpose (CONNECTS), and each sentence earns its place: modes summary, list-first rule, boundary expansion, read-only rule, and one-time secret warning. It loses one point because the heavy use of ALL-CAPS and the density of information could be slightly overwhelming, but nothing is redundant.
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?
For an 18-parameter tool with no output schema and nested objects, the description supplies the missing contexts: when to call list, catalog fallback behavior, read-only guarantee, one-time secret handling, pull-vs-instant distinction, and mode-to-parameter mapping. There is no output schema, so the return-value guidance ('catalog (ingestible sources; query filters)', 'create returns the endpoint') is appropriately brief but sufficient.
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?
Although schema coverage is 100%, the description adds crucial cross-parameter semantics: which parameters apply to which modes, that kwargs must pair with native_providers, that json_paths.raw_text is REQUIRED, and that sync_every applies only to PULL sources. It also explains consequences of parameter choices (e.g., email provisions an ingest address). This goes beyond the schema.
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 names a specific verb (CONNECTS) and resource (Atisbo sources/signals), and immediately distinguishes itself from merely describing them. It enumerates concrete modes list, catalog, create, configure, pause, resume, sync_now, composio variants, making the tool's scope unmistakable and differentiating it from siblings like atisbo_analyze or atisbo_capture.
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 when-to-use instructions: 'Call list before any mutation', and warns against answering from an empty search, directing the agent to call catalog and read fallback. It also explains the CAPABILITIES boundary ('almost anything connects') and provides alternatives by mode. This is strong routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
atisbo_decideADestructiveInspect
PM decision facade. CURATE: evidence review/grouping, deal-breakers. EXECUTE: create, update, dispatch or delete Solutions, record Outcomes. DOCUMENT/GOVERN: living docs, coverage, schedules, knowledge, strategy. log_decision is only for external decisions; mutations log themselves. Writes require UUIDs. mode=declare_pm_exception marks a CLAIM as needing a human decision (SEN-180).
| Name | Required | Description | Default |
|---|---|---|---|
| id | No | Entity UUID — delete_knowledge: doc id from atisbo_lookup knowledge. | |
| mode | Yes | Resolve names to UUIDs before mutating; mode-specific notes return in meta.guidance. | |
| note | No | Rationale or audit note. | |
| spec | No | Structured spec for apply_solution_spec. | |
| brief | No | dispatch_solution: context/brief handed to the agent. | |
| force | No | True confirms a reassignment that would soft-delete the emptied source claim; without it the call fails CONFIRMATION_REQUIRED. | |
| title | No | Title; the new title when renaming. | |
| effort | No | Size estimate in person-weeks (0.5-52). Sizing only — it does not affect Backlog order. | |
| matrix | No | validate_delivery: one entry per success criterion (see implementation_context). ≤20 entries. | |
| pr_url | No | GitHub PR URL. | |
| status | No | set_claim/snippet_status: target classification. | |
| claimId | No | Alias for claim_id. | |
| comment | No | update_solution: report posted to the thread as the agent, visible to teammates. | |
| mission | No | update_strategy: informational note only — not scored or used in prompts. | |
| node_id | No | Optional map node to attach a new solution to. | |
| outcome | No | record_outcome: impact of this launch. Does not reopen the Solution. | |
| roadmap | No | update_strategy: informational note only — not scored or used in prompts. | |
| verdict | No | mode=triage: BOTH values close the claim — see guidance. | |
| claim_id | No | Claim UUID — resolve names with atisbo_lookup mode=resolve first | |
| decision | No | Decision value/verdict for log_decision. | |
| strategy | No | update_strategy: the only functional field — drives alignment scoring/prompts. | |
| unassign | No | update_solution: clear the item's owner. | |
| claim_ids | No | ||
| kpi_after | No | ||
| lifecycle | No | Solution stage: IDEA, DESIGNING, IN_DEVELOPMENT, or LAUNCHED. | |
| target_id | No | Generic target UUID for decision logging. | |
| agent_name | No | Signs comments, assignments and logged decisions; without it they credit the key owner. Default "Agent". | |
| kpi_before | No | ||
| risk_notes | No | check_coverage: acknowledge unresolved contradictions by id. 50 notes ×1000 chars. | |
| snippet_id | No | Snippet UUID for reassignment or claim creation. | |
| solutionId | No | Alias for solution_id | |
| updated_at | No | Optimistic lock from your last read; concurrent edits fail with STALE_DATA. | |
| description | No | Solution description. ≤2000 chars. | |
| document_id | No | update_artefact_schedule: living doc UUID. | |
| instruction | No | create_living_doc/create_solution_doc: preferred structure. | |
| observed_at | No | record_outcome: when the evidence was observed. | |
| review_kind | No | mark_reviewed: which review kind to checkpoint. | |
| rice_effort | No | Alias for effort (legacy column name). | |
| snooze_days | No | Pause on Board for N days. | |
| solution_id | No | Solution UUID — resolve names with atisbo_lookup mode=resolve first | |
| target_type | No | Target entity type for log_decision. | |
| alternatives | No | ||
| out_of_scope | No | check_coverage: ids intentionally NOT addressed. 100 ids ×128 chars. | |
| product_name | No | ||
| snooze_clear | No | Wake a snoozed solution now. | |
| clear_discard | No | update_solution: lift the discard mark; lifecycle unchanged. | |
| covered_ideas | No | check_coverage: idea ids from the coverage map. 100 ids ×128 chars. | |
| decision_type | No | Canonical decision type for log_decision. | |
| evidence_refs | No | record_outcome: durable post-launch evidence references. Required downstream. | |
| main_features | No | ||
| outcome_notes | No | record_outcome: alias for `note`. | |
| assign_node_id | No | update_solution: assign to a taxonomy node; surfaces under claims anchored there. | |
| covered_claims | No | check_coverage: claim ids this work implements. 50 ids ×128 chars. | |
| design_context | No | Design reasoning seeding the living document. | |
| discard_reason | No | update_solution: marks this CANCELED solution a discarded divergence loser (ADR-224). Requires lifecycle CANCELED here or earlier. | |
| force_reassign | No | dispatch_solution: take over a Solution another agent holds in progress; recorded on the audit trail. Omitting it refuses a contested dispatch naming the holder. | |
| metric_current | No | record_outcome with an automated verification method: fresh reading of the bound metric, as a number. | |
| priority_boost | No | update_solution: PM multiplier (0.5-5.0, default 1.0); the lever that moves Backlog order. | |
| assign_to_agent | No | update_solution: take ownership as this agent; overrides an existing assignee. | |
| effort_estimate | No | Initial effort estimate in person-weeks. | |
| is_deal_breaker | No | flag_deal_breaker: true = flag claim, false = unflag. | |
| target_claim_id | No | Destination claim for snippet reassignment. | |
| attach_claim_ids | No | update_solution: attach more claims covered. | |
| detach_claim_ids | No | update_solution: remove non-primary claim attachments | |
| refresh_schedule | No | update_artefact_schedule: cadence | |
| criteria_left_out | No | update_solution: criteria this launch leaves OUT (ADR-234). Only with lifecycle=LAUNCHED. | |
| expected_behavior | No | check_coverage: observable behavior delivered. 50 strings ×500 chars. | |
| chosen_solution_id | No | update_solution: the sibling that won, when discard_reason names it. | |
| clear_pm_exception | No | update_solution / declare_pm_exception: lift the PM exception. | |
| outcome_confidence | No | record_outcome: confidence in the classification. | |
| pm_exception_reason | No | update_solution / declare_pm_exception: needs a PERSON decision (ADR-222, SEN-180 for claims); not ops — see operational_block_reason. | |
| verification_method | No | record_outcome: how the external agent verified the observed result. Required downstream. | |
| contradictions_found | No | record_outcome with an automated verification method: attest you swept the covered claims for contradictory evidence. | |
| outcome_classification | No | record_outcome: alias for `outcome`. | |
| clear_operational_block | No | update_solution: lift it. | |
| criteria_left_out_reason | No | update_solution: why each is out. Required with criteria_left_out. | |
| operational_block_reason | No | update_solution: OPERATIONAL blocker; pair with operational_block_category. Not a decision. | |
| operational_block_category | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already carry destructiveHint=true and readOnlyHint=false, lowering the bar. The description adds useful behavioral context beyond annotations: mutations are self-logged, writes need UUIDs, and declare_pm_exception signals a human-decision requirement. It does not disclose confirmation flows, return behavior, or which specific modes are destructive, but the annotation covers the destructive profile adequately.
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?
The description is compact and scannable, using CURATE/EXECUTE/DOCUMENT/GOVERN to compress a large surface area into a few sentences. It front-loads the tool's identity and every sentence carries some operational guidance. Minor jargon like 'facade' and the all-caps category labels are slightly cryptic, but the density is appropriate for the tool's breadth.
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?
Given 78 parameters, 28 modes, no output schema, and destructive behavior, the description is a minimum-viable orientation rather than a complete invocation guide. It supplies the critical guards (external-only log_decision, UUIDs) and broad mode families, but relies heavily on the schema for mode-specific semantics and does not mention return shapes or confirmation requirements.
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 91%, so the schema already documents most parameters and baseline is 3. The description itself adds little parameter-level meaning beyond the UUID requirement and a hint about declare_pm_exception. Mode-specific parameter relationships are left to the schema's per-parameter descriptions, which is acceptable given the high coverage.
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 identifies a 'PM decision facade' and enumerates concrete action families with verbs and resources: curate evidence/deal-breakers, execute create/update/dispatch/delete Solutions, record Outcomes, and govern living docs/coverage/schedules/knowledge/strategy. It does not name one single operation, but for a 28-mode tool the mode enum supplies the granularity. The write-focused framing also helps separate it from read/analysis sibling tools.
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?
It explicitly delimits log_decision to external decisions ('mutations log themselves') and states a hard prerequisite for writes ('require UUIDs'). It also clarifies one mode's special meaning (declare_pm_exception on claims). It does not provide routing guidance for all 28 modes or name sibling alternatives explicitly, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
atisbo_lookupARead-onlyInspect
Find or open Atisbo entities. Opening snippet:// returns its text and signed attachment URLs. Other modes expose queues, outcomes and implementation context.
| Name | Required | Description | Default |
|---|---|---|---|
| ref | No | open: a handle ref like claim:UUID, snippet://UUID or document://UUID. | |
| mode | Yes | Named by its enum value; mode-specific notes return in meta.guidance after the call. | |
| refs | No | open: several handle refs in one call (max 10). | |
| depth | No | summary (alias: brief) = compact fields; work = full context (default). | |
| limit | No | Max results; each delegated mode clamps to its own ceiling. | |
| query | No | Search text for resolve/context modes. | |
| scope | No | Scope for context mode or living_doc list mode. | |
| state | No | Work-state filter; todo=DESIGNING. | |
| types | No | Entity kinds for resolve mode. | |
| cursor | No | Pagination cursor from a previous response. | |
| map_id | No | Map UUID. | |
| status | No | Status filter — see guidance for what "archived" covers. | |
| node_id | No | Node UUID. | |
| sort_by | No | Solution list order; priority = evidence-weighted priority × PM boost. | |
| anchored | No | Claim list anchoring filter. | |
| claim_id | No | Claim UUID — resolve names with atisbo_lookup mode=resolve first | |
| scope_id | No | Scope UUID when scope is not company. | |
| lifecycle | No | Solution lifecycle filters. | |
| target_id | No | Generic UUID for claim/solution/node/map/doc reads. | |
| claim_state | No | work_queue: the three Claim states shown in the UI. | |
| debug_score | No | For claim mode, include PowerScore factor breakdown. | |
| document_id | No | Living document UUID. | |
| review_kind | No | orphans/claims/solutions: entities not yet checkpointed (atisbo_decide mode=mark_reviewed). | |
| solution_id | No | Solution UUID — resolve names with atisbo_lookup mode=resolve first | |
| action_cursor | No | work_queue: action_queue cursor. Restart from page one after each mutation. | |
| include_stale | No | Include stale claims in claims mode. | |
| dirty_event_id | No | doc_patch_context: loads this dirty event's snippets so the patch can resolve it. | |
| exception_cursor | No | work_queue: pages pm_exceptions, from pm_exceptions_next_cursor. | |
| operational_block_cursor | No | work_queue: pages operational_blocks, from operational_blocks_next_cursor. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds real behavioral context beyond that: opening a snippet returns raw text plus signed attachment URLs, and other modes expose queues/outcomes/implementation context. It does not detail pagination or per-mode side-effect warnings, but for a read-only tool the important behaviors are stated.
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, no filler. The most decision-relevant behavior (snippet:// returns text and signed URLs) is front-loaded, and the second sentence orients the agent to the mode families without enumerating all 24 modes.
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?
For a very complex tool (29 parameters, 24 modes, no output schema), the description is thin but the schema carries essentially all parameter semantics and the annotations carry the safety profile. The description adds the missing top-level map of what the modes do. A fully complete description would name a few high-usage modes and mention pagination, so this is not a 5.
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 100%, so the schema fully documents all 29 parameters, including enums and references. The description adds only a light interpretive gloss ('Other modes expose queues, outcomes and implementation context') and the snippet:// behavior. That is useful but does not materially clarify individual parameters; baseline 3 is appropriate.
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 names a specific verb ('Find or open'), a concrete resource ('Atisbo entities'), and immediately gives a distinguishing behavior ('opening snippet:// returns its text and signed attachment URLs') plus a high-level inventory of alternative modes. This differentiates it from the sibling tools and from the other modes within the oversized enum.
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?
It states when to use the tool (finding/opening entities) and broadly separates read-style lookups from other modes ('Other modes expose queues, outcomes and implementation context'). It does not explicitly name sibling alternatives and exclude them, but the sibling names (atisbo_capture, atisbo_decide, etc.) make the predicate evident. The lack of an explicit 'use X for mutations' statement keeps it from a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
atisbo_mapADestructiveInspect
Compact facade for map work: create/apply maps, generate/edit nodes and edges, anchor claims/snippets, bind metrics, manage claim-snipe maps, regroup claims (merge/split — mode=regroup). Prefer mode=apply for full MECE categorization. TWO WAYS TO PUT A CLAIM ON A NODE, not interchangeable: mode=anchor sets the TAXONOMY category (claims.auto_node_id — one per claim, what the Board groups by), refusing non-taxonomy maps; mode=link_claims adds membership in a STRUCTURAL map (KPI tree, opportunity tree) while the claim keeps its category, refusing taxonomy maps.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | Mode-specific notes return in meta.guidance after the call. | |
| name | No | Map, node, or metric name depending on mode. | |
| note | No | link_claims: why these claims sit under this driver; stored on every link. | |
| label | No | ||
| level | No | Node hierarchy depth. | |
| map_id | No | Map UUID. | |
| anchors | No | Batch claim anchors. | |
| edge_id | No | Edge UUID for delete_edge mode. | |
| node_id | No | Node UUID. | |
| preview | No | regroup: read-only preview of the merge/split. ALWAYS preview before executing. | |
| branches | No | Branches for apply mode. | |
| claim_id | No | Claim UUID — resolve names with atisbo_lookup mode=resolve first | |
| map_type | No | ||
| provider | No | Metric provider, e.g. posthog, amplitude, stripe, manual. | |
| template | No | ||
| bindingId | No | Alias for binding_id. | |
| claim_ids | No | link_claims: claims to place under node_id. | |
| direction | No | regroup: broader merges similar claims, specific splits claims apart. | |
| edge_type | No | ||
| new_level | No | New depth after a move. | |
| parent_id | No | Parent node UUID. | |
| updatedAt | No | Alias for updated_at. | |
| binding_id | No | metric_update: binding to update — from atisbo_lookup mode=node (metrics[].id). | |
| event_name | No | ||
| snippet_id | No | ||
| updated_at | No | metric_update: binding updated_at from your last read; concurrent edits fail STALE_DATA rather than overwrite. | |
| assignments | No | ||
| description | No | Map/node/branch description. ≤2000 chars. | |
| metric_name | No | ||
| metric_type | No | ||
| currentValue | No | Alias for current_value. | |
| target_value | No | ||
| current_value | No | metric_update: today's value; appended as a same-day point when no historical_data (re-entry replaces it, not stacked). | |
| grouping_mode | No | ||
| new_parent_id | No | Move target parent; null promotes to root. | |
| regroup_level | No | For mode=regroup, direction=broader: how aggressively to merge. | |
| source_map_id | No | ||
| branch_options | No | ||
| historicalData | No | Alias for historical_data. | |
| source_node_id | No | ||
| target_node_id | No | ||
| context_answers | No | Grounding answers for AI map generation. | |
| historical_data | No | metric_update: full series REPLACEMENT. Omit to append current_value as a same-day point instead. | |
| time_range_days | No | ||
| target_threshold | No | For mode=regroup, direction=specific: split similarity threshold (0.50–0.98). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already supply readOnlyHint=false and destructiveHint=true. The description adds meaningful behavioral detail beyond that: mode=anchor sets the taxonomy category with one category per claim, refusing non-taxonomy maps, while mode=link_claims adds structural membership without changing the claim's category and refuses taxonomy maps. This helps the agent predict refusals and side effects without contradicting the 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?
The description is dense but every sentence earns its place: a one-line capability summary, a recommendation for 'apply', then the critical anchor-vs-link distinction. It is appropriately sized for a 17-mode facade, though it could be slightly more scannable with bullet separation.
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?
For a tool with 45 parameters, 17 modes, and no output schema, the description gives solid orientation but leaves several modes under-explained (e.g., claim-snipe sync, edge creation, metric updates). The schema and the in-schema note about 'meta.guidance' help fill gaps, but an agent would still need to discover mode-specific behaviors through experimentation.
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?
With 64% schema coverage, the schema carries much of the parameter documentation, but the description adds high-value semantics for the central 'mode' parameter and related claim-placement fields. It clarifies what 'anchor' vs 'link_claims' actually do to a claim's category and explains the purpose of 'regroup'. The remaining parameters are reasonably documented in the schema, so the description compensates where it matters most.
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 opens with a clear scope ('Compact facade for map work') and enumerates concrete actions: create/apply maps, edit nodes and edges, anchor claims, bind metrics, manage claim-snipe maps, and regroup claims. It is broad because the tool is a multi-mode facade, but it still names specific resources and verbs, and the domain is clearly distinct from the sibling atisbo_ tools.
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 routing guidance: 'Prefer mode=apply for full MECE categorization' and contrasts the two claim-placement modes, stating they are 'not interchangeable' and specifying which map types each mode accepts or refuses. It does not discuss when to prefer this tool over sibling tools, but within the tool's many modes it provides actionable direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
atisbo_orientARead-onlyInspect
Workspace orientation. Modes: snapshot (overview), whats_new (delta), strategy, integrations. Continue the user's existing workflow; never create a parallel backlog. Living docs cite snippet:// refs: open cited Signals with atisbo_lookup mode=open, use claim depth=work for the full corpus, and atisbo_analyze for aggregates. Edit via atisbo_lookup mode=doc_patch_context then atisbo_capture mode=patch_artefact.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | snapshot (alias: workspace) uses task; whats_new uses since_checkpoint; strategy/integrations need no IDs. | |
| task | No | triage = untriaged inbox; planning = confirmed opportunities by priority; operations = signals & integrations; executive = KPIs & strategy. | |
| depth | No | summary (alias: brief) = compact fields; work = full context (default). | |
| limit | No | Max items. snapshot clamps to 20; whats_new to 50. | |
| cursor | No | Pagination cursor from a previous response. | |
| since_checkpoint | No | ISO 8601 checkpoint for delta reads; invalid values are ignored. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark the tool readOnly/non-destructive, so the bar is lower. The description adds behavioral context: it is an orientation/snapshot operation that should continue the existing workflow, never create a parallel backlog, and edits are routed through other tools (lookup then capture), implying orient itself is purely informational. No contradiction with 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?
Three sentences front-load the core modes before giving workflow routing, and each sentence carries information. It is dense and slightly jargon-heavy ('claim depth', 'parallel backlog'), but not bloated or redundant.
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?
For a read-only, parameter-rich tool with full schema coverage, the description provides enough operational context, including mode-specific behaviors and how to continue with sibling tools. The absence of any mention of return format is a minor gap since no output schema exists, but the mode semantics and schema largely compensate.
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 schema covers 100% of parameters, including enum meanings and limit clamp behavior, so the baseline is 3. The description's mode list and 'depth=work for the full corpus' hint lightly supplement the schema but mostly restate it, so no higher score is earned.
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?
States a distinct action, 'Workspace orientation,' and enumerates four modes with parenthetical meanings (snapshot overview, whats_new delta, strategy, integrations), so an agent can identify the resource and primary intent. It does not sharply contrast against siblings like atisbo_map or atisbo_lookup, but the sibling-routing sentences imply orient is the top-level orientation entry point.
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 mentions continuing the user's existing workflow and never creating a parallel backlog, and it directs follow-on actions to atisbo_lookup, atisbo_analyze, and atisbo_capture. However, it does not explicitly state when orient should be preferred over siblings or list exclusions, so the guidance is more workflow context than crisp when-to-use/alternatives guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
atisbo_supportARead-onlyInspect
Diagnose Atisbo, including "I connected a source and nothing appeared", "I sent text and no opportunity formed", or "my data is missing". Checks integrations, ingestion, clustering, gates and key scope, then returns a playbook. share_report files only diagnostics plus your text—never feedback, customer names or document bodies. Use atisbo_lookup/atisbo_analyze for backlog.
| Name | Required | Description | Default |
|---|---|---|---|
| area | No | Narrows which checks run. Omit when unsure — the full set costs the same round-trip. | |
| problem | Yes | What went wrong, in your words. Do NOT paste customer feedback, document bodies or credentials — this string IS filed if a report is created. | |
| share_report | No | File a verdict-only report when the problem is not caller-side; false = diagnose only. | |
| observed_error | No | The failing error string VERBATIM — diagnostics cannot see the failed call, so this is often the only evidence. |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| meta | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark the tool read-only and non-destructive; the description adds meaningful behavioral detail: it returns a playbook, runs checks across integrations/ingestion/clustering, and discloses that share_report files only diagnostics plus the user's text, never customer names or document bodies. No contradiction with 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?
Three sentences with no waste: the first states purpose and examples, the second covers behavior and privacy, the third handles sibling routing. Information is front-loaded and every sentence adds value.
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?
For a 4-parameter diagnostic tool with a rich output schema and read-only annotations, the description covers scope, behavior, privacy, and alternatives. An agent has enough information to decide when to call it and what to expect.
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 100%, so the baseline applies. The main description adds little parameter-specific meaning beyond the schema, though it reinforces the privacy constraint on share_report. The schema already explains problem, area, share_report, and observed_error well.
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 opens with a specific verb and resource ('Diagnose Atisbo'), gives three concrete symptom examples, and lists the internal checks it performs. It explicitly routes backlog work to atisbo_lookup/atisbo_analyze, so an agent can distinguish this from sibling tools.
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?
It states what kinds of problems should be sent here ('I connected a source and nothing appeared', 'my data is missing') and explicitly identifies the alternative for backlog cases ('Use atisbo_lookup/atisbo_analyze for backlog'). This is clear when-to-use guidance with a named exclusion.
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. Dates show when Glama detected each change.
1 tool update
- Changed
atisbo_capture8 fields changed- added
Input schema / properties / attachmentsAdded value: +{ + "description": "1-5 files; 3 MB combined.", + "items": { + "description": "PNG/JPG/WebP/PDF; no extraction.", + "properties": { + "data_base64": { + "description": "Base64, ≤4200000 chars.", + "maxLength": 4200000, + "minLength": 4, + "type": "string" + }, + "file_name": { + "description": "Name, ≤200 chars.", + "maxLength": 200, + "minLength": 1, + "type": "string" + }, + "mime_type": { + "enum": [ + "image/png", + "image/jpeg", + "image/webp", + "application/pdf" + ], + "type": "string" + } + }, + "required": [ + "data_base64", + "file_name", + "mime_type" + ], + "type": "object" + }, + "maxItems": 5, + "minItems": 1, + "type": "array" +} - changed
Input schema / properties / capture_mode / descriptionPrevious value: -"Routing; the signals_only default creates no reusable knowledge unless requested."New value: +"Knowledge routing; default signals_only." - changed
Input schema / properties / change_summary / descriptionPrevious value: -"Public change description for update_artefact/patch_artefact (patch_artefact accepts note as fallback)."New value: +"Artefact change summary." - changed
Input schema / properties / content / descriptionPrevious value: -"Document content — update_artefact fully replaces the doc."New value: +"Knowledge or artefact content." - changed
Input schema / properties / evidence / descriptionPrevious value: -"add_artefact_evidence fields; document_id goes at top level. title aliases label, provider aliases kind."New value: +"Evidence fields; document_id is top-level." - changed
Input schema / properties / items / descriptionPrevious value: -"signal_batch; max 100 items. Each needs text + client_request_id."New value: +"signal_batch, max 100." - changed
Input schema / properties / scope_id / descriptionPrevious value: -"Required for node, claim, solution, and map scopes."New value: +"Target scope UUID." - changed
Input schema / properties / text / descriptionPrevious value: -"Raw feedback/signal text (signal mode)."New value: +"Signal text."
8 tool updates
- First observed
atisbo_analyze - First observed
atisbo_capture - First observed
atisbo_connect - First observed
atisbo_decide - First observed
atisbo_lookup - First observed
atisbo_map - First observed
atisbo_orient - First observed
atisbo_support
Frequently Asked Questions
Claiming proves that you control a remote MCP connector. It does not move, proxy, or interrupt the server.
Open the connector listing, choose Claim ownership, and sign in to Glama.
Complete one verification method:
GitHub identity — fastest for official registry listings. For a namespace such as
io.github.alice/server, link the matching GitHub user, then choose Claim with GitHub. An organization namespace such asio.github.acme/serveralso needs that organization to have installed the Glama AI GitHub App and approved its permissions, because GitHub discloses organization membership only to apps it has installed. Use HTTP or DNS when it has not.HTTP challenge — works when you can deploy a public file. Generate a token, publish the exact JSON Glama shows at
/.well-known/glama.jsonon the same origin as the connector, then choose Check HTTP challenge.DNS challenge — works when you control DNS but cannot change the server. Generate a token, create the exact TXT record Glama shows, wait for it to propagate, then choose Check DNS challenge.
After verification, Glama sends a confirmation email and gives you access to listing details, thumbnails, health checks, and analytics. Keep the HTTP file or DNS record in place: Glama periodically checks it and ownership remains verified while the token is discoverable.
The HTTP ownership file has this structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"claim": "glama_claim_..."
}Claim tokens are opaque, stable, and bound to the signed-in Glama account. They contain no email address or other personal information. If Glama can no longer discover a verified HTTP or DNS token, it starts a seven-day grace period before removing claim-based access. Restore the same token during that period to keep ownership verified. Never publish an email address, Glama session token, GitHub token, or connector credential as ownership proof.
If verification fails, confirm that you copied the current token exactly. The HTTP file must be public, return valid JSON with a successful HTTP response, and stay on the connector's origin. DNS changes may need more time to propagate. A claim cannot transfer to a different origin or hostname: if the connector target changes, Glama starts the grace period and the new target must be claimed separately after the previous claim is released.
For a connector linked to the official MCP Registry, registry updates continue to replace its name, description, and URL by default. After claiming, open Manage connector and enable Use Glama listing details as the source of truth if edits made on Glama should be preserved. Categories and thumbnails are always managed on Glama; registry linkage and technical connection settings continue to sync.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
To improve your MCP server's ranking:
Claim ownership of the server listing
Complete the server profile with an accurate description and thumbnail
Provide a test profile so Glama can connect to and evaluate the server
Keep tool definitions clear and complete to earn a high Tool Definition Quality Score (TDQS)
Route real usage through the Glama Gateway; more recorded successful server uses also improve the ranking
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Connectors
- OctopadOAuthapp.octopad
The back-office workspace for your team's AIs: tasks, knowledge and context shared over MCP.
Your product team's shared strategic memory — an MCP server your AI tools reason over.
Work management where AI agents are first-class members: tasks, projects, memory over hosted MCP
AI research on companies and industries — one MCP tool per research domain.
Related MCP Servers
- FlicenseAqualityBmaintenanceLocal-first MCP tools for AI-assisted work receipts, workspace maps, routing ledgers, measured verdicts, and shared state verification across the five Project Telos flagships.232-
- AlicenseNot gradedqualityCmaintenanceAI-native project management with persistent memory for coding agents. 17 MCP tools for features, stories, sprints, architecture decisions, knowledge base, and session tracking.3MIT
- AlicenseBqualityCmaintenanceShared workspace your AI agents write to. CMMN case management with 184+ MCP tools: cases, tasks, event-driven CMMN workflows with sentries, persistent memory with semantic search, billing and invoicing. OAuth or token auth; cloud-hosted remote MCP endpoint.10047MIT
- AlicenseNot gradedqualityAmaintenanceEnables AI agents and humans to collaboratively manage kanban boards and Markdown documentation via MCP tools, with stable item keys, revision-safe editing, and full audit trails.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.
TDQS
Each tool occupies a distinct functional domain: analysis, capture, connections, decisions, lookup, mapping, orientation, and support. Overlapping cases are explicitly disambiguated in descriptions, such as analyze-for-aggregates vs lookup-for-single-entities and the two non-interchangeable claim-to-node modes in map.
All tools follow the same atisbo_<verb> pattern with lowercase snake_case and no mixed conventions. The prefix makes the server identity clear, and every tool name is a concise, predictable verb-like facade.
Eight tools is a well-scoped count for a broad product surface: each tool is a compact facade grouping related modes rather than a scattered collection of one-off operations. There are no trivial or redundant tools.
The set covers the core workflow end to end: connect sources, capture signals, look up and analyze entities, map claims, make decisions, orient the workspace, and diagnose failures. Cross-references between tools fill in supporting steps like opening snippet refs and patching living docs, leaving no obvious dead ends.