one_piece
Find detailed information about One Piece anime characters by entering their unique character ID.
Instructions
Herramienta para buscar informacion sobre personajes de One Piece
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Id del personaje |
Implementation Reference
- onePiece.ts:17-67 (handler)Handler function for 'one_piece' tool. Fetches One Piece character data by ID from API or lists all characters if ID is a filter keyword like 'lista' or 'all'.async ({ id }) => { const filtros = ["lista", "personajes", "todos", "all", "*", "characters"]; if(filtros.includes(id)) { try { const response = await axios.get(`https://onepieceapi-50cm.onrender.com/personajes`); const data = response.data; return { content: [ { type: 'text', text: `Información de los personajes: ${JSON.stringify(data)}`, } ] }; } catch (e) { return { content: [ { type: 'text', text: `Error al buscar el personaje: ${e.message}`, } ], isError: true }; } } else { try { const response = await axios.get(`https://onepieceapi-50cm.onrender.com/personaje/${id}`); const data = response.data; return { content: [ { type: 'text', text: `Información del personaje: ${JSON.stringify(data)}`, } ] }; } catch (e) { return { content: [ { type: 'text', text: `Error al buscar el personaje: ${e.message}`, } ], isError: true }; } } }
- onePiece.ts:14-16 (schema)Input schema for 'one_piece' tool defining the required 'id' parameter as a string.{ id: z.string().min(1, 'El id del personaje es requerido').describe('Id del personaje'), },
- onePiece.ts:11-68 (registration)Registration of the 'one_piece' tool on the MCP server, including name, description, input schema, and handler.server.tool( 'one_piece', 'Herramienta para buscar informacion sobre personajes de One Piece', { id: z.string().min(1, 'El id del personaje es requerido').describe('Id del personaje'), }, async ({ id }) => { const filtros = ["lista", "personajes", "todos", "all", "*", "characters"]; if(filtros.includes(id)) { try { const response = await axios.get(`https://onepieceapi-50cm.onrender.com/personajes`); const data = response.data; return { content: [ { type: 'text', text: `Información de los personajes: ${JSON.stringify(data)}`, } ] }; } catch (e) { return { content: [ { type: 'text', text: `Error al buscar el personaje: ${e.message}`, } ], isError: true }; } } else { try { const response = await axios.get(`https://onepieceapi-50cm.onrender.com/personaje/${id}`); const data = response.data; return { content: [ { type: 'text', text: `Información del personaje: ${JSON.stringify(data)}`, } ] }; } catch (e) { return { content: [ { type: 'text', text: `Error al buscar el personaje: ${e.message}`, } ], isError: true }; } } } )