RationalBloks
What this MCP does
Creates, deploys, manages, and searches schema-based REST API projects and Neo4j knowledge graphs across staging and production environments.
Tools
Input schema
{'type': 'object', 'required': ['project_id', 'entity_type', 'nodes'], 'properties': {'nodes': {'type': 'array', 'items': {'type': 'object', 'required': ['entity_id', 'data'], 'properties': {'data': {'type': 'object'}, 'entity_id': {'type': 'string'}}}, 'description': 'List of nodes. Each: {entity_id: string, data: {properties}}'}, 'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}, 'entity_type': {'type': 'string', 'description': 'Entity key for all nodes'}, 'environment': {'type': 'string', 'description': 'Environment: staging or production (default: staging)'}}}
Input schema
{'type': 'object', 'required': ['project_id', 'rel_type', 'relationships'], 'properties': {'rel_type': {'type': 'string', 'description': 'Relationship key for all relationships'}, 'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}, 'environment': {'type': 'string', 'description': 'Environment: staging or production (default: staging)'}, 'relationships': {'type': 'array', 'items': {'type': 'object', 'required': ['from_id', 'to_id'], 'properties': {'data': {'type': 'object'}, 'to_id': {'type': 'string'}, 'from_id': {'type': 'string'}}}, 'description': 'List of relationships. Each: {from_id, to_id, data?}'}}}
Input schema
{'type': 'object', 'required': ['project_id', 'entity_type', 'entity_id', 'data'], 'properties': {'data': {'type': 'object', 'description': 'Node properties matching the entity schema'}, 'entity_id': {'type': 'string', 'description': 'Unique identifier for the node'}, 'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}, 'entity_type': {'type': 'string', 'description': "Entity key (e.g., 'person', 'concept')"}, 'environment': {'type': 'string', 'description': 'Environment: staging or production (default: staging)'}}}
Input schema
{'type': 'object', 'required': ['name', 'schema', 'cluster_id'], 'properties': {'name': {'type': 'string', 'description': 'Project name'}, 'schema': {'type': 'object', 'description': "Graph schema with 'nodes' and optionally 'relationships' keys. Use get_graph_template_schemas to see valid examples."}, 'cluster_id': {'type': 'string', 'description': 'REQUIRED — BYOC resource pool ID (from list_clusters) to deploy this graph project onto your own cluster. Owned hosting is retired: a project we operate must run on your own infrastructure. Register a pool via the Resource Pools UI first, then pass its id here.'}}}
Input schema
{'type': 'object', 'required': ['project_id', 'rel_type', 'from_id', 'to_id'], 'properties': {'data': {'type': 'object', 'description': 'Relationship properties (optional)'}, 'to_id': {'type': 'string', 'description': 'Target node entity_id'}, 'from_id': {'type': 'string', 'description': 'Source node entity_id'}, 'rel_type': {'type': 'string', 'description': "Relationship key (e.g., 'authored', 'related_to')"}, 'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}, 'environment': {'type': 'string', 'description': 'Environment: staging or production (default: staging)'}}}
Input schema
{'type': 'object', 'required': ['name', 'schema', 'cluster_id'], 'properties': {'name': {'type': 'string', 'description': 'Project name'}, 'schema': {'type': 'object', 'description': "JSON schema in FLAT format (table_name → field_name → properties). Every field MUST have a 'type' property. Use get_template_schemas to see valid examples."}, 'cluster_id': {'type': 'string', 'description': 'REQUIRED — BYOC resource pool ID (from list_clusters) to deploy this project onto your own cluster. Owned hosting is retired: a project we operate must run on your own infrastructure. Register a pool via the Resource Pools UI first, then pass its id here.'}, 'backend_type': {'enum': ['python', 'rust'], 'type': 'string', 'description': "Backend engine: 'python' (FastAPI, default) or 'rust' (Axum, faster). Default: python"}}}
Input schema
{'type': 'object', 'required': ['project_id', 'entity_type', 'entity_id'], 'properties': {'entity_id': {'type': 'string', 'description': "The node's entity_id"}, 'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}, 'entity_type': {'type': 'string', 'description': "Entity key (e.g., 'person', 'concept')"}, 'environment': {'type': 'string', 'description': 'Environment: staging or production (default: staging)'}}}
Input schema
{'type': 'object', 'required': ['project_id'], 'properties': {'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}}}
Input schema
{'type': 'object', 'required': ['project_id', 'rel_type', 'rel_id'], 'properties': {'rel_id': {'type': 'integer', 'description': 'Internal relationship ID (from get_node_relationships)'}, 'rel_type': {'type': 'string', 'description': 'Relationship key'}, 'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}, 'environment': {'type': 'string', 'description': 'Environment: staging or production (default: staging)'}}}
Input schema
{'type': 'object', 'required': ['project_id'], 'properties': {'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}}}
Input schema
{'type': 'object', 'required': ['project_id'], 'properties': {'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}, 'confirm_destructive': {'type': 'boolean', 'description': 'Set true only after reviewing the plan: a deploy that drops tables, columns, entities, relationships or fields is refused without it'}}}
Input schema
{'type': 'object', 'required': ['project_id'], 'properties': {'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}, 'confirm_destructive': {'type': 'boolean', 'description': 'Set true only after reviewing the plan: a deploy that drops tables, columns, entities, relationships or fields is refused without it'}}}
Input schema
{'type': 'object', 'required': ['project_id'], 'properties': {'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}, 'confirm_destructive': {'type': 'boolean', 'description': 'Set true only after reviewing the plan: a deploy that drops tables, columns, entities, relationships or fields is refused without it'}}}
Input schema
{'type': 'object', 'required': ['project_id'], 'properties': {'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}, 'confirm_destructive': {'type': 'boolean', 'description': 'Set true only after reviewing the plan: a deploy that drops tables, columns, entities, relationships or fields is refused without it'}}}
Input schema
{'type': 'object', 'required': ['project_id', 'query'], 'properties': {'limit': {'type': 'integer', 'description': 'Max results (default: 50, max: 500)'}, 'query': {'type': 'string', 'description': 'Search text (case-insensitive, min 2 chars)'}, 'offset': {'type': 'integer', 'description': 'Pagination offset (default: 0)'}, 'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}, 'entity_type': {'type': 'string', 'description': 'Entity key to filter by (optional — omit to search all types)'}, 'environment': {'type': 'string', 'description': 'Environment: staging or production (default: staging)'}}}
Input schema
{'type': 'object', 'required': ['project_id'], 'properties': {'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}, 'environment': {'type': 'string', 'description': 'Environment: staging or production (default: staging)'}}}
Input schema
{'type': 'object', 'required': ['project_id', 'entity_type', 'entity_id'], 'properties': {'entity_id': {'type': 'string', 'description': "The node's entity_id"}, 'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}, 'entity_type': {'type': 'string', 'description': "Entity key (e.g., 'person', 'concept')"}, 'environment': {'type': 'string', 'description': 'Environment: staging or production (default: staging)'}}}
Input schema
{'type': 'object', 'required': ['project_id'], 'properties': {'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}}}
Input schema
{'type': 'object', 'required': ['project_id'], 'properties': {'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}}}
Input schema
{'type': 'object', 'required': ['project_id', 'version'], 'properties': {'version': {'type': 'string', 'description': 'Commit SHA of the version to retrieve'}, 'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}}}
Input schema
{'type': 'object', 'required': ['project_id'], 'properties': {'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}, 'environment': {'type': 'string', 'description': 'Environment: staging or production (default: staging)'}}}
Input schema
{'type': 'object', 'required': [], 'properties': {}}
Input schema
{'type': 'object', 'required': ['project_id'], 'properties': {'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}}}
Input schema
{'type': 'object', 'required': ['job_id'], 'properties': {'job_id': {'type': 'string', 'description': 'Job ID returned from deployment operations'}}}
Input schema
{'type': 'object', 'required': ['project_id', 'entity_type', 'entity_id'], 'properties': {'direction': {'type': 'string', 'description': 'Filter: incoming, outgoing, or both (default: both)'}, 'entity_id': {'type': 'string', 'description': "The node's entity_id"}, 'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}, 'entity_type': {'type': 'string', 'description': 'Entity key of the node'}, 'environment': {'type': 'string', 'description': 'Environment: staging or production (default: staging)'}, 'rel_type_filter': {'type': 'string', 'description': 'Filter by relationship type (UPPER_SNAKE_CASE)'}}}
Input schema
{'type': 'object', 'required': ['project_id'], 'properties': {'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}}}
Input schema
{'type': 'object', 'required': ['project_id'], 'properties': {'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}}}
Input schema
{'type': 'object', 'required': ['project_id'], 'properties': {'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}, 'environment': {'type': 'string', 'description': 'Environment: staging or production (default: production)'}}}
Input schema
{'type': 'object', 'required': ['project_id'], 'properties': {'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}}}
Input schema
{'type': 'object', 'required': ['project_id'], 'properties': {'fields': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Read only these fields, each written \'table.field\' (e.g. ["parameters.is_clock"]); their table\'s own keys come with them.'}, 'tables': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Read only these tables, whole (e.g. ["parameters"]). A table the schema does not hold is refused.'}, 'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}}}
Input schema
{'type': 'object', 'required': ['project_id', 'version'], 'properties': {'version': {'type': 'string', 'description': 'Commit SHA of the version'}, 'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}}}
Input schema
{'type': 'object', 'required': [], 'properties': {}}
Input schema
{'type': 'object', 'required': [], 'properties': {}}
Input schema
{'type': 'object', 'required': [], 'properties': {}}
Input schema
{'type': 'object', 'required': [], 'properties': {}}
Input schema
{'type': 'object', 'required': ['project_id'], 'properties': {'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}}}
Input schema
{'type': 'object', 'required': [], 'properties': {}}
Input schema
{'type': 'object', 'required': ['project_id', 'entity_type'], 'properties': {'limit': {'type': 'integer', 'description': 'Max results (default: 100, max: 1000)'}, 'offset': {'type': 'integer', 'description': 'Pagination offset (default: 0)'}, 'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}, 'entity_type': {'type': 'string', 'description': "Entity key (e.g., 'person', 'concept')"}, 'environment': {'type': 'string', 'description': 'Environment: staging or production (default: staging)'}}}
Input schema
{'type': 'object', 'required': ['project_id'], 'properties': {'limit': {'type': 'integer', 'description': 'Max files to return (1-1000, default 100)'}, 'offset': {'type': 'integer', 'description': 'Pagination offset (default 0)'}, 'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}, 'environment': {'type': 'string', 'description': 'Environment: staging or production (default: production)'}}}
Input schema
{'type': 'object', 'required': ['project_id'], 'properties': {'limit': {'type': 'integer', 'description': 'Max jobs to return (1-1000, default 100)'}, 'offset': {'type': 'integer', 'description': 'Jobs to skip, newest first (default 0)'}, 'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}}}
Input schema
{'type': 'object', 'required': [], 'properties': {}}
Input schema
{'type': 'object', 'required': ['project_id', 'operations'], 'properties': {'dry_run': {'type': 'boolean', 'description': 'Save nothing: answer what the operations did, the diff and the migration plan a deploy would run.'}, 'operations': {'type': 'array', 'items': {'type': 'object'}, 'description': 'The operations, applied in order and all together. See the tool description for every op and its fields.'}, 'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}, 'expected_version': {'type': 'string', 'description': "The 'version' a get_schema read answered. The patch is refused (409) when the saved schema changed since, so two editors never overwrite each other silently."}}}
Input schema
{'type': 'object', 'required': ['project_id', 'name'], 'properties': {'name': {'type': 'string', 'description': 'New display name for the project'}, 'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}}}
Input schema
{'type': 'object', 'required': ['project_id', 'version'], 'properties': {'version': {'type': 'string', 'description': 'Commit SHA to rollback to'}, 'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}, 'environment': {'type': 'string', 'description': 'Environment: staging or production (default: staging)'}}}
Input schema
{'type': 'object', 'required': ['project_id', 'version'], 'properties': {'version': {'type': 'string', 'description': 'Commit SHA or version to rollback to'}, 'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}, 'environment': {'type': 'string', 'description': 'Environment: staging or production (default: staging)'}}}
Input schema
{'type': 'object', 'required': ['project_id', 'filters'], 'properties': {'limit': {'type': 'integer', 'description': 'Max results (default: 100, max: 1000)'}, 'offset': {'type': 'integer', 'description': 'Pagination offset (default: 0)'}, 'filters': {'type': 'object', 'description': 'Property filters. Prefix value with ~ for contains search.'}, 'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}, 'entity_type': {'type': 'string', 'description': 'Entity key to filter by (optional — omit to search all types)'}, 'environment': {'type': 'string', 'description': 'Environment: staging or production (default: staging)'}}}
Input schema
{'type': 'object', 'required': ['project_id', 'start_entity_type', 'start_entity_id'], 'properties': {'limit': {'type': 'integer', 'description': 'Max results (default: 100, max: 1000)'}, 'direction': {'type': 'string', 'description': 'Direction: outgoing, incoming, or both (default: both)'}, 'max_depth': {'type': 'integer', 'description': 'Maximum traversal depth (default: 3, max: 10)'}, 'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}, 'environment': {'type': 'string', 'description': 'Environment: staging or production (default: staging)'}, 'start_entity_id': {'type': 'string', 'description': 'Entity ID of the starting node'}, 'start_entity_type': {'type': 'string', 'description': 'Entity key of the starting node'}, 'relationship_types': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Filter by relationship types (UPPER_SNAKE_CASE). Omit for all types.'}}}
Input schema
{'type': 'object', 'required': ['project_id', 'entity_type', 'entity_id', 'data'], 'properties': {'data': {'type': 'object', 'description': 'Properties to update (partial update)'}, 'entity_id': {'type': 'string', 'description': "The node's entity_id"}, 'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}, 'entity_type': {'type': 'string', 'description': "Entity key (e.g., 'person', 'concept')"}, 'environment': {'type': 'string', 'description': 'Environment: staging or production (default: staging)'}}}
Input schema
{'type': 'object', 'required': ['project_id', 'schema'], 'properties': {'schema': {'type': 'object', 'description': "New graph schema with 'nodes' and optionally 'relationships' keys."}, 'dry_run': {'type': 'boolean', 'description': 'Preview the planned migration (renames/deletions) without saving or deploying. Nothing is applied.'}, 'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}}}
Input schema
{'type': 'object', 'required': ['project_id', 'schema'], 'properties': {'schema': {'type': 'object', 'description': "New JSON schema in FLAT format (table_name → field_name → properties). Every field MUST have a 'type' property."}, 'dry_run': {'type': 'boolean', 'description': 'Save nothing: answer the property-level diff against the saved schema and the migration plan a deploy would run.'}, 'project_id': {'type': 'string', 'description': 'Project ID (UUID)'}, 'expected_version': {'type': 'string', 'description': "The 'version' a get_schema read answered. The save is refused (409) when the saved schema changed since, so two editors never overwrite each other silently."}}}
Recent tool changes
Similar MCP servers
Scalix Cloud
Provides managed databases, SQL tools, container builds, persistent Linux machines, domains, scheduled functions, storage, and pr…
RationalBloks
Creates, deploys, manages, and queries REST API and Neo4j graph projects from JSON schemas, including graph data modeling, versio…
Supabase
Manages Supabase projects, PostgreSQL databases, migrations, branches, storage-related infrastructure, Edge Functions, logs, keys…
mcp-server
Onboards data sources, generates processing specifications, runs data jobs and SQL queries, and manages SFTP or S3 integrations a…
Databricks
Connects to Databricks workspaces to browse Unity Catalog metadata, execute SQL, inspect tables and warehouses, and manage long-r…
mcp
Manages Google Cloud Bigtable instances, tables, logical views, and hot-tablet monitoring.
mcp
Manages Google Cloud Datastream resources, including streams, connection profiles, stream objects, static IPs, and long-running o…
site
Provides searchable and statistical access to an RMM software comparison dataset and submits consent-based enquiries to human pro…