MCPcopy Create free account
hub / github.com/echoVic/blade-code / readResource

Function readResource

src/commands/mcp.ts:466–495  ·  view source on GitHub ↗

* 读取资源

(client: MCPClient, sessionId: string)

Source from the content-addressed store, hash-verified

464 * 读取资源
465 */
466async function readResource(client: MCPClient, sessionId: string): Promise<void> {
467 try {
468 const resources = await client.listResources(sessionId);
469
470 if (resources.length === 0) {
471 console.log(chalk.yellow('📭 没有可用的资源'));
472 return;
473 }
474
475 const { selectedResource } = await inquirer.prompt([
476 {
477 type: 'list',
478 name: 'selectedResource',
479 message: '选择要读取的资源:',
480 choices: resources.map(resource => ({
481 name: `${resource.name} (${resource.uri})`,
482 value: resource.uri,
483 })),
484 },
485 ]);
486
487 const content = await client.readResource(sessionId, selectedResource);
488
489 console.log(chalk.blue(`📖 资源内容 (${content.mimeType}):`));
490 console.log('');
491 console.log(content.text || content.blob || '[二进制内容]');
492 } catch (error) {
493 console.error(chalk.red('❌ 读取资源失败:'), error instanceof Error ? error.message : error);
494 }
495}
496
497/**
498 * 列出工具

Callers 1

runInteractiveClientFunction · 0.85

Calls 4

listResourcesMethod · 0.80
logMethod · 0.45
readResourceMethod · 0.45
errorMethod · 0.45

Tested by

no test coverage detected