Add friendly redMCP query options

This commit is contained in:
Jason Thistlethwaite
2026-04-25 04:12:01 +00:00
parent a25361f5fc
commit d8f17ff7e7
7 changed files with 618 additions and 13 deletions
+31
View File
@@ -65,6 +65,31 @@ $issueResults = $client->searchIssues('power supply', [
]);
```
MCP list tools also accept friendly top-level query options so callers do not
need to know Redmine's raw parameter syntax. These are normalized into Redmine
params before the request is sent:
```json
{
"name": "redmine_list_issues",
"arguments": {
"project_id": "customer-service",
"status": "open",
"updated": "last 7 days",
"sort": "newest",
"limit": 25
}
}
```
Friendly paging uses `limit`, `page`, and `offset`; the default limit is 25 and
the maximum is 100. Sort shortcuts include `newest`, `recent`, `oldest`,
`created_newest`, `created_oldest`, and `priority`. Issue date filters accept
exact dates, ranges such as `2026-04-01..2026-04-25`, objects with `from`/`to`,
phrases such as `since 2026-04-01`, and common presets such as `today`,
`yesterday`, `last 7 days`, `this_week`, and `last_month`. Raw `filters` or
`params` remain available and override friendly fields on conflict.
Project and user discovery is read-only:
```php
@@ -175,6 +200,12 @@ and explicit Helpdesk email responses. Tools that can send customer-visible mail
require an explicit tool call such as `redmine_send_helpdesk_response` or
`redmine_update_issue` with `send_helpdesk_email=true`.
Run the local no-network query normalizer checks with:
```sh
php redMCP/bin/test-query-normalizer.php
```
## Test instance
A working test copy of Redmine is available on the LAN at `192.168.50.170`.