Updated GDrive
This commit is contained in:
parent
0c5ec3120f
commit
dc455ee23a
2 changed files with 4 additions and 4 deletions
|
|
@ -15,7 +15,7 @@ This MCP server integrates with Google Drive to allow listing, reading, and sear
|
||||||
|
|
||||||
The server provides access to Google Drive files:
|
The server provides access to Google Drive files:
|
||||||
|
|
||||||
- **Files** (`gdrive://<file_id>`)
|
- **Files** (`gdrive:///<file_id>`)
|
||||||
- Supports all file types
|
- Supports all file types
|
||||||
- Google Workspace files are automatically exported:
|
- Google Workspace files are automatically exported:
|
||||||
- Docs → Markdown
|
- Docs → Markdown
|
||||||
|
|
|
||||||
|
|
@ -44,7 +44,7 @@ server.setRequestHandler(ListResourcesRequestSchema, async (request) => {
|
||||||
|
|
||||||
return {
|
return {
|
||||||
resources: files.map((file) => ({
|
resources: files.map((file) => ({
|
||||||
uri: `gdrive://${file.id}`,
|
uri: `gdrive:///${file.id}`,
|
||||||
mimeType: file.mimeType,
|
mimeType: file.mimeType,
|
||||||
name: file.name,
|
name: file.name,
|
||||||
})),
|
})),
|
||||||
|
|
@ -53,7 +53,7 @@ server.setRequestHandler(ListResourcesRequestSchema, async (request) => {
|
||||||
});
|
});
|
||||||
|
|
||||||
server.setRequestHandler(ReadResourceRequestSchema, async (request) => {
|
server.setRequestHandler(ReadResourceRequestSchema, async (request) => {
|
||||||
const fileId = request.params.uri.replace("gdrive://", "");
|
const fileId = request.params.uri.replace("gdrive:///", "");
|
||||||
|
|
||||||
// First get file metadata to check mime type
|
// First get file metadata to check mime type
|
||||||
const file = await drive.files.get({
|
const file = await drive.files.get({
|
||||||
|
|
@ -150,7 +150,7 @@ server.setRequestHandler(ListToolsRequestSchema, async () => {
|
||||||
server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
||||||
if (request.params.name === "search") {
|
if (request.params.name === "search") {
|
||||||
const userQuery = request.params.arguments?.query as string;
|
const userQuery = request.params.arguments?.query as string;
|
||||||
const escapedQuery = userQuery.replace(/'/g, "\\'");
|
const escapedQuery = userQuery.replace(/\\/g, "\\\\").replace(/'/g, "\\'");
|
||||||
const formattedQuery = `fullText contains '${escapedQuery}'`;
|
const formattedQuery = `fullText contains '${escapedQuery}'`;
|
||||||
|
|
||||||
const res = await drive.files.list({
|
const res = await drive.files.list({
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue