Files
ra-h-os/package.json
T
“BeeRad” f3d240c604 feat: add remote MCP endpoint for external agent access
- Add app/api/mcp/route.ts with read-only ls_* tools
- Tools: ls_search_nodes, ls_get_nodes, ls_query_edges, ls_list_dimensions
- Uses WebStandardStreamableHTTPServerTransport for Vercel serverless
- Stateless mode (sessionIdGenerator: undefined) for proper serverless execution
- CORS headers for cross-origin agent access
- GET endpoint returns server info for debugging

Usage: claude mcp add --transport http latent-space https://latentspace.ra-h.app/api/mcp
2026-01-30 08:01:28 +11:00

63 lines
2.2 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"name": "ra-h-open-source",
"version": "0.1.0",
"private": false,
"description": "RA-H Open Source local-first research workspace with BYO API keys",
"license": "MIT",
"author": "Bradley Morris",
"scripts": {
"dev": "NEXT_PUBLIC_DEPLOYMENT_MODE=local NEXT_PUBLIC_ENABLE_SUBSCRIPTION_BACKEND=false NODE_OPTIONS=\"--dns-result-order=ipv4first\" next dev",
"clean:local": "bash ./scripts/dev/clean-local-artifacts.sh",
"audit:repo": "bash ./scripts/dev/audit-repo.sh",
"build": "NEXT_PUBLIC_DEPLOYMENT_MODE=local NEXT_PUBLIC_ENABLE_SUBSCRIPTION_BACKEND=false NODE_OPTIONS=\"--dns-result-order=ipv4first\" next build",
"start": "NEXT_PUBLIC_DEPLOYMENT_MODE=local NEXT_PUBLIC_ENABLE_SUBSCRIPTION_BACKEND=false NODE_OPTIONS=\"--dns-result-order=ipv4first\" next start",
"lint": "next lint",
"type-check": "tsc --noEmit",
"setup": "npm install",
"sqlite:backup": "bash scripts/database/sqlite-backup.sh",
"sqlite:restore": "bash scripts/database/sqlite-restore.sh",
"test": "vitest run",
"test:watch": "vitest",
"evals": "RAH_EVALS_LOG=1 tsx tests/evals/runner.ts"
},
"dependencies": {
"@ai-sdk/openai": "^3.0.7",
"@langchain/core": "^1.0.1",
"@langchain/textsplitters": "^1.0.1",
"@modelcontextprotocol/sdk": "^1.25.3",
"@xyflow/react": "^12.10.0",
"ai": "^6.0.27",
"better-sqlite3": "^12.2.0",
"cheerio": "^1.1.2",
"gray-matter": "^4.0.3",
"lucide-react": "^0.468.0",
"next": "^15.1.12",
"openai": "^4.103.0",
"pdf-parse": "^1.1.1",
"pdfjs-dist": "^5.4.296",
"react": "^19.0.1",
"react-dom": "^19.0.1",
"react-markdown": "^10.1.0",
"remark-gfm": "^4.0.1",
"youtube-transcript": "^1.2.1",
"youtube-transcript-plus": "^1.1.1",
"zod": "^3.25.76"
},
"devDependencies": {
"@types/better-sqlite3": "^7.6.13",
"@types/node": "22.10.2",
"@types/react": "^19.0.2",
"@types/react-dom": "19.0.2",
"autoprefixer": "^10.4.20",
"esbuild": "^0.23.1",
"eslint": "^8.57.0",
"eslint-config-next": "^15.1.12",
"postcss": "^8.4.49",
"prettier": "^3.3.3",
"tailwindcss": "^3.4.17",
"tsx": "^4.19.4",
"typescript": "^5.7.2",
"vitest": "^3.2.4"
}
}