Sign inSign up

mcp/fibery

Verified Publisher

By mcp

•Updated 5 months ago

Interact with your Fibery workspace.

Image
Machine learning & AI
0

10K+

mcp/fibery repository overview

⁠Fibery MCP Server

Interact with your Fibery workspace.

What is an MCP Server?⁠

⁠MCP Info

⁠Image Building Info

AttributeDetails
Dockerfilehttps://github.com/Fibery-inc/fibery-mcp-server/blob/3d21ca04e771bad91aa2d9799d29ed3583362326/Dockerfile⁠
Commit3d21ca04e771bad91aa2d9799d29ed3583362326
Docker Image built byDocker Inc.
Docker Scout Health ScoreDocker Scout Health Score
Verify SignatureCOSIGN_REPOSITORY=mcp/signatures cosign verify mcp/fibery --key https://raw.githubusercontent.com/docker/keyring/refs/heads/main/public/mcp/latest.pub
LicenceMIT License

⁠Available Tools (7)

Tools provided by this ServerShort Description
create_entities_batchCreate multiple Fibery entities at once with specified fields.
create_entityCreate Fibery entity with specified fields.
current_dateGet today's date in ISO 8601 format (YYYY-mm-dd.HH:MM:SS.000Z)
describe_databaseGet list of all fields (in format of 'Title [name]: type') in the selected Fibery database and for all related databases.
list_databasesGet list of all databases (their names) in user's Fibery workspace (schema)
query_databaseRun any Fibery API command.
update_entityUpdate Fibery entity with specified fields.

⁠Tools Details

⁠Tool: create_entities_batch

