Get Full Cached Metadata
get_metadata_fullRetrieve comprehensive MantisBT metadata including all projects with full details, user lists, versions, categories, and tags. Automatically syncs if cache is outdated.
Instructions
Return the complete raw MantisBT metadata cache: all projects with full fields, and per-project lists of users, versions, categories, plus all tags.
If the cache does not exist or has expired (default TTL: 24 hours), it will automatically sync first. Use sync_metadata to force a refresh. For a lightweight overview use get_metadata instead.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- src/tools/metadata.ts:291-302 (handler)The handler for 'get_metadata_full', which loads metadata from the cache or fetches and caches it if missing or invalid, then returns the full metadata as a JSON string.
async () => { try { const data: CachedMetadata = await cache.loadIfValid() ?? await fetchAndCacheMetadata(client, cache); return { content: [{ type: 'text', text: JSON.stringify(data) }], }; } catch (error) { const msg = error instanceof Error ? error.message : String(error); return { content: [{ type: 'text', text: errorText(msg) }], isError: true }; } } ); - src/tools/metadata.ts:276-290 (registration)Registration of the 'get_metadata_full' tool, including its schema and description.
server.registerTool( 'get_metadata_full', { title: 'Get Full Cached Metadata', description: `Return the complete raw MantisBT metadata cache: all projects with full fields, and per-project lists of users, versions, categories, plus all tags. If the cache does not exist or has expired (default TTL: 24 hours), it will automatically sync first. Use sync_metadata to force a refresh. For a lightweight overview use get_metadata instead.`, inputSchema: z.object({}), annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true, }, },