Appearance
MCP Tools Reference
A complete reference of all tools available to your AI assistant when connected via MCP. See Setup MCP Server for setup instructions.
Status
| Tool | Parameters | Description |
|---|---|---|
get_mcp_status | (none) | Check that FeynmanLM MCP is active and responding to tool calls. Assistants should call this before other FeynmanLM tools. |
Sources
| Tool | Parameters | Description |
|---|---|---|
list_sources | (none) | List all sources with title, type, state, word count, and author |
get_source_content | source_id | Get the full text content of a specific source |
list_source_actions | source_id | List durable source actions available through MCP for a source |
get_app_context | (none) | Get the sources currently selected in the FeynmanLM app's Studio tab |
search_sources_semantic | query, limit?, threshold? | Search sources by semantic similarity. Use for concept/topic queries like "partial reprogramming" |
add_source | url, title, source_type, content?, parent_group?, author? | Add a new source to the knowledge base |
import_paper_from_url | url, title? | Download a paper PDF from a DOI, landing page, arXiv/OpenReview page, publisher page, or direct PDF URL; store it in synced Papers; extract text and metadata; and add it as a paper source |
update_source | source_id, title?, author?, source_type?, journal?, published_year?, doi?, is_paywalled?, parent_group?, content? | Update metadata of an existing source |
set_source_context_membership | mode, source_ids? | Add, remove, replace, or clear the current Studio MCP context |
set_source_paywall_status | source_id, is_paywalled | Mark or clear paywalled status for articles, papers, and unclassified sources |
set_source_hidden | source_id, hidden | Hide or unhide a source in Studio |
set_podcast_episode_hidden | source_id, hidden | Hide or unhide a podcast episode |
set_podcast_show_hidden | show_name, hidden | Hide or unhide a podcast show |
set_podcast_episode_visible_override | source_id, visible | Force-show or stop force-showing an episode while its show is hidden |
attach_text_file_to_source | source_id, file_path | Attach a local text, Markdown, or HTML file to a source |
attach_pdf_to_paper | source_id, file_path | Attach a local PDF to a paper and extract text |
download_papers_needing_attention | source_ids?, limit? | Bulk-download missing paper PDFs; papers that fail in a paywall-shaped way are automatically marked paywalled |
fetch_video_transcript | source_id | Fetch and store a YouTube transcript for a video source |
fetch_source_from_archive | source_id | Fetch and store archive.ph content for a paywalled or errored web source |
remove_source | source_id | Match Studio's Remove action: dismiss the URL and archive/delete the source |
archive_source | source_id | Archive a source, removing content, embeddings, and Schedule assignments |
clear_source_derived_data | source_id | Clear cached text and embeddings without removing the source |
delete_source | source_id | Permanently delete a source from the knowledge base |
Connectors & Meetings
Tools for the Google Drive, YouTube, and Read AI connectors and the meeting sources they import. See Connectors for one-time setup in the app.
| Tool | Parameters | Description |
|---|---|---|
list_meeting_groups | (none) | List recurring meeting groups and their imported meeting session sources |
get_meeting_group | group_id | Get one meeting group with session source IDs and artifact metadata |
import_drive_meetings | folder_url, group_title? | Import a Google Drive folder of meeting files, creating one group per recurring series. Public folders work without setup; private folders must be picked in the app first |
refresh_drive_meetings | group_id? | Re-import Drive-backed meeting groups, pulling in any new files. Omit group_id to refresh all |
import_google_doc | document_url or document_id | Import one Google Doc as a source. Public Docs work directly; private Docs must be picked in the app first |
refresh_google_doc_source | source_id, update_title? | Re-export the latest plain text of a previously imported Google Doc |
list_readai_meetings | limit? | List recent Read AI meetings with id, title, time, platform, and participant count. Requires the Read AI connector |
import_readai_meetings | meeting_ids?, latest? | Fetch Read AI transcripts and add them as meeting sources, grouped by meeting title. Already-imported meetings are skipped |
import_meeting_transcript_files | group_title, folder_path, source? | Import a folder of per-session JSON transcript files into a meeting group — for transcripts exported from Read AI or other tools without connecting |
attach_meeting_artifact | source_id, file_path | Attach a local text file (transcript, notes, or chat log) to a meeting session as an additional artifact |
transcribe_meeting_recording | source_id | Transcribe a meeting session's Drive recording on-device with WhisperKit and attach the transcript |
follow_youtube_liked_videos | (none) | Follow the signed-in user's YouTube Liked videos: import them now and keep them fresh (metadata only). Requires the YouTube connector |
refresh_youtube_sources | (none) | Re-check the followed Liked-videos feed and import any new videos |
set_connector_auto_import | connector, enabled | Enable or disable automatic background import for the drive, readai, or youtube connector |
Projects
Projects hold project-specific source context for external assistant work. Slide decks are built outside FeynmanLM; the Project MCP surface only stores source membership and per-slide source citation mappings.
| Tool | Parameters | Description |
|---|---|---|
list_projects | (none) | List Projects |
create_project | title?, source_ids?, session_ids?, markdown? | Create a Project source context |
get_project | project_id? | Read Project metadata and linked source information |
add_project_sources | source_ids, project_id? | Add existing sources to a Project's persistent source set |
list_project_sources | project_id? | List sources for a Project |
set_project_slide_sources | slide_number, source_ids, project_id?, mode? | Attach sources to a slide number in an external Reveal.js deck |
list_project_slide_sources | project_id? | List per-slide source mappings for a deck sources tray |
get_project_context | project_id?, max_source_chars? | Read Project source content and slide-source mappings |
append_canvas_markdown | markdown, canvas_id? | Append additive Markdown such as new notes or source excerpts |
update_canvas_markdown | markdown, canvas_id? | Replace the full Markdown body with an integrated revised synthesis |
Schedule
Read the user's current Schedule before proposing a study plan.
| Tool | Parameters | Description |
|---|---|---|
get_learning_journey | goal_id?, include_completed? | Get the active journey's current-week schedule, source metadata, completion state, and review status |
get_today_sources | goal_id?, max_chars_per_source? | Get the full content of every pending schedule source assigned to today in one call, ready for study or a quiz |
create_learning_journey | title?, source_ids?, start_date?, end_date? | Create a new Schedule, defaulting to the current week when dates are omitted |
add_learning_journey_sources | source_ids, goal_id?, date? | Add existing sources to a journey, optionally assigning them to a day |
assign_learning_journey_sources_to_day | source_ids, date, goal_id? | Assign existing schedule sources to a day from the current Schedule week |
remove_learning_journey_sources | source_ids, goal_id? | Remove sources from a journey |
clear_learning_journey_day | date, goal_id?, include_completed? | Remove sources assigned to a day, pending-only by default |
set_learning_journey_source_completion | source_id, is_completed, goal_id? | Mark a schedule source done or reopen it. Marking done records the source as reviewed; linked review sessions are reported separately |
delete_learning_journey | goal_id? | Delete a Schedule |
Review Sessions
Interactive Socratic review sessions where the AI quizzes you on a topic using your source library as context. See Learning with MCP for how to use these.
| Tool | Parameters | Description |
|---|---|---|
start_review_session | topic | Start a review session. Searches your sources for relevant content and returns context for quizzing |
end_review_session | session_id, overall_score, summary, transcript? | End a session with a final score, summary, and optional exported chat transcript |
get_review_sessions | topic?, source_id? | List past sessions, optionally filtered by topic or source. Shows understanding progression over time |
get_review_session_transcript | session_id | Read the exported chat transcript or recorded exchanges for a session |
list_review_session_links | (none) | List saved external review session links |