relentless_read
Read a specific entry from a Notion database using its slug to retrieve full content and properties for content management.
Instructions
Read a specific entry from a Notion database by its slug. Returns the full entry with all properties and content.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| database | Yes | The database name (e.g., "blog", "docs", "leads") | |
| slug | Yes | The slug of the entry to read (e.g., "getting-started", "hello-world") |
Implementation Reference
- src/index.ts:429-452 (handler)Handler for the 'relentless_read' tool. Validates input parameters (database and slug), logs the action, constructs the Relentless API endpoint for reading the specific entry, calls the relentlessRequest helper, and returns the result as formatted JSON text content.case 'relentless_read': { const { database, slug } = args as { database: string; slug: string } if (!database || !slug) { throw new McpError( ErrorCode.InvalidParams, 'Missing required parameters: database and slug' ) } console.error(`[${new Date().toISOString()}] Reading ${database}/${slug}`) const endpoint = `${RELENTLESS_API_BASE}/api/v1/public/db/${database}/read/${slug}` const result = await relentlessRequest(endpoint) return { content: [ { type: 'text', text: JSON.stringify(result, null, 2), }, ], } }
- src/index.ts:248-262 (schema)Input schema defining the parameters for the relentless_read tool: database (string) and slug (string), both required.inputSchema: { type: 'object', properties: { database: { type: 'string', description: 'The database name (e.g., "blog", "docs", "leads")', }, slug: { type: 'string', description: 'The slug of the entry to read (e.g., "getting-started", "hello-world")', }, }, required: ['database', 'slug'], },
- src/index.ts:244-263 (registration)Registration of the 'relentless_read' tool in the ListToolsRequestHandler response. Includes the tool name, description, and input schema.{ name: 'relentless_read', description: 'Read a specific entry from a Notion database by its slug. Returns the full entry with all properties and content.', inputSchema: { type: 'object', properties: { database: { type: 'string', description: 'The database name (e.g., "blog", "docs", "leads")', }, slug: { type: 'string', description: 'The slug of the entry to read (e.g., "getting-started", "hello-world")', }, }, required: ['database', 'slug'], }, },