Skip to main content
Glama

w3_space_use

Select and manage specific IPFS spaces using their decentralized identifier (DID) with the mcp-ipfs server. Simplify operations like data uploads, downloads, and delegations for efficient storage management.

Instructions

Tool for w3_space_use operation.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
spaceDidYesThe DID of the space to select (e.g., did:key:...).

Implementation Reference

  • The handler function that executes the w3_space_use tool. It validates input arguments using the schema, runs the 'w3 space use' command with the provided spaceDid, and returns a JSON-formatted response with success message and command output.
    const handleW3SpaceUse: ToolHandler = async (args) => {
      const parsed = Schemas.W3SpaceUseArgsSchema.safeParse(args);
      if (!parsed.success)
        throw new Error(
          `Invalid arguments for w3_space_use: ${parsed.error.message}`
        );
      const { spaceDid } = parsed.data;
      const { stdout } = await runW3Command(`space use ${spaceDid}`);
      return {
        content: [
          {
            type: "text",
            text: JSON.stringify({
              message: `Successfully set current space to ${spaceDid}`,
              output: stdout.trim(),
            }),
          },
        ],
      };
    };
  • Zod schema for the input arguments of the w3_space_use tool, defining 'spaceDid' as a required string that must start with 'did:key:'.
    export const W3SpaceUseArgsSchema = z.object({
      spaceDid: z
        .string()
        .startsWith("did:key:")
        .describe("The DID of the space to select (e.g., did:key:...)."),
    });
  • The toolHandlers object maps tool names to their handler functions, registering 'w3_space_use' to handleW3SpaceUse. This object is imported and used in index.ts for dynamic tool execution.
    export const toolHandlers: Record<string, ToolHandler> = {
      w3_login: handleW3Login,
      w3_space_ls: handleW3SpaceLs,
      w3_space_use: handleW3SpaceUse,
      w3_space_create: handleW3SpaceCreate,
      w3_up: handleW3Up,
      w3_ls: handleW3Ls,
      w3_rm: handleW3Rm,
      w3_open: handleW3Open,
      w3_space_info: handleW3SpaceInfo,
      w3_space_add: handleW3SpaceAdd,
      w3_delegation_create: handleW3DelegationCreate,
      w3_delegation_ls: handleW3DelegationLs,
      w3_delegation_revoke: handleW3DelegationRevoke,
      w3_proof_add: handleW3ProofAdd,
      w3_proof_ls: handleW3ProofLs,
      w3_key_create: handleW3KeyCreate,
      w3_bridge_generate_tokens: handleW3BridgeGenerateTokens,
      w3_can_blob_add: handleW3CanBlobAdd,
      w3_can_blob_ls: handleW3CanBlobLs,
      w3_can_blob_rm: handleW3CanBlobRm,
      w3_can_index_add: handleW3CanIndexAdd,
      w3_can_upload_add: handleW3CanUploadAdd,
      w3_can_upload_ls: handleW3CanUploadLs,
      w3_can_upload_rm: handleW3CanUploadRm,
      w3_plan_get: handleW3PlanGet,
      w3_account_ls: handleW3AccountLs,
      w3_space_provision: handleW3SpaceProvision,
      w3_coupon_create: handleW3CouponCreate,
      w3_usage_report: handleW3UsageReport,
      w3_can_access_claim: handleW3CanAccessClaim,
      w3_can_store_add: handleW3CanStoreAdd,
      w3_can_store_ls: handleW3CanStoreLs,
      w3_can_store_rm: handleW3CanStoreRm,
      w3_can_filecoin_info: handleW3CanFilecoinInfo,
      w3_reset: handleW3Reset,
    };

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/alexbakers/mcp-ipfs'

If you have feedback or need assistance with the MCP directory API, please join our Discord server