mirror of
https://github.com/ArthurDanjou/artmcp.git
synced 2026-01-14 14:44:21 +01:00
Refactor experiences data format from JSON to Markdown
- Updated content.config.ts to change experiences source from JSON to Markdown files. - Deleted JSON files for experiences: artdanjproduction, erisium, picard, and sevetys. - Created corresponding Markdown files for each experience with structured front matter. - Added new API endpoints for fetching experiences and projects in Markdown format. - Removed unused ping API endpoint. - Updated package.json with new dependencies for AI SDK and Zod. - Added new resume files in PDF format for M1 2026 in English and French.
This commit is contained in:
10
server/api/experiences.get.ts
Normal file
10
server/api/experiences.get.ts
Normal file
@@ -0,0 +1,10 @@
|
||||
import { queryCollection } from '@nuxt/content/server'
|
||||
|
||||
export default defineCachedEventHandler(async (event) => {
|
||||
return await queryCollection(event, 'experiences')
|
||||
.where('extension', '=', 'md')
|
||||
.all()
|
||||
}, {
|
||||
name: 'experiences-list',
|
||||
maxAge: 3600 // 1 hour
|
||||
})
|
||||
@@ -1,5 +0,0 @@
|
||||
export default eventHandler(() => {
|
||||
return {
|
||||
body: 'pong'
|
||||
}
|
||||
})
|
||||
10
server/api/projects.get.ts
Normal file
10
server/api/projects.get.ts
Normal file
@@ -0,0 +1,10 @@
|
||||
import { queryCollection } from '@nuxt/content/server'
|
||||
|
||||
export default defineCachedEventHandler(async (event) => {
|
||||
return await queryCollection(event, 'projects')
|
||||
.where('extension', '=', 'md')
|
||||
.all()
|
||||
}, {
|
||||
name: 'projects-list',
|
||||
maxAge: 3600 // 1 hour
|
||||
})
|
||||
3
server/api/skills.get.ts
Normal file
3
server/api/skills.get.ts
Normal file
@@ -0,0 +1,3 @@
|
||||
export default defineEventHandler(async (event) => {
|
||||
return 'Hello Nitro'
|
||||
})
|
||||
3
server/api/uses.get.ts
Normal file
3
server/api/uses.get.ts
Normal file
@@ -0,0 +1,3 @@
|
||||
export default defineEventHandler(async (event) => {
|
||||
return 'Hello Nitro'
|
||||
})
|
||||
32
server/routes/mcp.ts
Normal file
32
server/routes/mcp.ts
Normal file
@@ -0,0 +1,32 @@
|
||||
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js'
|
||||
import { StreamableHTTPServerTransport } from '@modelcontextprotocol/sdk/server/streamableHttp.js'
|
||||
|
||||
function createServer() {
|
||||
const server = new McpServer({
|
||||
name: 'nuxt-ui',
|
||||
version: '1.0.0'
|
||||
})
|
||||
|
||||
server.registerResource('', '', )
|
||||
|
||||
return server
|
||||
}
|
||||
|
||||
export default defineEventHandler(async (event) => {
|
||||
const server = createServer()
|
||||
|
||||
const transport: StreamableHTTPServerTransport = new StreamableHTTPServerTransport({
|
||||
sessionIdGenerator: undefined
|
||||
})
|
||||
|
||||
event.node.res.on('close', () => {
|
||||
transport.close()
|
||||
server.close()
|
||||
})
|
||||
|
||||
await server.connect(transport)
|
||||
|
||||
const body = await readBody(event)
|
||||
|
||||
await transport.handleRequest(event.node.req, event.node.res, body)
|
||||
})
|
||||
Reference in New Issue
Block a user