Skip to main content
Glama
ewilderj

Fountain Pen Ink MCP Server

get_ink_details

Retrieve comprehensive details about a specific fountain pen ink using its unique identifier to access color information and specifications.

Instructions

Get complete information about a specific ink

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
ink_idYesThe unique identifier for the ink

Implementation Reference

  • The primary handler function implementing the get_ink_details tool logic. It looks up the ink by ID in the loaded inkColors and metadata arrays, generates a detailed result using createSearchResult, computes hex color, family, and description, and returns a formatted MCPTextResponse.
    private getInkDetails(inkId: string): MCPTextResponse { const inkColor = this.inkColors.find((ink) => ink.ink_id === inkId); const metadata = this.getInkMetadata(inkId); if (!inkColor) { throw new Error(`Ink not found: ${inkId}`); } const result = createSearchResult(inkColor, metadata); return { content: [ { type: 'text', text: JSON.stringify( { ink_details: result, hex_color: rgbToHex(inkColor.rgb), // Now actually RGB! color_family: getColorFamily(inkColor.rgb), color_description: getColorDescription(inkColor.rgb), }, null, 2, ), }, ], } satisfies MCPTextResponse;
  • src/index.ts:178-191 (registration)
    Tool registration entry in the ListToolsRequestSchema handler, defining the tool name, description, and input schema for get_ink_details.
    { name: 'get_ink_details', description: 'Get complete information about a specific ink', inputSchema: { type: 'object', properties: { ink_id: { type: 'string', description: 'The unique identifier for the ink', }, }, required: ['ink_id'], }, },
  • Input schema definition for the get_ink_details tool, specifying the required 'ink_id' string parameter.
    inputSchema: { type: 'object', properties: { ink_id: { type: 'string', description: 'The unique identifier for the ink', }, }, required: ['ink_id'], },
  • Dispatch handler in the CallToolRequestSchema switch statement that routes calls to get_ink_details to the private getInkDetails method.
    case 'get_ink_details': return this.getInkDetails(args.ink_id as string);
  • Helper method used by getInkDetails to retrieve search metadata for the ink by ID.
    private getInkMetadata(inkId: string): InkSearchData | undefined { return this.inkSearchData.find((item) => item.ink_id === inkId); }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ewilderj/inks-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server