Skip to main content
Glama
paulieb89

What Do They Know

by paulieb89

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
WDTK_API_KEYNoEnables create_request_record and update_request_state write tools

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
extensions
{
  "io.modelcontextprotocol/ui": {}
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
build_request_urlA

Build a prefilled WhatDoTheyKnow request URL.

get_request_feed_itemsA

Return parsed Atom feed entries for a specific FOI request as structured objects.

Use this instead of reading the raw wdtk://requests/{slug}/feed resource when you want structured AtomEntry objects rather than raw XML. Each entry's link field contains the request URL; use the slug from that URL with request_json or authority_json for full detail.

search_request_eventsA

Search WhatDoTheyKnow's feed-based event index and return structured results.

Call this to find FOI requests matching a query expression. Returns up to limit AtomEntry objects. Use the link field of each result as the next navigation step — extract the request slug and call the wdtk://requests/{slug} resource or get_request_feed_items for full detail.

Example expressions: status:successful body:"Liverpool City Council" (variety:sent OR variety:response) status:successful

search_authoritiesA

Search WhatDoTheyKnow public authorities by name.

Returns up to limit authorities whose name or short_name contains query (case-insensitive). Use the slug field with authority_json or build_request_url as the next step.

Example: search_authorities("Liverpool") → slug "liverpool_city_council" Then: authority_json with that slug, or build_request_url with it.

create_request_recordA

Create a request through the experimental write API.

Requires WDTK_API_KEY in the server environment.

update_request_stateA

Update the user-assessed state of a request through the experimental write API.

Requires WDTK_API_KEY in the server environment.

list_promptsA

List all available prompts.

Returns JSON with prompt metadata including name, description, and optional arguments.

get_promptA

Get a prompt by name with optional arguments.

Returns the rendered prompt as JSON with a messages array. Arguments should be provided as a dict mapping argument names to values.

Prompts

Interactive templates invoked by user choice

NameDescription
draft_foi_requestDraft a narrow, specific FOI request suitable for WhatDoTheyKnow.

Resources

Contextual data attached and managed by the client

NameDescription
all_authorities_csvDownload the complete CSV of every WhatDoTheyKnow public authority. WARNING: this is a large payload — use search_authorities(query) for targeted lookups, or authority_json for a specific body. Only call this when you need the full dataset (e.g. bulk analysis or seeding a list).

TDQS

B3.4/5.0

Scored across 8 tools

Disambiguation3/5

Tools are mostly distinct, but the presence of prompt-related tools (get_prompt, list_prompts) alongside FOI request tools creates ambiguity. An agent may confuse get_prompt as related to requests, and search_request_events and get_request_feed_items overlap in purpose.

Naming Consistency5/5

All tool names consistently follow the verb_noun pattern in snake_case (e.g., build_request_url, search_authorities). No mixing of styles or irregular patterns.

Tool Count5/5

8 tools is a reasonable number for an FOI request-focused server. It covers key operations without being overwhelming or too sparse.

Completeness2/5

The tool surface has significant gaps: there is no tool to directly retrieve full request details by slug, despite being referenced in descriptions. The lifecycle is incomplete without a 'get request' or 'list requests' tool.

Maintenance

ActivityStale
ResponsivenessUnresponsive