Synapse MCP
Vendor MCP48 toolsOAuth 2.1/DCRHealthcareSearchFiles & DocumentsConnect to the Synapse MCP server (Sage Bionetworks) to explore Synapse entities, annotations, provenance, and project structure, and to search...
Synapse MCP connector
-
Install the SDK
Section titled “Install the SDK”Terminal window npm install @scalekit-sdk/nodeTerminal window pip install scalekit -
Set your credentials
Section titled “Set your credentials”Add your Scalekit credentials to your
.envfile. Find values in app.scalekit.com > Developers > API Credentials..env SCALEKIT_ENVIRONMENT_URL=<your-environment-url>SCALEKIT_CLIENT_ID=<your-client-id>SCALEKIT_CLIENT_SECRET=<your-client-secret> -
Authorize and make your first call
Section titled “Authorize and make your first call”quickstart.ts import { ScalekitClient } from '@scalekit-sdk/node'import 'dotenv/config'const scalekit = new ScalekitClient(process.env.SCALEKIT_ENV_URL,process.env.SCALEKIT_CLIENT_ID,process.env.SCALEKIT_CLIENT_SECRET,)const actions = scalekit.actionsconst connector = 'synapsemcp'const identifier = 'user_123'// Generate an authorization link for the userconst { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })console.log('Authorize Synapse MCP:', link)process.stdout.write('Press Enter after authorizing...')await new Promise(r => process.stdin.once('data', r))// Make your first callconst result = await actions.executeTool({connector,identifier,toolName: 'synapsemcp_get_evaluation',toolInput: {},})console.log(result)quickstart.py import osfrom scalekit.client import ScalekitClientfrom dotenv import load_dotenvload_dotenv()scalekit_client = ScalekitClient(env_url=os.getenv("SCALEKIT_ENV_URL"),client_id=os.getenv("SCALEKIT_CLIENT_ID"),client_secret=os.getenv("SCALEKIT_CLIENT_SECRET"),)actions = scalekit_client.actionsconnection_name = "synapsemcp"identifier = "user_123"# Generate an authorization link for the userlink_response = actions.get_authorization_link(connection_name=connection_name,identifier=identifier,)print("Authorize Synapse MCP:", link_response.link)input("Press Enter after authorizing...")# Make your first callresult = actions.execute_tool(tool_input={},tool_name="synapsemcp_get_evaluation",connection_name=connection_name,identifier=identifier,)print(result)
What you can do
Section titled “What you can do”Connect this agent connector to let your agent:
- Search entity by name, entities by md5, synapse — Use this when the user has a file name or Synapse entity name (and optionally its parent folder or project) but does not know the Synapse ID — resolves an exact name to its Synapse ID
- List submission statuses, my submissions, my submission bundles — Use this when the user wants the scoring statuses of every Synapse submission in an Evaluation queue — optionally filtered (SCORED, INVALID, etc.)
- Get wiki page, wiki order hint, wiki history — Use this when the user wants to read a Synapse wiki page — its markdown content and metadata — attached to a project, folder, or file
- Certified check user — Use this when the user wants to know whether a Synapse user has passed the certification quiz required for uploading human data
- Id check synapse — Use this when the user has a string that looks like a Synapse ID (e.g
Tool list
Section titled “Tool list”Use the exact tool names from the Tool list below when you call execute_tool. If you’re not sure which name to use, list the tools available for the current user first.
synapsemcp_check_synapse_id#Use this when the user has a string that looks like a Synapse ID (e.g. syn123456) and wants to check whether it exists in Synapse — verifies validity by querying the Synapse backend.1 param
Use this when the user has a string that looks like a Synapse ID (e.g. syn123456) and wants to check whether it exists in Synapse — verifies validity by querying the Synapse backend.
syn_idstringrequiredThe Synapse ID to validate (for example syn123456).synapsemcp_check_user_certified#Use this when the user wants to know whether a Synapse user has passed the certification quiz required for uploading human data. User ID example: '1234567'.1 param
Use this when the user wants to know whether a Synapse user has passed the certification quiz required for uploading human data. User ID example: '1234567'.
user_idintegerrequiredThe numeric Synapse user ID.synapsemcp_get_curation_task#Use this when the user wants the details of a single Synapse curation task by its numeric task ID. Task ID example: 42.1 param
Use this when the user wants the details of a single Synapse curation task by its numeric task ID. Task ID example: 42.
task_idintegerrequiredThe numeric Synapse curation task ID.synapsemcp_get_curation_task_resources#Use this when the user wants the Synapse resources (RecordSets, Folders, EntityViews) linked to a curation task — the data the curator will act on. Task ID example: 42.1 param
Use this when the user wants the Synapse resources (RecordSets, Folders, EntityViews) linked to a curation task — the data the curator will act on. Task ID example: 42.
task_idintegerrequiredThe numeric Synapse curation task ID.synapsemcp_get_entity#Return Synapse entity metadata by ID (projects, folders, files, tables, etc.). Only retrieves metadata information - does not download file content.1 param
Return Synapse entity metadata by ID (projects, folders, files, tables, etc.). Only retrieves metadata information - does not download file content.
entity_idstringrequiredThe Synapse entity ID to fetch (for example syn123456).synapsemcp_get_entity_acl#Use this when the user wants the sharing settings or access control list (ACL) of one single Synapse entity — who can access it and with what permissions. Entity ID example: syn123456. Optionally filter to a single principal ID (user or team), e.g. '3379097'. Use list_entity_acl to audit ACLs across many entities under a container.2 params
Use this when the user wants the sharing settings or access control list (ACL) of one single Synapse entity — who can access it and with what permissions. Entity ID example: syn123456. Optionally filter to a single principal ID (user or team), e.g. '3379097'. Use list_entity_acl to audit ACLs across many entities under a container.
entity_idstringrequiredThe Synapse entity ID (for example syn123456).principal_idintegeroptionalOptional user or team ID to filter to a single principal.synapsemcp_get_entity_annotations#Return custom annotation key/value pairs for a Synapse entity.1 param
Return custom annotation key/value pairs for a Synapse entity.
entity_idstringrequiredThe Synapse entity ID whose annotations to fetch (for example syn123456).synapsemcp_get_entity_children#List children for Synapse container entities (projects or folders).1 param
List children for Synapse container entities (projects or folders).
entity_idstringrequiredThe Synapse container entity ID (project or folder) whose children to list (for example syn123456).synapsemcp_get_entity_permissions#Use this when the user wants to know what the currently authenticated user is allowed to do on a Synapse entity (READ, UPDATE, DELETE, etc.). Entity ID example: syn123456. Returns the caller's own permissions only — use get_entity_acl to see everyone's permissions.1 param
Use this when the user wants to know what the currently authenticated user is allowed to do on a Synapse entity (READ, UPDATE, DELETE, etc.). Entity ID example: syn123456. Returns the caller's own permissions only — use get_entity_acl to see everyone's permissions.
entity_idstringrequiredThe Synapse entity ID (for example syn123456).synapsemcp_get_entity_provenance#Return provenance (activity) metadata for a Synapse entity, including inputs and code executed.2 params
Return provenance (activity) metadata for a Synapse entity, including inputs and code executed.
entity_idstringrequiredThe Synapse entity ID whose provenance to fetch (for example syn123456).versionintegeroptionalOptional entity version number to scope the provenance to a specific version. Omit for the latest version.synapsemcp_get_entity_schema#Use this when the user wants to know which JSON schema (data model / validation contract) is bound to a Synapse entity. Entity ID example: syn123456. Returns the schema binding metadata, not the schema body — use get_json_schema_body for that.1 param
Use this when the user wants to know which JSON schema (data model / validation contract) is bound to a Synapse entity. Entity ID example: syn123456. Returns the schema binding metadata, not the schema body — use get_json_schema_body for that.
entity_idstringrequiredThe Synapse entity ID (for example syn123456).synapsemcp_get_entity_schema_derived_keys#Use this when the user wants the annotation keys a bound JSON schema requires on a Synapse entity. Useful for knowing what metadata fields a schema is enforcing. Entity ID example: syn123456.1 param
Use this when the user wants the annotation keys a bound JSON schema requires on a Synapse entity. Useful for knowing what metadata fields a schema is enforcing. Entity ID example: syn123456.
entity_idstringrequiredThe Synapse entity ID (for example syn123456).synapsemcp_get_entity_schema_invalid_validations#Use this when the user wants the list of Synapse entities inside a Folder or Project that currently fail their bound JSON schema — the 'what's broken' view. Container entity ID example: syn123456.1 param
Use this when the user wants the list of Synapse entities inside a Folder or Project that currently fail their bound JSON schema — the 'what's broken' view. Container entity ID example: syn123456.
entity_idstringrequiredThe Synapse entity ID (for example syn123456).synapsemcp_get_entity_schema_validation_statistics#Use this when the user wants an aggregate validation summary for a Synapse entity container (Folder or Project) with a bound JSON schema — how many child entities pass or fail validation. Entity ID example: syn123456.1 param
Use this when the user wants an aggregate validation summary for a Synapse entity container (Folder or Project) with a bound JSON schema — how many child entities pass or fail validation. Entity ID example: syn123456.
entity_idstringrequiredThe Synapse entity ID (for example syn123456).synapsemcp_get_evaluation#Use this when the user wants a Synapse Evaluation queue — the challenge/competition queue that participants submit models or results to. Synonymous with 'challenge queue', 'leaderboard queue'. Evaluation ID example: '9600001'. Evaluation name example: 'DREAM Patient Data'.2 params
Use this when the user wants a Synapse Evaluation queue — the challenge/competition queue that participants submit models or results to. Synonymous with 'challenge queue', 'leaderboard queue'. Evaluation ID example: '9600001'. Evaluation name example: 'DREAM Patient Data'.
evaluation_idstringoptionalThe Synapse Evaluation (challenge queue) ID.evaluation_namestringoptionalThe exact name of the Synapse Evaluation queue.synapsemcp_get_evaluation_acl#Use this when the user wants the resource-level access control list of a Synapse Evaluation queue (challenge queue) — which principals (users and teams) hold which access types on the queue. Use for queue-administration questions like "who can score submissions". Distinct from get_evaluation_permissions, which reports the caller's own effective permissions. Evaluation ID example: '9600001'.1 param
Use this when the user wants the resource-level access control list of a Synapse Evaluation queue (challenge queue) — which principals (users and teams) hold which access types on the queue. Use for queue-administration questions like "who can score submissions". Distinct from get_evaluation_permissions, which reports the caller's own effective permissions. Evaluation ID example: '9600001'.
evaluation_idstringrequiredThe Synapse Evaluation (challenge queue) ID.synapsemcp_get_evaluation_permissions#Use this when the user wants to know what the authenticated caller is allowed to do on a Synapse Evaluation queue (challenge queue) — submit, administer, etc. Returns the caller's own effective permission flags. Distinct from get_evaluation_acl, which lists the queue's full ACL across every principal. Evaluation ID example: '9600001'.1 param
Use this when the user wants to know what the authenticated caller is allowed to do on a Synapse Evaluation queue (challenge queue) — submit, administer, etc. Returns the caller's own effective permission flags. Distinct from get_evaluation_acl, which lists the queue's full ACL across every principal. Evaluation ID example: '9600001'.
evaluation_idstringrequiredThe Synapse Evaluation (challenge queue) ID.synapsemcp_get_json_schema#Use this when the user wants metadata about a specific Synapse JSON Schema (data model, validation contract). Organization name example: 'org.sagebionetworks'. Schema name example: 'myDataset-1.0.0'.2 params
Use this when the user wants metadata about a specific Synapse JSON Schema (data model, validation contract). Organization name example: 'org.sagebionetworks'. Schema name example: 'myDataset-1.0.0'.
organization_namestringrequiredThe Synapse JSON Schema organization name.schema_namestringrequiredThe Synapse JSON Schema name.synapsemcp_get_json_schema_body#Use this when the user wants the raw JSON document of a Synapse JSON Schema — the actual data model / validation rules. Organization name example: 'org.sagebionetworks'. Schema name example: 'myDataset-1.0.0'.3 params
Use this when the user wants the raw JSON document of a Synapse JSON Schema — the actual data model / validation rules. Organization name example: 'org.sagebionetworks'. Schema name example: 'myDataset-1.0.0'.
organization_namestringrequiredThe Synapse JSON Schema organization name.schema_namestringrequiredThe Synapse JSON Schema name.versionstringoptionalOptional version number. Omit for the latest.synapsemcp_get_link#Use this when the user has a Synapse Link entity (a shortcut that points at another entity) and wants either the Link's own metadata or the target it resolves to. Link entity ID example: syn123456. Set follow_link=False to inspect the Link itself instead of its target.2 params
Use this when the user has a Synapse Link entity (a shortcut that points at another entity) and wants either the Link's own metadata or the target it resolves to. Link entity ID example: syn123456. Set follow_link=False to inspect the Link itself instead of its target.
entity_idstringrequiredThe Synapse entity ID (for example syn123456).follow_linkbooleanoptionalWhether to resolve the Link to its target entity (true) or return the Link's own metadata (false).synapsemcp_get_schema_organization#Use this when the user wants a Synapse JSON Schema Organization (namespace that owns a set of JSON schemas / data models) by name or numeric ID. Organization name example: 'org.sagebionetworks'. Organization ID example: 42.1 param
Use this when the user wants a Synapse JSON Schema Organization (namespace that owns a set of JSON schemas / data models) by name or numeric ID. Organization name example: 'org.sagebionetworks'. Organization ID example: 42.
organization_namestringrequiredThe Synapse JSON Schema organization name.synapsemcp_get_schema_organization_acl#Use this when the user wants the ACL of a Synapse JSON Schema Organization — who may publish schemas under that namespace. Organization name example: 'org.sagebionetworks'.1 param
Use this when the user wants the ACL of a Synapse JSON Schema Organization — who may publish schemas under that namespace. Organization name example: 'org.sagebionetworks'.
organization_namestringrequiredThe Synapse JSON Schema organization name.synapsemcp_get_submission#Use this when the user wants a specific Synapse submission — a challenge entry a participant sent to an Evaluation queue. Submission ID example: '9722233'.1 param
Use this when the user wants a specific Synapse submission — a challenge entry a participant sent to an Evaluation queue. Submission ID example: '9722233'.
submission_idstringrequiredThe Synapse submission ID.synapsemcp_get_submission_count#Use this when the user wants only the count of Synapse submissions (challenge entries) in an Evaluation queue, not the submissions themselves. Evaluation ID example: '9600001'.1 param
Use this when the user wants only the count of Synapse submissions (challenge entries) in an Evaluation queue, not the submissions themselves. Evaluation ID example: '9600001'.
evaluation_idstringrequiredThe Synapse Evaluation (challenge queue) ID.synapsemcp_get_submission_status#Use this when the user wants the scoring status of a single Synapse submission (challenge entry) — e.g. RECEIVED, EVALUATION_IN_PROGRESS, SCORED. Submission ID example: '9722233'.1 param
Use this when the user wants the scoring status of a single Synapse submission (challenge entry) — e.g. RECEIVED, EVALUATION_IN_PROGRESS, SCORED. Submission ID example: '9722233'.
submission_idstringrequiredThe Synapse submission ID.synapsemcp_get_team#Use this when the user wants a Synapse team by its numeric ID or name. A Synapse team is a group of users (collaborators, members) that can be granted access to entities collectively. Team ID example: '3379097'. Team name example: 'NF-OSI Curators'.2 params
Use this when the user wants a Synapse team by its numeric ID or name. A Synapse team is a group of users (collaborators, members) that can be granted access to entities collectively. Team ID example: '3379097'. Team name example: 'NF-OSI Curators'.
team_idintegeroptionalThe numeric Synapse team ID.team_namestringoptionalThe exact name of the Synapse team.synapsemcp_get_team_members#Use this when the user wants the roster of a Synapse team — who is on it. Pages through the team membership API; pass an increased ``offset`` to fetch the next batch. Team ID example: '3379097'.3 params
Use this when the user wants the roster of a Synapse team — who is on it. Pages through the team membership API; pass an increased ``offset`` to fetch the next batch. Team ID example: '3379097'.
team_idintegerrequiredThe numeric Synapse team ID.limitintegeroptionalMaximum number of results to return.offsetintegeroptionalNumber of results to skip, for pagination.synapsemcp_get_team_membership_status#Use this when the user wants to know whether a specific Synapse user is already a member of, has applied to, or has been invited to a Synapse team. Team ID example: '3379097'. User ID example: '1234567'.2 params
Use this when the user wants to know whether a specific Synapse user is already a member of, has applied to, or has been invited to a Synapse team. Team ID example: '3379097'. User ID example: '1234567'.
team_idintegerrequiredThe numeric Synapse team ID.user_idintegerrequiredThe numeric Synapse user ID.synapsemcp_get_team_open_invitations#Use this when the user wants the pending (not yet accepted or rejected) invitations for a Synapse team. Pages through the open-invitation API; pass an increased ``offset`` to fetch the next batch. Team ID example: '3379097'.3 params
Use this when the user wants the pending (not yet accepted or rejected) invitations for a Synapse team. Pages through the open-invitation API; pass an increased ``offset`` to fetch the next batch. Team ID example: '3379097'.
team_idintegerrequiredThe numeric Synapse team ID.limitintegeroptionalMaximum number of results to return.offsetintegeroptionalNumber of results to skip, for pagination.synapsemcp_get_user_profile#Use this when the user wants a Synapse user profile by numeric user ID or username, or the authenticated caller's own profile when called with no arguments. User ID example: '1234567'. Username example: 'janedoe'.2 params
Use this when the user wants a Synapse user profile by numeric user ID or username, or the authenticated caller's own profile when called with no arguments. User ID example: '1234567'. Username example: 'janedoe'.
user_idintegeroptionalThe numeric Synapse user ID.usernamestringoptionalThe Synapse username.synapsemcp_get_wiki_headers#Use this when the user wants the table of contents of a Synapse wiki — the list of pages and sub-pages attached to an entity. Owner entity ID example: syn123456. If the result hits the limit, call again with a higher offset to paginate.3 params
Use this when the user wants the table of contents of a Synapse wiki — the list of pages and sub-pages attached to an entity. Owner entity ID example: syn123456. If the result hits the limit, call again with a higher offset to paginate.
owner_idstringrequiredThe Synapse entity ID that owns the wiki (for example syn123456).limitintegeroptionalMaximum number of results to return.offsetintegeroptionalNumber of results to skip, for pagination.synapsemcp_get_wiki_history#Use this when the user wants the revision history (edit log) of a specific Synapse wiki page — who changed it and when. Owner entity ID example: syn123456. Wiki ID example: '123456' (numeric wiki page id). Paginate via offset if needed.4 params
Use this when the user wants the revision history (edit log) of a specific Synapse wiki page — who changed it and when. Owner entity ID example: syn123456. Wiki ID example: '123456' (numeric wiki page id). Paginate via offset if needed.
owner_idstringrequiredThe Synapse entity ID that owns the wiki (for example syn123456).wiki_idstringrequiredThe numeric wiki page ID. Omit for the root wiki page.limitintegeroptionalMaximum number of results to return.offsetintegeroptionalNumber of results to skip, for pagination.synapsemcp_get_wiki_order_hint#Use this when the user wants to know the display order of sub-pages in a Synapse wiki — how the wiki navigation is sorted. Owner entity ID example: syn123456.1 param
Use this when the user wants to know the display order of sub-pages in a Synapse wiki — how the wiki navigation is sorted. Owner entity ID example: syn123456.
owner_idstringrequiredThe Synapse entity ID that owns the wiki (for example syn123456).synapsemcp_get_wiki_page#Use this when the user wants to read a Synapse wiki page — its markdown content and metadata — attached to a project, folder, or file. A Synapse wiki is the markdown documentation surfaced on an entity. Owner entity ID example: syn123456. Omit wiki_id to get the root wiki page.2 params
Use this when the user wants to read a Synapse wiki page — its markdown content and metadata — attached to a project, folder, or file. A Synapse wiki is the markdown documentation surfaced on an entity. Owner entity ID example: syn123456. Omit wiki_id to get the root wiki page.
owner_idstringrequiredThe Synapse entity ID that owns the wiki (for example syn123456).wiki_idstringoptionalThe numeric wiki page ID. Omit for the root wiki page.synapsemcp_list_curation_tasks#Use this when the user wants every Synapse curation task in a project — the queue of data-curation work items attached to that project. Project entity ID example: syn123456.1 param
Use this when the user wants every Synapse curation task in a project — the queue of data-curation work items attached to that project. Project entity ID example: syn123456.
project_idstringrequiredThe Synapse project entity ID.synapsemcp_list_entity_acl#Use this when the user wants every ACL on a Synapse entity and, with recursive=True, on all its descendants — useful for auditing sharing recursively across a project subtree. Set include_container_content=True to include files and folders inside containers; recursive=True requires include_container_content=True and walks into child containers as well. Entity ID example: syn123456.4 params
Use this when the user wants every ACL on a Synapse entity and, with recursive=True, on all its descendants — useful for auditing sharing recursively across a project subtree. Set include_container_content=True to include files and folders inside containers; recursive=True requires include_container_content=True and walks into child containers as well. Entity ID example: syn123456.
entity_idstringrequiredThe Synapse entity ID (for example syn123456).include_container_contentbooleanoptionalWhether to include files and folders inside containers.recursivebooleanoptionalWhether to include ACLs of all descendant entities as well.target_entity_typesarrayoptionalFilter to only these entity types.synapsemcp_list_evaluation_submission_bundles#Use this when the user wants Synapse submission plus scoring status together (as bundles) for an Evaluation queue — one call returns both sides. Pass an increased ``offset`` to fetch the next batch. Evaluation ID example: '9600001'.4 params
Use this when the user wants Synapse submission plus scoring status together (as bundles) for an Evaluation queue — one call returns both sides. Pass an increased ``offset`` to fetch the next batch. Evaluation ID example: '9600001'.
evaluation_idstringrequiredThe Synapse Evaluation (challenge queue) ID.limitintegeroptionalMaximum number of results to return.offsetintegeroptionalNumber of results to skip, for pagination.statusstringoptionalFilter results to this status value.synapsemcp_list_evaluation_submissions#Use this when the user wants ALL submissions (every challenge entry from every participant) sent to a Synapse Evaluation queue — optionally filtered by status (SCORED, INVALID, etc.). NOT just the caller's own — use list_my_submissions for that. Pages through the queue's submission list; pass an increased ``offset`` to fetch the next batch. Evaluation ID example: '9600001'. Returns raw Submission objects; use list_submission_statuses for status-only data and list_evaluation_submission_bundles for bundled submission+status pairs.4 params
Use this when the user wants ALL submissions (every challenge entry from every participant) sent to a Synapse Evaluation queue — optionally filtered by status (SCORED, INVALID, etc.). NOT just the caller's own — use list_my_submissions for that. Pages through the queue's submission list; pass an increased ``offset`` to fetch the next batch. Evaluation ID example: '9600001'. Returns raw Submission objects; use list_submission_statuses for status-only data and list_evaluation_submission_bundles for bundled submission+status pairs.
evaluation_idstringrequiredThe Synapse Evaluation (challenge queue) ID.limitintegeroptionalMaximum number of results to return.offsetintegeroptionalNumber of results to skip, for pagination.statusstringoptionalFilter results to this status value.synapsemcp_list_evaluations#Use this when the user wants to enumerate Synapse Evaluation queues (challenges, competitions, leaderboards) — optionally filtered by project, access type, or active-only. Project ID example: syn123456. Paginate via offset.7 params
Use this when the user wants to enumerate Synapse Evaluation queues (challenges, competitions, leaderboards) — optionally filtered by project, access type, or active-only. Project ID example: syn123456. Paginate via offset.
access_typestringoptionalFilter to evaluations the caller has this access type on.active_onlybooleanoptionalOnly return currently active evaluations.available_onlybooleanoptionalOnly return evaluations the caller can currently submit to.evaluation_idsarrayoptionalFilter to this specific list of Evaluation IDs.limitintegeroptionalMaximum number of results to return.offsetintegeroptionalNumber of results to skip, for pagination.project_idstringoptionalThe Synapse project entity ID.synapsemcp_list_form_data#Use this when the user wants the form submissions for a Synapse FormGroup — a collection of structured-data forms submitted by users. Optionally filter by state (valid filter_by_state values: 'waiting_for_submission', 'submitted_waiting_for_review', 'accepted', 'rejected'). When as_reviewer=True the caller lists submissions they can review ('waiting_for_submission' is not allowed in this mode); when False (default) lists submissions the caller owns. Token-paginated: response includes ``next_page_token``; pass it back to fetch the next page (null on final page). Form group ID example: '42'.4 params
Use this when the user wants the form submissions for a Synapse FormGroup — a collection of structured-data forms submitted by users. Optionally filter by state (valid filter_by_state values: 'waiting_for_submission', 'submitted_waiting_for_review', 'accepted', 'rejected'). When as_reviewer=True the caller lists submissions they can review ('waiting_for_submission' is not allowed in this mode); when False (default) lists submissions the caller owns. Token-paginated: response includes ``next_page_token``; pass it back to fetch the next page (null on final page). Form group ID example: '42'.
group_idstringrequiredThe Synapse FormGroup ID.as_reviewerbooleanoptionalList submissions the caller can review instead of submissions they own.filter_by_statearrayoptionalFilter to these submission states (e.g. accepted, rejected).next_page_tokenstringoptionalPagination token returned by a previous call. Omit for the first page.synapsemcp_list_json_schema_versions#Use this when the user wants every version published for a Synapse JSON Schema. Token-paginated like list_json_schemas: pass the returned ``next_page_token`` back to fetch the next page. Organization name example: 'org.sagebionetworks'. Schema name example: 'myDataset-1.0.0'.3 params
Use this when the user wants every version published for a Synapse JSON Schema. Token-paginated like list_json_schemas: pass the returned ``next_page_token`` back to fetch the next page. Organization name example: 'org.sagebionetworks'. Schema name example: 'myDataset-1.0.0'.
organization_namestringrequiredThe Synapse JSON Schema organization name.schema_namestringrequiredThe Synapse JSON Schema name.next_page_tokenstringoptionalPagination token returned by a previous call. Omit for the first page.synapsemcp_list_json_schemas#Use this when the user wants every Synapse JSON Schema (data model, validation contract) owned by an organization. Token-paginated (no limit/offset): the response includes ``next_page_token``; pass it back as the next call's ``next_page_token`` argument to fetch the following page. ``next_page_token`` is null on the final page. Organization name example: 'org.sagebionetworks'.2 params
Use this when the user wants every Synapse JSON Schema (data model, validation contract) owned by an organization. Token-paginated (no limit/offset): the response includes ``next_page_token``; pass it back as the next call's ``next_page_token`` argument to fetch the following page. ``next_page_token`` is null on the final page. Organization name example: 'org.sagebionetworks'.
organization_namestringrequiredThe Synapse JSON Schema organization name.next_page_tokenstringoptionalPagination token returned by a previous call. Omit for the first page.synapsemcp_list_my_submission_bundles#Use this when the user wants their own Synapse submission+status bundles for an Evaluation queue — one call returns both submission and scoring status for every entry they made. Pass an increased ``offset`` to fetch the next batch. Evaluation ID example: '9600001'.3 params
Use this when the user wants their own Synapse submission+status bundles for an Evaluation queue — one call returns both submission and scoring status for every entry they made. Pass an increased ``offset`` to fetch the next batch. Evaluation ID example: '9600001'.
evaluation_idstringrequiredThe Synapse Evaluation (challenge queue) ID.limitintegeroptionalMaximum number of results to return.offsetintegeroptionalNumber of results to skip, for pagination.synapsemcp_list_my_submissions#Use this when the user wants their own submissions (challenge entries) to a Synapse Evaluation queue. Pass an increased ``offset`` to page beyond the first batch. Evaluation ID example: '9600001'.3 params
Use this when the user wants their own submissions (challenge entries) to a Synapse Evaluation queue. Pass an increased ``offset`` to page beyond the first batch. Evaluation ID example: '9600001'.
evaluation_idstringrequiredThe Synapse Evaluation (challenge queue) ID.limitintegeroptionalMaximum number of results to return.offsetintegeroptionalNumber of results to skip, for pagination.synapsemcp_list_submission_statuses#Use this when the user wants the scoring statuses of every Synapse submission in an Evaluation queue — optionally filtered (SCORED, INVALID, etc.). Evaluation ID example: '9600001'. Returns status records only; use list_evaluation_submissions for the submissions themselves.4 params
Use this when the user wants the scoring statuses of every Synapse submission in an Evaluation queue — optionally filtered (SCORED, INVALID, etc.). Evaluation ID example: '9600001'. Returns status records only; use list_evaluation_submissions for the submissions themselves.
evaluation_idstringrequiredThe Synapse Evaluation (challenge queue) ID.limitintegeroptionalMaximum number of results to return.offsetintegeroptionalNumber of results to skip, for pagination.statusstringoptionalFilter results to this status value.synapsemcp_search_entities_by_md5#Use this when the user has an MD5 hash of a file and wants the Synapse entities (file entities) whose attached file has that exact MD5 — useful for deduplication and 'is this already in Synapse' checks. MD5 example: '9e107d9d372bb6826bd81d3542a419d6'.1 param
Use this when the user has an MD5 hash of a file and wants the Synapse entities (file entities) whose attached file has that exact MD5 — useful for deduplication and 'is this already in Synapse' checks. MD5 example: '9e107d9d372bb6826bd81d3542a419d6'.
md5stringrequiredThe MD5 hash of the file content to search for.synapsemcp_search_entity_by_name#Use this when the user has a file name or Synapse entity name (and optionally its parent folder or project) but does not know the Synapse ID — resolves an exact name to its Synapse ID. The name match is case-sensitive (e.g. 'Patient Record Set' will not match 'Patient record set'); use search_synapse for fuzzy or case-insensitive lookup. Parent entity ID example: syn123456. Name example: 'sample.csv'.2 params
Use this when the user has a file name or Synapse entity name (and optionally its parent folder or project) but does not know the Synapse ID — resolves an exact name to its Synapse ID. The name match is case-sensitive (e.g. 'Patient Record Set' will not match 'Patient record set'); use search_synapse for fuzzy or case-insensitive lookup. Parent entity ID example: syn123456. Name example: 'sample.csv'.
namestringrequiredThe exact entity name to resolve to a Synapse ID.parent_idstringoptionalRestrict to entities under this parent container ID.synapsemcp_search_synapse#Search Synapse entities using keyword queries with optional name/type/parent filters. Results are served by Synapse as data custodian. Attribution and licensing are determined by the original contributors; check the specific entity's annotations or Wiki for details.7 params
Search Synapse entities using keyword queries with optional name/type/parent filters. Results are served by Synapse as data custodian. Attribution and licensing are determined by the original contributors; check the specific entity's annotations or Wiki for details.
entity_typestringoptionalFilter results to a single entity type (for example file, folder, project, table).entity_typesarrayoptionalFilter results to multiple entity types. Pass as a JSON array of strings via the SDK, not as a string.limitintegeroptionalMaximum number of results to return.namestringoptionalFilter results to entities matching this exact name.offsetintegeroptionalNumber of results to skip, for pagination.parent_idstringoptionalRestrict the search to entities under this parent container ID (for example syn123456).query_termstringoptionalFree-text keyword query to search Synapse entities.