# Annsa

> AI agent management: choose what to build, direct every agent from one plan, and learn as you go.

- name: ai.annsa/annsa
- version: 1.0.4
- connection class: R0 (autonomous)
- trust: 83/100 flags: no-repository
- quality: 96/100 (new)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/ai.annsa%2Fannsa
- tools: https://api.protogrid.dev/v1/servers/ai.annsa%2Fannsa/tools

**An agent can connect right now, no human step.** Remote endpoint, no authentication, reachable on the last probe.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "annsa": {
      "type": "http",
      "url": "https://app.annsa.ai/mcp"
    }
  }
}
```


## Trust

- hygiene: 80
- liveness: 100
- freshness: 100
- provenance: 55
- drivers: +dns-namespace +website +reachable +uptime-100% +updated-1d-ago -no-repository
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 96/100 (new)

### protocol: 100 (weight 25)

- pass `protocol.modern`: supports 2026-07-28 (server/discover)
- pass `protocol.stateless`: answers without a session
- pass `protocol.transport`: streamable HTTP
- pass `protocol.list_ttl`: tool list is cacheable (ttlMs 300000)

### authorization: n/a (weight 15)

- n/a `auth.prm`, `auth.as_metadata`, `auth.cimd`: no remote uses OAuth
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 93 (weight 30)

- pass `tools.descriptions`: every tool has a description
- pass `tools.description_length`: descriptions are concise
- pass `tools.schemas`: every tool has an object input schema
- pass `tools.annotations`: 8 of 8 tools declare readOnlyHint or destructiveHint
- warn `tools.directory_hints`: 5 of 8 tools declare all four hints; missing: annsa_ask (destructiveHint, idempotentHint); annsa_spec (destructiveHint, idempotentHint); annsa_priorities (destructiveHint, idempotentHint)
- pass `tools.token_cost`: about 5,608 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

### stability: n/a (weight 15)

- n/a `stability.changes`, `stability.rug_pull`: tool history recorded for 0 of the 7 days needed

### dependencies: n/a (weight 15)

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: deps.dev does not know annsa@1.0.4

- tools: 8, about 5,608 tokens to load them all
- tool set hash: 5ae8b0b97fb2f7c86321228dd9840ccd
- badge: [![protogrid quality](https://protogrid.dev/badge/ai.annsa/annsa.svg)](https://protogrid.dev/servers/ai.annsa/annsa)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

_No tool definition changes recorded._

## Dependencies

- npm annsa@1.0.4: unknown

Dependency graphs from deps.dev; advisories from OSV.dev, including the GitHub Advisory Database and the PyPI Advisory Database; all CC BY 4.0.

## Remotes

- https://app.annsa.ai/mcp (streamable-http, auth none, reachable true, uptime30d 1)

## Packages

- npm annsa@1.0.4

## Tools (8)

- `annsa_ask`: Answers a question about your feedback data (the default): search and synthesis across feedback, priorities, specs and outcomes, such as rankings, 'what can I safely park?', 'what should I ship next?', 'what am I missing?', 'did feedback go quiet after we shipped X?'. about='annsa': how Annsa works, from its docs, or a file with `topic`. about='surveys': every survey, where it runs and its response count. about='customer': one person's feedback, priorities, ships, transcripts and account facts; give `customer` (name, email or id), and `account` to narrow; an ambiguous name returns candidates. A read. Names and quotes follow the workspace's per-surface setting. annsa.help and annsa.surveys are older names for two modes. [production · app.annsa.ai]
- `annsa_board`: Arrange the board: stage, severity, merge, regroup, park, correct, bets, assign, retract, pick, cut, direction. Returns the change and its undo. Skill: annsa-working (annsa.ask topic=working). [production · app.annsa.ai]
- `annsa_decide`: Answer a Needs you question, sign a decision, approve or dismiss a proposed spec update, propose or retire a principle. Skill: annsa-working (annsa.ask topic=working). [production · app.annsa.ai]
- `annsa_file`: Put new rows into the record: feedback or a finding, a priority from a title, a transcript, a direction doc's lines. Returns where each row went. Skill: annsa-working (annsa.ask topic=working). [production · app.annsa.ai]
- `annsa_priorities`: Lists the ranked active priorities (open, ready, building) with trend, confidence and evidence counts. `stage` reads shipped, shared or closed instead. `weekly: true` returns the weekly digest; `view: 'radar'` what is rising, shipped and quiet. `priority_number` returns one row, `mine: true` this seat's rows, `picked: true` a person's picked list, `release_number` one release. Rows carry `next_action` when something waits on an agent; the spec carries the open asks (`decision`), principles and authority; a shipped priority that customers report again comes back open with `came_back`. A read. [production · app.annsa.ai]
- `annsa_share`: Tell the customers who asked that their priority shipped, by email or the widget. An email cannot be unsent. Skill: annsa-working (annsa.ask topic=working). [production · app.annsa.ai]
- `annsa_spec`: Full engineering spec for a priority. The document has 5 sections: Problem, Signals and direction, What to build, Files to touch, Done When. Alongside it, as linked records rather than prose: Verification status, Decision, Evidence, Activity, Details. Takes priority_number, priority_id or spec_id. The read is short: Problem, What to build, Done When, `ruled_out`, and `decision` (the open asks), `authority` (what a sign delegated: may_decide, must_come_back, answered_by) and `principles` when a person set them; an escalate on a may_decide topic is not raised. `include_signals` adds Signals and direction, Files to touch and `evidence`; `include: repo_rules` adds the repo's agent files. Pending section changes come back as `updates`. `batch: true` exports specs as markdown by stage and ship date; `status: 'shipped'` with no id lists what shipped, and empty means nothing has. `investigate: true` returns a deep dive instead: trajectory, linked feedback, memory, related briefs. A read. [production · app.annsa.ai]
- `annsa_work`: Do the work on a priority, and settle routine asks with undo. Ship records completion; it deploys nothing. Skill: annsa-working (annsa.ask topic=working). [production · app.annsa.ai]
