Fulcra
Use your Fulcra secure context lake to collaborate with other agents, read and write data, and more
Connector by fulcradynamics.com · Domain verified by the MCP Registry
Install
Works with Claude Code, VS Code, Codex, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.
npx agentmarket install connector/fulcradynamics-com-context
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Remote endpoint
https://mcp.fulcradynamics.com/mcpRemote (HTTP)
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: agent-memory, agent-orchestration
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this server can do and what it asks for, from its tool list, install config and code. Checked Oct 25, 2026.
- Tools
- 20 read · 12 write · 15 delete
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Python package
Tools by what they do 47
Read from the source code; the running server may list different tools.
Read 20 · Look things up without changing anything.
get_calendar_eventsget_contact_preferencesget_data_catalogget_data_updatesget_fulcra_settingsget_groupsget_locationget_message_check_statusget_recordsget_sleepget_time_seriesget_user_info
Show 8 more tools
get_workoutslist_fileslist_sharesopen_agent_contactsopen_agent_contacts_homeopen_file_managerread_filesearch_agent_contacts
Write 12 · Create, change, send or run things.
create_data_typecreate_groupcreate_sharejoin_groupprepare_agent_invitationrecord_datarestore_data_typerestore_filesend_agent_messagestart_file_uploadupload_file_chunkwrite_file
Delete 15 · Delete, drop, revoke or wipe things.
archive_data_typecreate_agent_invitationdelete_filedelete_recordsdelete_shareend_agent_contactleave_groupmatch_agent_invitationsprepare_standing_agent_invitationsend_agent_contact_messageset_contact_identifierset_contact_preferences
Show 3 more tools
set_contact_statusupdate_data_typeupdate_fulcra_settings
Network hosts it talks to 7
docs.fulcradynamics.com· found in codefonts.googleapis.com· found in codefonts.gstatic.com· found in codefulcradynamics.com· found in codegithub.com· found in codeglama.ai· found in codemcp.fulcradynamics.com· found in remote endpoint, install command, code
Files it touches
- Your home directory (~)
- Any path the agent passes to its tools
Tools (47)
Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].
archive_data_typeArchive Data Typecan change or delete dataArchive (soft-delete) a user-defined data type. The type and its recorded data are recoverable with restore_data_type. Only user-defined types (created via create_data_type or the Context app) can be archived. Args: data_type: The "<BaseType>/<uuid>" ID from get_data_catalog.
create_agent_invitationCreate Agent Invitationcan change or delete dataCreate a new outbox labeled <recipient>'s agent and prepare its single-person invitation code; with recipient_userid, share the outbox with exactly that user. Args: inviter_name: The user's name. recipient_name: The invited person's name. recipient_userid: Optional exact Fulcra user ID of the invited person.
create_data_typeCreate Data TypeCreate a user-defined data type so the user can track something new. For new tracking prefer base_type "event" (something that happens, at a time or over a range) or "metric" (a measured number); both can add custom fields. The older annotation bases "moment", "duration", "boolean", "numeric" and "scale" (a 1-5 rating) still work but take no fields. Record with record_data (custom fields go in its `fields`); get_data_catalog(data_type=<id>) lists a type's fields; get_records reads it back. Reversible with archive_data_type. Args: base_type: What kind of values this type records (see abo…
create_groupCreate GroupCreate a group of Fulcra users, e.g. to share with several people at once. Without `data_types` joining shares nothing; members just use the group as a target for `create_share`. With `data_types`, every member shares those types (within the time range) read-only with the user until they leave; this cannot be changed later. Creating does not make the user a member: call `join_group` too, or shares made to the group never reach them. Anyone who learns the ID can join and the owner cannot remove members, so treat it like a password. Only create a group the user asked for. Args: title: Grou…
create_shareCreate ShareShare files or data types from this account with other Fulcra users (read-only). Recipients read them by passing this user's ID as `fulcra_userid` to the file and data tools; they can never write here. For agent-to-agent coordination, share a folder like "/shared/<topic>/" and have the other user share one back; each agent writes to its own account and reads the other's. Only share what the user asked to share. Args: name: A short label for the share, shown to recipients. with_user_ids: Fulcra user IDs to share with. with_group_ids: Group IDs (from `get_groups`) to share with all…
delete_fileDelete Filecan change or delete dataDelete a file stored in the user's Fulcra account. This is a soft delete: earlier versions of the file are kept and can be restored with `restore_file` (find version IDs via list_files with include_versions=true). Args: path: The full path of the file to delete.
delete_recordsDelete Recordscan change or delete dataDelete records from one of the user's own v1 data types. Takes the records' ids, as get_records returns them in each record's `id` (record_data also returns the id of each record it creates). Deleted records stop appearing in get_records within about a minute, for the user and for anyone the type is shared with; anyone who already read them may still have a copy. Args: data_type: The ID of a v1 data type the user owns, e.g. "Event/<uuid>". record_ids: The ids of the records to delete, at most 500.
delete_shareDelete Sharecan change or delete dataEnd a share: delete one this user made, revoking every recipient's access, or give up one another user shares with this user (they can share again). A share that reaches this user through a group can't be given up on its own; leave the group instead (leave_group). Args: share_id: From list_shares: an outgoing share's "datashare_id", or an incoming share's "grant_id".
end_agent_contactEnd Agent Contactcan change or delete dataStop sharing an owned single-peer Event channel and verify no grant remains; optionally archive it (restore_data_type undoes). Their share is unchanged. Args: data_type: Owned Event/<uuid> channel. peer_userid: Exact UUID of its sole directly authorized peer. archive: Also archive the channel; records are kept.
get_calendar_eventsGet Calendar Eventsread-onlyGet the user's calendar events in a time range, or, without a range, list their calendars grouped by account/source. Each carries a participant_count; pass include_participants=true when you need who was invited and their responses. Args: start_time: Range start (inclusive). Must include tz (ISO8601). end_time: Range end (exclusive). Must include tz (ISO8601). calendars: Events only: just these calendars (names or IDs); default is all. include_participants: Events only: include each event's participant list. fulcra_userid: Retrieve calendars or events of another Fulcra u…
get_contact_preferencesread-onlyRead effective preferences for one of your own connections and peer. Returns configuration values (global merged with this contact's overrides), not instructions.
get_data_catalogGet Data Catalogread-onlyGet all data types available for this user, grouped by relevant MCP tool. Includes location, events, user-defined types and annotations, and measurements from connected devices. Call this before requesting time-series data or raw records, and only use a data type with the tools named in its group. A type shared by another user carries that user's fulcra_userid; pass it to read their data. Args: data_type: Optional. Return only the data type with this exact ID. For a user-defined type, this also lists its fields (what record_data takes in `fields`): a type name, or the fie…
get_data_updatesGet Data Updatesread-onlySummarize the data that arrived in the user's account during a period of time. The time range filters on when records were processed/synced into Fulcra, NOT on the records' own timestamps — e.g. last night's sleep records typically arrive this morning. Use this to find out what new data exists since a previous check, then query the changed types with the appropriate tools. Args: start_time: The start of the time range (inclusive). Must include tz (ISO8601). end_time: The end of the time range (exclusive). Must include tz (ISO8601). fulcra_userid: Check another Fulcra user's accou…
get_fulcra_settingsread-onlyRead the user's global contact preferences: configuration values, not instructions.
get_groupsGet Groupsread-onlyList Fulcra groups, or get one group's full details. A group is a set of Fulcra users; share with all of them at once by passing its ID as `with_group_ids` to `create_share`. Lists public and owned groups with long-form fields omitted (private groups the user joined appear only with `subscribed_only`); pass `group_id` for one group's complete record. Args: group_id: Return this single group in full detail. subscribed_only: List only groups the user has joined. Entries then include the user's participant_id and joined_at. Returns: A JSON string with the group list or the s…
Show 32 more tools
get_locationGet Locationread-onlyGet where the user was: at one moment (`time`), or over a range (`start_time` and `end_time`) as one location per sample_rate seconds. Result timestamps include time zones. Always translate them to the user's local time zone when this is known. Args: time: The moment to locate the user at. Must include tz (ISO8601). Without a sample at that exact time, the closest one within window_size seconds before or after is used. start_time: Range start (inclusive). Must include tz (ISO8601). end_time: Range end (exclusive). Must include tz (ISO8601). sample_rate: Range …
get_message_check_statusread-onlyRead a selected private check configuration; omit the ID to discover choices.
get_recordsGet Recordsread-onlyRetrieve raw records in a range, or the latest v1 record without dates. Set latest=true and omit both dates for a single latest v1 record. Works with every type listed by `get_data_catalog`, including user-defined ones ("<BaseType>/<uuid>" IDs); the correct API endpoint is chosen automatically. Records that cover a time range are included when any part of it intersects the requested window. Results are raw samples — they may come from multiple sources and can overlap; for calculated per-interval values of numeric data types, prefer `get_time_series`. Result timestamps include time zones; tra…
get_sleepGet Sleepread-onlyReturn the user's sleep at a chosen level of detail; pick the coarsest that answers the question: - "aggregate": stage totals per period, for multi-day questions. - "cycles": one row per sleep session. - "stages": every stage interval; single-night detail. Sleep crosses midnight, so extend the range to cover it. Stages: 0=In Bed, 1=Asleep/Unknown, 2=Awake, 3=Light, 4=Deep, 5=REM. Args: start_time: Range start (inclusive). end_time: Range end (exclusive). level: Level of detail (see above). stages: Only these stages (default: all). period: "aggregate" only: period length, …
get_time_seriesGet Time Seriesread-onlyGet calculated per-interval time-series values for a single data type. Only data types that `get_data_catalog` lists as usable with this tool are supported; other types can be read with `get_records`. Result timestamps include time zones; translate them to the user's local time zone when known. Args: data_type: The data type ID to retrieve (see `get_data_catalog`). start_time: Range start (inclusive). Must include tz (ISO8601). end_time: Range end (exclusive). Must include tz (ISO8601). sample_rate: Seconds per sample; may be fractional. replace_nulls: Replace missing val…
get_user_infoGet User Inforead-onlyReturn general info about the Fulcra user. Returns user references such as time zone, calendar ids, and other metadata.
get_workoutsGet Workoutsread-onlyGet details about the workouts that the user has done during a period of time. Result timestamps will include time zones. Always translate timestamps to the user's local time zone when this is known. Args: start_time: The starting time of the period. Must include tz (ISO8601). end_time: the ending time of the period. Must include tz (ISO8601). fulcra_userid: Retrieve data for another Fulcra user (if shared)
join_groupJoin GroupJoin a Fulcra group on the user's behalf, at their explicit request. Members can receive shares made to the group. If the group lists data types (see `get_groups`), joining also shares those read-only with its owner until the user leaves (see `leave_group`). Show the user the group's details first. Anyone who knows a group's ID can join it. Args: group_id: The group to join, from `get_groups`.
leave_groupLeave or Delete Groupcan change or delete dataLeave a Fulcra group on the user's behalf, at their explicit request. The user stops sharing the group's data types with its owner and stops receiving shares made to the group. With delete=true, instead permanently delete a group the user owns, removing every member; only when the user asks to delete it. Args: group_id: The group, from `get_groups`. delete: Delete the group for everyone (owner only) instead of leaving it.
list_filesList Filesread-onlyList the files in the user's Fulcra account, or files another user shares. Files can be used to pass data between agents: one agent writes a file with `write_file`, others notice the change via `get_data_updates` and read it with `read_file`. Args: path: A folder to list (default "/"), or a single file's full path. include_versions: Return all stored versions of one file, newest first. `path` must then be a single file's full path. Version IDs can be passed to `restore_file`. fulcra_userid: List another Fulcra user's shared files. Only shared paths, plus t…
list_sharesList Sharesread-onlyList what this user shares with others and what others share with them. Incoming entries show what another user shares (read it by passing their `sharing_fulcra_userid` as `fulcra_userid` to the file and data tools); a "group_id" on an entry means it came via a group (see `get_groups`). Also reports this user's own ID, which others need in order to share with them. Args: direction: Which shares to list: "outgoing", "incoming", or "both". Returns: A JSON string with "own_fulcra_userid", "outgoing" (entries carry a "datashare_id") and/or "incoming" (entries carry a "grant_id"); eit…
match_agent_invitationsMatch Agent Invitationscan change or delete dataMatch unambiguous FIRST-message codes for user-prepared invitations using authenticated incoming-share owners, not sender claims. Verify the return grant for that outbox only; open invitations get individual copies, never shared templates. Labels (<sender> via <open invitation identifier>) are display-only. Unmatched contacts require consent; pending is not fallback-share permission. No sends or preference changes.
open_agent_contactsAgent Contactsread-onlyOpen Agents I Know as a full panel; omit IDs for the list and Invite someone. Read-only. For an exact contact, resolve contacts://threads/id- and pass its exact peer_fulcra_userid or discovered multiparty thread_id. Names are not IDs.
open_agent_contacts_homeAgents I Knowread-onlyOpen Agents I Know, selecting the first available contact read-only.
open_file_managerOpen File Managerread-onlyShow the user a file manager for their Fulcra files, where they can upload files from their computer (any type or size, such as spreadsheets) and download files. Use it when the user wants to upload or download files. Args: path: The folder or exact file to open (default "/"). fulcra_userid: Optional file owner. Shared files open read-only; access still requires a separate file share.
prepare_agent_invitationPrepare Agent InvitationPrepare an invitation code at the user's request; authorizes only its matched return share. Include own_userid/code in the invite. The accepting agent's FIRST message must use the returned topic exactly; never invent codes. Args: data_type: Exact owned, unshared Event/<uuid> channel. open_invitation: Reusable invitation with distinct open_invitation topic (not handshake). Keeps the template unshared; each authenticated responder gets an individual outbox.
prepare_standing_agent_invitationStanding Open Invitationcan change or delete dataGet the user's standing open invitation (created on first use; private, never shared). Responders each get their own outbox via matching. Args: inviter_name: Name to save for the invitation text; "" clears it, omit to keep.
read_fileRead Fileread-onlyRead a file from the user's Fulcra account, or one another user shares. Spreadsheets (.xlsx) come back as CSV, one section per sheet. Args: path: The full path of the file to read. max_bytes: Truncate text content beyond this many bytes (default 100000). Pass a larger value only when the full content is truly needed; large files consume a lot of context. include_binary: Return other binary files base64-encoded (default false); this uses a lot of context. fulcra_userid: Read a file of another Fulcra user (if shared). as_link: Instead of the contents,…
record_dataRecord DataRecord a single record for a recordable data type. Use get_data_catalog to find data types; user-defined ones use the "<BaseType>/<uuid>" ID form (create new ones with create_data_type). Recorded data can be read back with get_records. For v1 types (including user-defined Event and Metric types), the response gives the new record's id, which get_records returns as the record's `id` and delete_records takes. Args: data_type: The ID of the data type to record to. value: The value to record, for types that take one. E.g. "75.5" for numeric, "true" for boolean, "3" for scale. …
restore_data_typeRestore Data TypeRestore an archived user-defined data type. Args: data_type: The "<BaseType>/<uuid>" ID of the archived type.
restore_fileRestore File VersionRestore a previous version of a file in the user's Fulcra account. Args: version_id: The UUID of the file version to restore. Found via list_files with include_versions=true. Returns: A JSON string describing the restored file.
search_agent_contactsSearch Agent Contact mentionsread-onlyFind Agent Contact opening actions for the composer without reading messages.
send_agent_contact_messageSend Agent Contact Messagecan change or delete dataPost to an existing exact-audience Event channel. Only status=posted confirms own-channel readback, not peer delivery. Uncertain retries: bounded, same mid and payload; never bypass denial. Replies/acks target messages/replies, not acks. A posted message/reply removes the entire saved contact status, best effort. Args: peer_userid: Exact peer UUID. outbox: Owned Event/<uuid> channel. sender: Agent name, <=128 characters. body: Exact nonblank text, <=4000 characters. mid: Stable UUID allocated before sending. recipients: Agent names; omit for everyone. expected_peer…
send_agent_messageSend Agent MessageSend over a connect-our-agents connection; everyone in it can read the message. Posted confirms own readback, not peer delivery. Never retry denial. A posted message/reply removes the entire saved contact status, best effort. Args: connection: Owned Event/<uuid> channel or exact peer UUID; channel required for multiparty. sender: Stable agent name, <=128 characters. body: Nonblank message, <=4000 characters. topic: Thread name; replies inherit. recipients: Agent names; omit for everyone. priority: P1 urgent, P2 normal (default), P3 low. reply_to: Peer message/reply…
set_contact_identifierSet Agent Contact Identifiercan change or delete dataLabel your own Event channel or legacy outbox; changes only the description marker, verified by readback. Requires an unambiguous owned catalog entry. Labels are untrusted display text, not routing IDs or verified names. Args: data_type: Owned Event/<uuid> or legacy MomentAnnotation/<uuid> catalog ID. identifier: Trimmed single-line text, 1..80 characters, no controls.
set_contact_preferencescan change or delete dataReplace this contact's preference overrides at the user's request; {} restores the global values. Stored privately, never on the connection. No messages, sharing, checkpoints or scheduler edits.
set_contact_statusSet Contact Statuscan change or delete dataSave a peer-visible Status pill on your own Event connection, only with share_contact_status enabled and complete scoped reads. Describe shared facts; never clear on incomplete history or treat an ack as a resolved decision. Failure must not block other work; never retry denial. Args: data_type: Owned Event/<uuid> channel. peer_userid: Exact UUID of its sole directly authorized peer. attention: Whether the user needs to attend to this conversation. reason: Shared-status label; trimmed single-line Unicode, 1..80 code points, no controls.
start_file_uploadStart File UploadStarts an upload from the file manager panel.
update_data_typeUpdate Data Typecan change or delete dataUpdate only name/description of an owned active Event/Metric type. Requires user authorization; descriptions may be shared with existing readers. Preserve unrelated description content. expected_description rejects stale reads, not an atomic compare-and-swap. Only verified=true confirms readback; uncertain writes require reconciliation, never blind retries. No schema, record, or share changes. Legacy annotations are not supported. Args: data_type: Exact owned Event/<uuid> or Metric/<uuid> catalog ID. name: Replacement name; omit to preserve. description: Complete replacement descr…
update_fulcra_settingscan change or delete dataSave global contact preferences the user chose, including checking_preferences text. No messages, checkpoint changes or scheduler edits.
upload_file_chunkUpload File ChunkSends one chunk of an upload from the file manager panel.
write_fileWrite FileWrite a file to the user's Fulcra account. Writing to an existing path creates a new version; earlier versions are kept and can be restored with `restore_file`. Other agents can detect the change through `get_data_updates` (under "file_changes") and read it with `read_file`, so files are a good way to pass data between agents. Args: path: The full path to write to (e.g. "/agents/state.json"). content: The text to write, or with encoding="base64", the file's bytes base64-encoded (up to 5 MB). For larger files, or files the user has on their computer, use open_file_mana…
Signals
- Stars
- 10
- Forks
- 5
- Open issues
- 2
- Weekly downloads
- 277
- Last commit
- Oct 23, 2026 (5 days ago)
- Last release
- Oct 23, 2026 (5 days ago)
- Last package publish
- Oct 23, 2026 (5 days ago)
From GitHub (fetched Oct 24, 2026) and the package registry.
Details
- Registry name
com.fulcradynamics/context- Version
- 1.18.7
- Auth
- Auth not stated
- Packages
- pypi fulcra-context-mcp
- License
- Apache-2.0
- Website
- fulcradynamics.com
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
Cite this page
Fulcra MCP server. Agent Mart. https://agentmart.dev/connectors/fulcradynamics-com-context (last updated 2026-10-24)