get_document_id_from_title
Retrieve document IDs from Outline wiki by searching with document titles, enabling efficient document management and access.
Instructions
Find document ID by title.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | ||
| collectionId | No |
Implementation Reference
- src/lib/handlers/search.ts:38-54 (handler)The handler function that implements the tool logic: searches Outline API for documents matching the query title, filters by exact match, and returns document IDs, titles, and URLs.async get_document_id_from_title(args: GetDocumentIdFromTitleInput) { const { data } = await apiCall(() => apiClient.post<SearchResult[]>('/documents.search', { query: args.query, collectionId: args.collectionId, limit: 5, }) ); return (data || []) .filter((item) => item.document.title.toLowerCase().includes(args.query.toLowerCase())) .map((item) => ({ id: item.document.id, title: item.document.title, url: buildUrl(baseUrl, item.document.url), })); },
- src/lib/schemas.ts:28-31 (schema)Zod schema defining the input parameters: required 'query' string and optional 'collectionId' UUID.export const getDocumentIdFromTitleSchema = z.object({ query: z.string().min(1, 'Query is required'), collectionId: collectionId.optional(), });
- src/lib/tools.ts:41-45 (registration)Registers the MCP tool definition, providing name, description, and linking to the Zod schema for JSON Schema conversion.createTool( 'get_document_id_from_title', 'Find document ID by title.', 'get_document_id_from_title' ),
- src/lib/schemas.ts:214-214 (registration)Maps the tool name to its input schema in the central toolSchemas object used by tool definitions.get_document_id_from_title: getDocumentIdFromTitleSchema,
- src/lib/schemas.ts:172-172 (schema)TypeScript type inferred from the schema for use in handler function signatures.export type GetDocumentIdFromTitleInput = z.infer<typeof getDocumentIdFromTitleSchema>;