# get_story

Retrieve detailed information about a specific story bundle by its ID, including the full timeline of related events.

Agent View of the PolicyLayer registry record for `get_story`. HTML page: https://policylayer.com/tools/com-govbase-govbase/get-story

## Facts

- Tool: `get_story`
- Server: Govbase (`https://api.govbase.com/mcp`) — https://policylayer.com/tools/com-govbase-govbase.md
- Homepage: https://github.com/govbase-inc/govbase
- Risk category: Read (Low risk)
- Registry record: grade D, identity unverified
- Server auth posture: open
- Server rate-limited: yes
- Parameters: 1 (1 required)
- Recommended policy verdict: Allowed

## Parameters

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `bundle_id` | string | yes | Story bundle ID |

Parameters from the server's own tool schema.

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "get_story",
    "arguments": {
      "bundle_id": "<bundle_id>"
    }
  }
}
```

## Why get_story is rated Low

This tool queries and retrieves narrative/timeline data about stories in the Govbase public policy dataset. No data is created, modified, or deleted. The blast radius of misuse is minimal — an attacker gains only access to information already intended to be public civic data. Severity is low because reading policy stories poses no direct operational, financial, or destructive risk.

From the tool's own definition: "Tool name is 'get_story' and description states 'Retrieve detailed information' — classic Read pattern. The verb 'retrieve' and absence of mutation language (create, delete, modify) confirm no side effects."

## Use case

AI agents call get_story to retrieve information from Govbase without modifying anything. It is typically the context-gathering step in research, monitoring, and reporting workflows, before the agent takes action elsewhere.

## Recommended policy (PolicyLayer)

Verdict: **Allowed**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches Govbase:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "get_story": {}
  }
}
```

## Other tools on Govbase (11)

- `get_effort` — Read — https://policylayer.com/tools/com-govbase-govbase/get-effort.md
- `get_member` — Read — https://policylayer.com/tools/com-govbase-govbase/get-member.md
- `get_member_vote` — Read — https://policylayer.com/tools/com-govbase-govbase/get-member-vote.md
- `get_policy` — Read — https://policylayer.com/tools/com-govbase-govbase/get-policy.md
- `get_policy_text` — Read — https://policylayer.com/tools/com-govbase-govbase/get-policy-text.md
- `get_representatives` — Read — https://policylayer.com/tools/com-govbase-govbase/get-representatives.md
- `get_stories` — Read — https://policylayer.com/tools/com-govbase-govbase/get-stories.md
- `get_voter_info` — Read — https://policylayer.com/tools/com-govbase-govbase/get-voter-info.md
- `resolve_effort` — Read — https://policylayer.com/tools/com-govbase-govbase/resolve-effort.md
- `search_members` — Read — https://policylayer.com/tools/com-govbase-govbase/search-members.md
- `search_policies` — Read — https://policylayer.com/tools/com-govbase-govbase/search-policies.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=com-govbase-govbase · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/com-govbase-govbase
