Server Configuration
Describes the environment variables required to run the server.
Name | Required | Description | Default |
---|---|---|---|
RSPACE_URL | Yes | RSpace URL (e.g. https://community.researchspace.com) | |
RSPACE_API_KEY | Yes | Your RSpace API key |
Schema
Prompts
Interactive templates invoked by user choice
Name | Description |
---|---|
No prompts |
Resources
Contextual data attached and managed by the client
Name | Description |
---|---|
No resources |
Tools
Functions exposed to the LLM to take actions
Name | Description |
---|---|
status | System health check - determines if RSpace server is accessible and running Usage: Call this first to verify connectivity before other operations Returns: Status message from RSpace server |
get_documents | Retrieves recent RSpace documents with pagination Usage: Get overview of recent documents for browsing/selection Limit: Maximum 200 documents per call for performance Returns: List of document metadata (not full content) |
get_single_Rspace_document | Retrieves complete content of a single document Usage: Get full document text for reading/analysis Parameters: doc_id can be numeric ID or string globalId (e.g., "SD12345") Returns: Full document with concatenated field content |
update_document | Updates existing RSpace document content and metadata Usage: Modify document name, tags, or field content Fields format: [{"id": field_id, "content": "new HTML content"}] Returns: Updated document information |
search_documents | Generic search tool for RSpace documents with flexible search options Usage: Search across all your RSpace documents using various criteria Parameters:
Returns: Dictionary with search results and metadata Examples:
|
search_by_tags | Search documents by specific tags Usage: Find documents tagged with specific keywords Parameters:
Returns: Dictionary with search results Example: search_by_tags(["PCR", "protocol"], operator="and") |
search_recent_documents | Search for recently modified documents Usage: Find documents modified within a specific timeframe Parameters:
Returns: Dictionary with recent documents Example: search_recent_documents(7, "experiment") |
find_documents_by_content | Advanced content-based document search Usage: Find documents containing specific content terms Parameters:
Returns: Dictionary with search results Example: find_documents_by_content(["DNA", "extraction"], operator="and") |
createNewNotebook | Creates a new electronic lab notebook Usage: Organize related experiments/entries under a single notebook Returns: Created notebook information including ID for adding entries |
createNotebookEntry | Adds a new entry to an existing notebook Usage: Add experimental procedures, results, or observations to a notebook Content: Supports both HTML and plain text formatting Returns: Created entry information |
tagDocumentOrNotebookEntry | Adds tags to documents for organization and searchability Usage: Categorize documents by project, experiment type, etc. Tags: Use consistent naming for better organization Returns: Updated document with new tags |
renameDocumentOrNotebookEntry | Changes the name/title of a document or notebook entry Usage: Update document titles for better organization Returns: Updated document information |
get_forms | Lists available custom forms for structured document creation Usage: Browse available templates before creating structured documents Filtering: Use query parameter to search form names/descriptions Returns: Paginated list of form metadata |
get_form | Retrieves detailed information about a specific form template Usage: Examine form structure before creating documents or new forms Returns: Complete form definition including field specifications |
create_form | Creates a new custom form template for structured data entry Usage: Define reusable templates for experiments, protocols, reports Fields structure: [ { "name": "Field Name", "type": "String|Text|Number|Radio|Date|Choice", "mandatory": True/False, "defaultValue": "optional default" } ] Returns: Created form information (form will be in NEW state) |
publish_form | Makes a form available for creating documents Usage: Activate form after creation/modification Note: Forms must be published before they can be used for document creation Returns: Updated form status |
unpublish_form | Hides a form from document creation interface Usage: Temporarily disable forms without deletion Returns: Updated form status |
share_form | Shares form with user's groups for collaborative use Usage: Make custom forms available to team members Returns: Updated sharing status |
unshare_form | Removes form sharing with groups Usage: Make form private again Returns: Updated sharing status |
delete_form | Permanently deletes a form template Usage: Remove unused forms (only works for forms in NEW state) Warning: This operation cannot be undone Returns: Deletion confirmation |
create_document_from_form | Creates a structured document using a form template Usage: Generate documents with predefined structure and validation Fields: Pre-populate form fields with initial data Returns: Created document information |
getAuditEvents | Retrieves audit trail of all actions performed in RSpace Usage: Monitor document access, modifications, and user activity Filtering options:
Returns: Chronological list of system events |
downloadFile | Downloads file attachments from RSpace documents Usage: Retrieve images, data files, or other attachments Parameters:
Returns: Download status and file information |
uploadAndAttachFile | Uploads a file to RSpace and attaches it to a document as a proper file attachment Usage: One-step process to upload any file and attach it to an RSpace document File types: Supports all file types (images, PDFs, data files, protocols, etc.) Attachment: Creates proper RSpace file attachment, not just a link Parameters:
Returns: Upload confirmation and document update information |
create_sample | Creates a new sample in the inventory system Usage: Register new samples with metadata and quantity tracking Subsamples: Automatically creates specified number of subsample aliquots Quantity: Tracks total amount with specified units (ml, mg, μl, etc.) Returns: Created sample information including generated subsample IDs |
get_sample | Retrieves complete information about a specific sample Usage: Get detailed sample metadata, location, and subsample information Parameters: sample_id can be numeric ID or global ID (e.g., "SA12345") Returns: Full sample details including all subsamples |
list_samples | Lists samples in the inventory with pagination and sorting Usage: Browse sample collection, find recent additions Sorting: Options include "lastModified", "name", "created" Returns: Paginated list of sample metadata |
duplicate_sample | Creates an exact copy of an existing sample Usage: Replicate samples for parallel experiments or backup Returns: New sample information with fresh ID and subsamples |
split_subsample | Divides a subsample into multiple new subsamples Usage: Create aliquots for distribution or different experiments Quantity: If specified, each new subsample gets this amount Returns: Information about newly created subsamples |
add_note_to_subsample | Adds annotations or observations to a specific subsample Usage: Record experimental notes, observations, or handling instructions Returns: Updated subsample information with new note |
search_inventory | Searches across all inventory items using text query Usage: Find samples, containers, or templates by name, tags, or description Result types: 'SAMPLE', 'SUBSAMPLE', 'CONTAINER', 'TEMPLATE' (or None for all) Returns: Matching items with relevance scoring |
create_list_container | Creates a simple list-based container for organizing inventory Usage: Create folders, boxes, or other containers without specific positioning Storage permissions: Configure what types of items can be stored Hierarchy: Optionally nest within another container Returns: Created container information with storage settings |
create_grid_container | Creates a grid-based container with specific positioning Usage: Create microplates, freezer boxes, or other position-specific storage Dimensions: Define exact grid size (e.g., 8x12 for 96-well plate) Positioning: Items placed at specific coordinates (row, column) Returns: Created container information with grid specifications |
get_container | Retrieves container information with optional content listing Usage: Examine container properties and optionally see what's inside Performance: Set include_content=False for faster queries on large containers Returns: Container details and optionally contained items |
list_containers | Lists top-level containers (not nested within other containers) Usage: Browse main container organization structure Returns: Paginated list of root-level containers |
get_workbenches | Retrieves all available workbenches (virtual workspaces) Usage: Find available workspaces for organizing current work Workbenches: Special containers representing physical or logical workspaces Returns: List of all workbench containers |
move_items_to_list_container | Moves multiple items to a list-based container Usage: Organize items in simple containers without specific positioning Items: Can move both samples/subsamples and other containers Returns: Success status and results for each moved item |
move_items_to_grid_container_by_row | Moves items to grid container, filling positions row by row Usage: Systematic filling of plates, boxes, or other gridded containers Auto-positioning: Automatically calculates next available positions Dimensions: Auto-detected from container if not provided Returns: Success status and final positions of moved items |
move_items_to_grid_container_by_column | Moves items to grid container, filling positions column by column Usage: Alternative filling pattern for specific experimental layouts Auto-positioning: Fills down columns before moving to next column Returns: Success status and final positions of moved items |
move_items_to_specific_grid_locations | Places items at specific coordinates within a grid container Usage: Precise positioning for experimental layouts or protocols Coordinates: Each item gets an exact (row, column) position Validation: Ensures equal number of items and positions Returns: Success status and confirmation of final positions |
create_sample_template | Creates a reusable template for sample creation Usage: Standardize sample creation with predefined fields and validation Template data: Define field structure, default values, and constraints Returns: Created template information for future sample generation |
get_sample_template | Retrieves detailed information about a sample template Usage: Examine template structure before using for sample creation Returns: Complete template definition including field specifications |
list_sample_templates | Lists available sample templates for reuse Usage: Browse existing templates before creating new samples Returns: Paginated list of template metadata |
rename_inventory_item | Changes the name of any inventory item Usage: Rename samples, subsamples, containers, or templates Universal: Works with any inventory item type Returns: Updated item information with new name |
add_extra_fields_to_item | Adds custom metadata fields to inventory items Usage: Extend items with experiment-specific or project-specific data Field format: [{"name": "Field Name", "type": "text|number", "content": "value"}] Types: 'text' for strings, 'number' for numeric values Returns: Updated item with new custom fields |
generate_barcode | Generates scannable barcodes for inventory items Usage: Create physical labels for sample tracking and identification Types: 'BARCODE' for standard linear barcodes, 'QR' for QR codes Returns: Binary barcode image data for printing or display |
get_container_summary | Retrieves container metadata without content for fast queries Usage: Quick container information lookup without performance impact Performance: Avoids loading large content lists for better response times Returns: Container metadata only (name, type, capacity, etc.) |
get_container_contents_only | Retrieves only the items stored in a container Usage: Get container contents without metadata overhead Performance: Focused query for container content analysis Returns: List of contained items with minimal metadata |
bulk_create_samples | Creates multiple samples efficiently in a single operation Usage: High-performance sample creation for large datasets Performance: Much faster than individual create_sample calls Format: List of sample definition dictionaries Note: Implementation should use batch API endpoints when available Returns: Results for all created samples with error handling |
get_recent_samples_summary | Retrieves recent samples with minimal data for dashboard views Usage: Quick overview of recent activity without full sample details Performance: Optimized for dashboard and summary displays Filtering: Configurable time window and result count Returns: Lightweight sample list with essential information only |