Create multiple Fibery entities at once with specified fields. Examples (note, that these databases are non-existent, use databases only from user's schema!): Query: Create some features Tool use: { "database": "Product Management/Feature", "entities": [ { "Product Management/Name": "New Feature 1", "Product Management/Description": "Description of the new feature 1", "workflow/state": "To Do" # notice how we use string literal for workflow field here }, { "Product Management/Name": "New Feature 2", "Product Management/Description": "Description of the new feature 2", "workflow/state": "In Progress" # notice how we use string literal for workflow field here } ] } In case of successful execution, you will get links to created entities. Make sure to give the links to the user.

ParametersTypeDescription
databasestringFibery Database where entities will be created.
entitiesobjectList of dictionaries that define what fields to set in format [{"FieldName": value}] (i.e. [{"Product Management/Name": "My new entity"}]).

⁠Tool: create_entity

Create Fibery entity with specified fields. Examples (note, that these databases are non-existent, use databases only from user's schema!): Query: Create a feature Tool use: { "database": "Product Management/Feature", "entity": { "Product Management/Name": "New Feature", "Product Management/Description": "Description of the new feature", "workflow/state": "To Do" # notice how we use string literal for workflow field here } } In case of successful execution, you will get a link to created entity. Make sure to give that link to the user.

ParametersTypeDescription
databasestringFibery Database where to create an entity.
entityobjectDictionary that defines what fields to set in format {"FieldName": value} (i.e. {"Product Management/Name": "My new entity"}).

⁠Tool: current_date

Get today's date in ISO 8601 format (YYYY-mm-dd.HH:MM:SS.000Z)

⁠Tool: describe_database

Get list of all fields (in format of 'Title [name]: type') in the selected Fibery database and for all related databases.

ParametersTypeDescription
database_namestringDatabase name as defined in Fibery schema
include_external_databasesboolean optionalWhether to include fields from related/external databases. Defaults to true. Set to false to reduce context size.

⁠Tool: list_databases

Get list of all databases (their names) in user's Fibery workspace (schema)

⁠Tool: query_database

Run any Fibery API command. This gives tremendous flexibility, but requires a bit of experience with the low-level Fibery API. In case query succeeded, return value contains a list of records with fields you specified in select. If request failed, will return detailed error message. Examples (note, that these databases are non-existent, use databases only from user's schema!): Query: What newly created Features do we have for the past 2 months? Tool use: { "q_from": "Dev/Feature", "q_select": { "Name": ["Dev/Name"], "Public Id": ["fibery/public-id"], "Creation Date": ["fibery/creation-date"] }, "q_where": [">", ["fibery/creation-date"], "$twoMonthsAgo"], "q_order_by": {"fibery/creation-date": "q/desc"}, "q_limit": 100, "q_offset": 0, "q_params": { $twoMonthsAgo: "2025-01-16T00:00:00.000Z" } }

Query: What Admin Tasks for the past week are Approval or Done? Tool use: { "q_from": "Administrative/Admin Task", "q_select": { "Name": ["Administrative/Name"], "Public Id": ["fibery/public-id"], "Creation Date": ["fibery/creation-date"], "State": ["workflow/state", "enum/name"] }, "q_where": [ "q/and", # satisfy time AND states condition [">", ["fibery/creation-date"], "$oneWeekAgo"], [ "q/or", # nested or, since entity can be in either of these states ["=", ["workflow/state", "enum/name"], "$state1"], ["=", ["workflow/state", "enum/name"], "$state2"] ] ], "q_order_by": {"fibery/creation-date": "q/desc"}, "q_limit": 100, "q_offset": 0, "q_params": { # notice that parameters used in "where" are always passed in params! $oneWeekAgo: "2025-03-07T00:00:00.000Z", $state1: "Approval", $state2: "Done" } }

Query: What Admin Tasks for the past week are Approval or Done? Tool use: { "q_from": "Administrative/Admin Task", "q_select": { "State": ["workflow/state", "enum/name"], "Public Id": ["fibery/public-id"], "Creation Date": ["fibery/creation-date"], "Modification Date": ["fibery/modification-date"], "Deadline": ["Administrative/Deadline"], "Group": ["Administrative/Group", "Administrative/name"], "Name": ["Administrative/Name"], "Priority": ["Administrative/Priority_Administrative/Admin Task", "enum/name"] }, "q_where": ["!=", ["workflow/state", "workflow/Final"], "$stateType"], # Administrative/Admin Task is not "Finished" yet "q_order_by": {"fibery/creation-date": "q/desc"}, "q_limit": 100, "q_offset": 0, "q_params: { "$stateType": true } }

Query: Summarize acc contacts with public id 1. Tool use: { "q_from": "Accounting/Acc Contacts", "q_select": { "Name": ["Accounting/Name"], "Public Id": ["fibery/public-id"], "Creation Date": ["fibery/creation-date"], "Description": ["Accounting/Description"] }, "q_where": ["=", ["fibery/public-id"], "$publicId"], "q_limit": 1, "q_params": { $publicId: "1", } }

ParametersTypeDescription
q_fromstringSpecifies the entity type in "Space/Type" format (e.g., "Product Management/feature", "Product Management/Insight")
q_limitintegerNumber of results per page (defaults to 50). Maximum allowed value is 1000
q_selectobjectDefines what fields to retrieve. Can include:
  • Primitive fields using format {"AliasName": "FieldName"} (i.e. {"Name": "Product Management/Name"})
  • Related entity fields using format {"AliasName": ["Related entity", "related entity field"]} (i.e. {"Secret": ["Product Management/Description", "Collaboration~Documents/secret"]}). Careful, does not work with 1-* connection! To work with 1-* relationships, you can use sub-querying: {"AliasName": {"q/from": "Related type", "q/select": {"AliasName 2": "fibery/id"}, "q/limit": 50}} Note: sub-queries use q/from, q/select, q/limit (with slashes), unlike top-level parameters that use underscores. AliasName can be of any arbitrary value. q_offset|integer optional|Number of results to skip. Mainly used in combination with limit and orderBy for pagination. q_order_by|object optional|List of sorting criteria in format {"field1": "q/asc", "field2": "q/desc"} q_params|object optional|Dictionary of parameter values referenced in where using "$param" syntax. For example, {$fromDate: "2025-01-01"} q_where|array optional|Filter conditions in format [operator, [field_path], value] or ["q/and"|"q/or", ...conditions]. Common usages:
  • Simple comparison: ["=", ["field", "path"], "$param"]. You cannot pass value of $param directly in where clause. Use params object instead. Pay really close attention to it as it is not common practice, but that's how it works in our case!
  • Logical combinations: ["q/and", ["<", ["field1"], "$param1"], ["=", ["field2"], "$param2"]]
  • Available operators: =, !=, <, <=, >, >=, q/contains, q/not-contains, q/in, q/not-in

⁠Tool: update_entity

Update Fibery entity with specified fields. Examples (note, that these databases are non-existent, use databases only from user's schema!): Query: Update a feature we talked about Tool use: { "database": "Product Management/Feature", "entity": { "fibery/id": "12345678-1234-5678-1234-567812345678", "Product Management/Name": "New Feature 2", "Product Management/Description": {"append": true, "content": "Notes: some notes"}, "workflow/state": "In Progress" } } In case of successful execution, you will get a link to updated entity. Make sure to give that link to the user.

ParametersTypeDescription
databasestringFibery Database where to update an entity.
entityobjectDictionary that defines what fields to set in format {"FieldName": value} (i.e. {"Product Management/Name": "My new entity"}).
Exception are document fields. For them you must specify append (boolean, whether to append to current content) and content itself: {"Product Management/Description": {"append": true, "content": "Additional info"}}

⁠Use this MCP Server

{
  "mcpServers": {
    "fibery": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "FIBERY_HOST",
        "-e",
        "FIBERY_API_TOKEN",
        "mcp/fibery"
      ],
      "env": {
        "FIBERY_HOST": "your-domain.fibery.io",
        "FIBERY_API_TOKEN": "your-api-token"
      }
    }
  }
}

Why is it safer to run MCP Servers with Docker?⁠

Install from MCP:Hub

Tag summary

Content type

Image

Digest

sha256:377120c9f…

Size

77.1 MB

Last updated

5 months ago

docker pull mcp/fibery

This week's pulls

Pulls:

17

Sep 14 to Sep 20