159 lines
6.4 KiB
Markdown
159 lines
6.4 KiB
Markdown
# MCP Tool Reference
|
|
|
|
## Git (`git_*`)
|
|
`repo_path` passed per call. All git actions execute immediately without confirmation.
|
|
|
|
| Tool | Purpose |
|
|
|------|---------|
|
|
| `git_status(repo_path)` | Working tree status |
|
|
| `git_add(repo_path, files)` | Stage files |
|
|
| `git_commit(repo_path, message)` | Commit staged changes |
|
|
| `git_diff_unstaged(repo_path)` | Unstaged changes |
|
|
| `git_diff_staged(repo_path)` | Staged changes |
|
|
| `git_diff(repo_path, target)` | Diff vs branch/commit |
|
|
| `git_log(repo_path, max_count, start_timestamp, end_timestamp)` | Commit history |
|
|
| `git_branch(repo_path, branch_type)` | List branches |
|
|
| `git_create_branch(repo_path, branch_name, base_branch)` | Create branch |
|
|
| `git_checkout(repo_path, branch_name)` | Switch branch |
|
|
| `git_show(repo_path, revision)` | Show commit |
|
|
| `git_reset(repo_path)` | Unstage all |
|
|
|
|
## Jira
|
|
ESIDEPAISY tickets: German language, terminal status = "Accepted", `customfield_10001` mandatory.
|
|
|
|
| Tool | Purpose |
|
|
|------|---------|
|
|
| `list_tickets(jql_search)` | Search by JQL |
|
|
| `retrieve_ticket_details(issue_key)` | Full details |
|
|
| `create_ticket(project_key, summary, description)` | Create |
|
|
| `update_ticket_fields(issue_key, fields)` | Update fields |
|
|
| `update_status(issue_key, status)` | Transition |
|
|
| `add_comment_to_ticket(issue_key, comment)` | Comment |
|
|
| `update_comment(issue_key, comment_id, body)` | Edit comment |
|
|
| `ticket_assignment(issue_key, assignee)` | Assign |
|
|
| `my_tickets_to_work()` | My backlog/in-progress |
|
|
| `get_agile_boards(project_key)` | List boards |
|
|
| `get_sprints_from_board(board_id, states)` | List sprints |
|
|
| `get_tickets_from_sprint(sprint_id)` | Sprint tickets |
|
|
| `get_tickets_from_backlog(board_id)` | Backlog |
|
|
| `add_attachment_to_ticket(issue_key, file_path)` | Attach file |
|
|
| `download_single_attachment(issue_key, attachment_id, path)` | Download |
|
|
| `get_available_fields()` | List custom fields |
|
|
|
|
## Confluence
|
|
|
|
| Tool | Purpose |
|
|
|------|---------|
|
|
| `search_confluence_by_cql(cql_search)` | Search pages |
|
|
| `get_page_content(page_id)` | Read page |
|
|
| `create_page(space_key, title, content)` | Create |
|
|
| `update_page(page_id, content)` | Update |
|
|
| `add_comment_to_page(page_id, comment)` | Comment |
|
|
| `get_page_labels / add_page_label / remove_page_label` | Label management |
|
|
| `export_as_pdf(page_id)` | Export as PDF |
|
|
| `get_all_spaces()` | List spaces |
|
|
|
|
## Bitbucket
|
|
|
|
| Tool | Purpose |
|
|
|------|---------|
|
|
| `list_projects / list_repositories_by_project` | Browse |
|
|
| `list_prs_for_repository(project_key, repo_slug)` | List PRs |
|
|
| `get_pull_request / get_pull_request_diff / get_pull_request_comments / get_pull_request_changed_files` | PR details |
|
|
| `create_pull_request(project_key, repo_slug, title, description, from_branch)` | Open PR |
|
|
| `create_branch / list_branches` | Branch management |
|
|
| `find_file(project_key, repo_slug, file_path, branch)` | Read file |
|
|
| `commit_file(project_key, repo_slug, branch, file_path, content, commit_message)` | Commit |
|
|
|
|
## PDF Generator
|
|
**Always ask Patrick which color scheme before calling `generate_pdf`.**
|
|
Available: `adp` (red), `royal_purple`, `ocean`, `forest`, `sunset`, `slate`, `rose`.
|
|
|
|
| Tool | Purpose |
|
|
|------|---------|
|
|
| `generate_pdf(content, title, author, classification, logo, output_path, color_scheme)` | Branded PDF |
|
|
| `read_pdf(file_path, pages)` | Extract text + metadata |
|
|
| `generate_pptx(content, title, subtitle, author, template, output_path)` | ADP-branded PPTX |
|
|
| `read_pptx(file_path)` | Extract slide content |
|
|
|
|
## Office (`office_*`)
|
|
When a `.xlsx` or `.docx` path appears in conversation, **offer to read it immediately**.
|
|
|
|
| Tool | Purpose |
|
|
|------|---------|
|
|
| `office_excel_list_sheets(file_path)` | Sheet names |
|
|
| `office_excel_read_sheet(file_path, sheet_name)` | Rows |
|
|
| `office_excel_get_cell(file_path, cell)` | Single cell |
|
|
| `office_excel_get_named_ranges(file_path)` | Named ranges |
|
|
| `office_word_read(file_path)` | Full content |
|
|
| `office_word_list_headings(file_path)` | Outline |
|
|
| `office_word_read_table(file_path, table_index)` | Table |
|
|
|
|
## WebScraper (`webscraper_*`)
|
|
|
|
| Tool | Purpose |
|
|
|------|---------|
|
|
| `webscraper_fetch(url)` | Page → markdown |
|
|
| `webscraper_fetch_links(url)` | All hrefs |
|
|
| `webscraper_fetch_tables(url)` | HTML tables |
|
|
| `webscraper_fetch_all(url)` | Markdown + links + tables |
|
|
| `webscraper_fetch_section(url, selector)` | CSS selector |
|
|
| `webscraper_fetch_meta(url)` | Meta tags |
|
|
| `webscraper_fetch_sitemap(url)` | Sitemap URLs |
|
|
|
|
## PictureVision (`picturevision_*`)
|
|
|
|
| Tool | Purpose |
|
|
|------|---------|
|
|
| `picturevision_load(image_source)` | Load for AI vision |
|
|
| `picturevision_compare(img1, img2)` | Side-by-side diff |
|
|
| `picturevision_extract_text(image_source)` | Tesseract OCR |
|
|
| `picturevision_load_jira_attachment(issue_key, attachment_id)` | Jira image |
|
|
|
|
## Teams (`teams_*`)
|
|
|
|
| Tool | Purpose |
|
|
|------|---------|
|
|
| `teams_list_teams / teams_list_channels(team_id)` | Browse |
|
|
| `teams_send_channel_message(team_id, channel_id, content)` | Send to channel |
|
|
| `teams_list_chats / teams_send_message(chat_id, content)` | DMs |
|
|
| `teams_list_messages(team_id, channel_id)` | Read messages |
|
|
| `teams_list_users(search)` | Find users |
|
|
|
|
## Webex (`webex_*`)
|
|
|
|
| Tool | Purpose |
|
|
|------|---------|
|
|
| `webex_send_message(room_id, text, markdown)` | Send message |
|
|
| `webex_list_rooms / webex_get_room / webex_create_room` | Room management |
|
|
| `webex_list_messages(room_id)` | Read messages |
|
|
| `webex_list_people / webex_add_member` | People |
|
|
|
|
## File Transfer (`ft_*`)
|
|
|
|
| Tool | Purpose |
|
|
|------|---------|
|
|
| `ft_send_file(recipients, subject, message, file_path)` | Send via ADP Secure FT |
|
|
| `ft_list_inbox / ft_list_sent` | Inbox/sent |
|
|
| `ft_get_message(message_id)` | Message details |
|
|
| `ft_download_attachment(attachment_id)` | Download |
|
|
| `ft_validate_recipients(recipients)` | Check allowed recipients |
|
|
| `ft_request_file(recipient, subject, message)` | Request upload from someone |
|
|
|
|
## H2 DB
|
|
|
|
| Tool | Purpose |
|
|
|------|---------|
|
|
| `query(db_path, sql)` | Execute SQL |
|
|
| `list_schemas / list_tables / describe_table / get_foreign_keys / get_indexes` | Schema inspection |
|
|
|
|
## PAISY SSH (`exec-command`, `run-program`, `upload-file`)
|
|
|
|
| Tool | Purpose |
|
|
|------|---------|
|
|
| `list-instances` | List available PAISY test instances |
|
|
| `set-instance(instance)` | Select instance for session |
|
|
| `run-program(program, args, stdin)` | Run PAI* programs |
|
|
| `exec-command(command)` | Raw shell on PAISY host |
|
|
| `upload-file(localPath, remoteFilename)` | Upload JAR to instance |
|